
关于DNS欺骗这样的应用层攻击,初学者必须要知道DNS协议的工作原理,可以搜索我的公众号文章:利用DNS屏蔽淘宝网站的文章,来熟悉下工作原理吧。
通常情况下,我们在上网访问网页的时候,输入的网址都是域名,数据传输是依靠IP数据包,这时候就需要用到DNS解析,简单的来说就是由DNS服务器解析为对应的IP地址返回给客户端。


DNS欺骗实验演示拓扑
、
这个实验需要使用真实主机,才能实现局域网破坏效果,这个实验环境中只对实验对象起效果。
实验思路步骤:
①利用arp 两头毒化原理(同时欺骗网关和win7客户端,并将kali 开启转发功能)
②攻击者搭建假的DNS服务,并劫持客户端DNS请求,返给win7客户端一个假的dns记录,假的dns解析记录就是攻击者搭建的钓鱼网站。
③客户端就会根据DNS解析回来的目标地址去访问攻击者提供的钓鱼网站,导致账号密码泄露


DNS欺骗实验配置
①攻击机Kali linux修改DNS攻击文件,模拟出一个假的DNS服务。打开终端:
root@kali:~# cd /etc/ettercap/
root@kali:/etc/ettercap# vim etter.dns

编辑此文件:添加正向和反向指针,指向将创建web服务器的IP地址。

②Kali linux开启路由转发功能:
root@kali:/etc/ettercap# echo 1 > /proc/sys/net/ipv4/ip_forward

攻击之前,客户端是能够正常访问外网的:

查看客户端的arp缓存表:如图所示,28-49是正常的网关。

③Kali linux 中运行攻击工具:
root@kali:/etc/ettercap# ettercap -G

这款工具的大概介绍,如图所示:
它可以做很多,窃取别人数据包、截获目标及其登录路由器明文密码以及邮箱账号和密码,查看客户端浏览的网站,获取目标主机的cookie,DNS、DHCP欺骗等....这次我详细介绍DNS欺骗功能。

打开后选择 中间人嗅探网卡:采取哪块网卡进行流量截取!


列出局域网中有哪些主机的存在:主机列表。

列出局域网主机列表后,开始扫描主机:

扫描结果:指定局域网中网关和win7-1客户端的Ip地址,如如所示:分别将网关和受害者的的IP地址加到目标标签中去:


④搭建一个server2008R2系统,建立一个web网站。(建立网站这里我不详细介绍,日后会分享这一技术!)
找到服务器角色,一路下一步默认安装web服务。

制作钓鱼网站网页的html文件,如如所示,保存网站的所有文件:

将这个文件所有的内容存放到web浏览默认目录下,并改名为index,否则无法访问。

因为在默认文档中是index.html体现出的首页文件,为了伪装更像你还可以制作一个和业务相关的网站页面。

⑤Kali linux攻击端执行ARP两头毒化
如如所示,执行ARP毒化操作:


再次查看客户端ARP映射表的情况:发现网关的Mac地址表变成了 攻击机的mac地址。

执行DNS欺骗,如如所示:

选择DNS欺骗工具,它会发送DNS欺骗回应包。

双击选中确认后,会有*号提示:

完成攻击后,客户端的访问任何外网,DNS都会解析成10.0.8.153:如图所

⑥DNS劫持实验结果:
最后导致客户端访问相应的网站,就跳转到了我在2008R2的所建立的一个假的网站中去.......这就是DNS劫持造成的结果。

在win7客户端中,用wireshark抓包,可以抓到DNS欺骗报文:如图所示,在DNS回应报文中,看到的是10.0.8.153,(建立好的钓鱼网站),而真正的百度网站怎么可能是这个网站呢.......

并且,站在受害机上,抓取到了ARP两头毒化报文:如如所示,告诉受害者网关地址是自己的Mac,又告诉网关,自己是8.174!形成ARP欺骗报文。这样的伪装真是防不胜防!


DNS劫持防御手段
①交换设备防御。
交换机必须为可管理型!防御措施:DCHP snooping +DAI +IPSG 端口安全之(之前我分享过着一类技术,但是ENSP模拟器虽然能使用着命令,但是不支持展现效果。)
②个人客户端防御。
使用360安全卫士配合360安全浏览器,并打开局域网防护。






