博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
局域网dns欺骗攻击不能上网_技术干货透析中间人攻击
阅读量:4357 次
发布时间:2019-06-07

本文共 3461 字,大约阅读时间需要 11 分钟。

35000b372c472c054a442ee4d7b3dfef.png

作者:甜橙安全团队

9e2bbd19a0e1bd79dd41e47a276c8ea0.png
e19b35dcef0254592ec5660a8755a4e1.gif

免责声明;下述内容用仅用于技术研究与探讨,禁止任何非法利用,由此造成的后果概不负责,如有侵权请联系版主,我们会及时处理。

欢迎各位添加微信号:qinchang_198231  

 加入安全+ 交流群 和大佬们一起交流安全技术

中间人攻击是一种“间接”的入侵攻击,这种攻击模式是通过各种技术手段将受入侵者控制的一台计算机虚拟放置在网络连接中的两台通信计算机之间,这台计算机就称为“中间人”。

中间人攻击之ARP欺骗

ARP欺骗,又称ARP毒化或ARP攻击,是针对以太网地址解析协议(ARP)的一种攻击技术,通过欺骗局域网内访问者PC的网关MAC地址,使访问者PC错以为攻击者更改后的MAC地址是网关的MAC,导致网络不通。此种攻击可让攻击者获取局域网上的数据包甚至可篡改数据包,且可让局域网内上上特定计算机或所有计算机无法正常连线。

 在内网中,部分流量是通过网关进行传输的,在发送数据前必须要知道目标IP,然后将包含目标IP地址的ARP请求广播到局域网络上的所有主机,并确认mac地址。这个时候截获网关数据来冒充对方,使网关缓存一系列错误的内网MAC地址,那么所有的流量就都会被截取,这种叫做网关欺骗型。还有一种是伪造成网关,让被攻击的PC把所有流量都发送到假网关,而不是发送到网关,这种的叫做主机型欺骗。如下图:

3b34c7c1b7013649e7a402db1fa9eb5f.png

示例

攻击者地址:192.168.240.128

被攻击者地址:192.168.240.129

网关地址:192.168.240.2

dsniff工具包中aprspoof这个插件(kail没有该插件,需要手动下载,可以通过命令“apt-get install dsniff” 来下载)。

aprspoof  -h可以看到该插件的帮助信息。接下来演示如何实现arp欺骗,输入命令“arpspoof -i 网卡 -t 网关ip 被攻击者ip”或者“arpspoof -i 网卡 -t 被攻击者ip 网关ip”都可以是实现arp欺骗,但这两个命令在实现方式上是不相同的。

第一个命令是主机欺骗型,就是攻击者告诉被攻击者自己是网关,被攻击者arp缓存中网关IP对应的mac就会变成攻击者的mac。

首先看下被攻击者当前arp缓存的数据,可以看见网关的mac地址和攻击者的mac地址。

9890e054d1d25a8f785c6f55fe3ba63f.png

可以ping成功百度

c2ed304141153b40f0d21a42fff33ed2.png

然后kail这边开启攻击

a0def55041263e6e16101912d61cd4b3.png

网关的地址和攻击者的mac地址一样了

03a2be69e5b8ea84f277ed50d71441c0.png

而且百度ping也不通了,这是因为所有本该发送给网关的数据包,都发送给攻击机了。

54b46edca34d40b7d6b1cc3abc914ae2.png
fae7298431408a45012ab78d7e2907be.png

第二种网关欺骗型,就是让网关认为攻击机是被攻击的主机。网关就是把所有本该给被攻击者的流量发送到攻击机这里来。

这里被攻击者的mac缓存是不会变的,但是网关对应的mac会变。

Kail那边开启攻击。

66c847e50e559399b1eaf2a7cbb5d217.png

网关对应的mac没变

8e73fde00143f92d6956713906e0e3bb.png

可以看到这里ping的时候跟上面不太一样,ping的时候有一个是ping成功的。这也说明并不是能100%截包成功的,因为你发送arp请求的同时,对方也在发。

95553100c09c233288788cb0c83dc817.png

被攻击者所有发送的数据数据包都可以通过Wireshark来获取到。

下面就是被攻击者发的一个dns包,被攻击机截取到了,可以看源地址是192.168.240.129,目的地址是192.168.240.2

60bb6e4a1ca921225c458d4ff6207a5a.png

 ARP欺骗具体能造成那些危害,首先上面写到了,能对其进行断网攻击,其实还可以做到IP转发,监视流量从而达到HTTP嗅探,邮件信息嗅探,密码嗅探等。

开启IP转发功能,使流量能正常传递

echo “1”> /proc/sys/net/ipv4/ip_forward

0f8aa05aa8f50241fefcacfddf7bcc6c.png

被攻击机那边可以正常访问了,但是被攻击机的所有流量都会经过攻击机这边。比如被攻击者这边登录phpmyadmin,攻击那边就可以抓到流量分享得到其密码。

85b918c41cebfc6937cd6bc23039413d.png

最后可以看到账号为root,密码也是root

407aa83cd1ff2640f7fd04a573d4d46a.png

ftp的账号密码也可以抓到,这边被攻击机登录了ip为192.168.240.133的ftp

b10d195806cb8a6d9d1b53386520e3bc.png

攻击机这边抓包也可以看到

1aaa8fe7c4b58e7cdb83e91a7e7b1556.png

账号:Administrator

密码: 123

这些也可以通过一些脚本自动化抓取,比如dsniff密码嗅探,urlsnarf 访问路径嗅探,mailsnarf邮件嗅探等,下图是一个访问路径嗅探的例子

98523b8364edda39cb7928397c559254.png

关于dsniff套件中的其它小工具这里就不一一说了,使用都非常简单,大家可以自己在实战中慢慢体会。

中间人攻击之DNS欺骗

DNS欺骗就是攻击者冒充域名服务器的一种欺骗行为。原理:如果可以冒充域名服务器,然后把查询的IP地址设为攻击者的IP地址,这样的话,用户上网就只能看到攻击者的主页,而不是用户想要取得的网站的主页了,这就是DNS欺骗的基本原理。DNS欺骗其实并不是真的“黑掉”了对方的网站,而是冒名顶替、招摇撞骗罢了。

 DNS欺骗其实是arp欺骗成功的前提下实现的。首先通过向被攻击者发送一个arp答应包,然后抓到被攻击者的dns请求包,每个DNS请求都包含一个独特的识别码,其目的在于辨识查询和响应,并将对应的查询和响应配对在一起。这样只需要做一个包含该识别码的假数据包,目标计算机就会根据识别码而接受发送的查询结果。下图是dns数据包的报文结构,这个标识是唯一的,而且每次都不一样的,所有要伪造dns包必须知道标识是什么。

84c79899e416aab8bae0dd4a6caa3a3a.png

示例

攻击者地址:192.168.240.128

被攻击者地址:192.168.240.129

钓鱼服务器地址:192.168.240.1

首先启动kail的apache服器,可以看到已经启动成功了

c7db1c4e9a2fb4c86e5670d1fea55a8e.png

这次用到的工具是Ettercap,可以先配置ettercap DNS文件。

输入vi /etc/ettercap/etter.dns

*代表任意字符,意思是所有域名都解析为192.168.240.128(攻击者ip)

23e25f7ac9b3b8de9f7600aac2f49492.png

然后输入 ettercap -i eth0 -T -P dns_spoof -M arp /被攻击者ip///

用到的命令选项

-i, –iface < IFACE > (手动选择网卡)

在控制台模式下(-T),对整个局域网执行ARP毒化攻击(-M arp)

-P, –plugin < PLUGIN >(加载插件)

开启攻击,执行成功

388fe04641057f001f42a1c6d30f5642.png

 然后被攻击机这边ping一下www.hao123.com,然后访问一下,可以看到访问的是攻击者的ip

6224ada693f2ba05bf3d6952bdb468c4.png
478d17f7808cb227341545bc15336827.png

Kail这边开启wireshark抓包,抓到了被攻击者发给dns服务器的dns数据包,

386cfd7646689b1ba5b1cbe3192b8add.png

这个是构造好的包,标识跟上面一样,而且ip也变成了攻击者的ip。

e1a465541733b3f2b4de35a4b5f08a48.png

接下来演示一下如何钓鱼,获取对方的账号密码。

这是一个官方正常的充值页面

3345dd2e698f06bc8ced486b60443825.png

先修改etter.dns文件,然后保存。

pay.qq.com改成钓鱼网页的ip(192.168.240.1)

745ce2e90ba98e9bb28dce836afcf83b.png

Kail开启dns欺骗

bf5b369e8ea2af745839da7959b7caf1.png

之前王者荣耀的充值地址是https://pay.qq.com/ipay/mobile-game/index.shtml?game=wzry

现在被攻击机访问到的是钓鱼网页,下图是钓鱼页面

c3190c563e8d8e1e5981085529bb512d.png

用户输入账号密码后,后台就可以记录下了。

用户输入账号密码,点击登录

3c3847f24964ca8237a3b30b8bfc85ca.png

登录后台看一下,账号已经被记录下来了

929e301a804dd94f13b790ee598f960b.png

上面讲到arp欺骗也可以抓到数据包,从而获取账号密码。但是现在很多企业都将账号密码等重要数据加密传输或者是https传输的,抓到数据包也很难分析出来。而dns欺骗是诱使用户输入账号密码,直接把账号密码保存到钓服器者的后台中,是比arp欺骗更加危险的攻击手段。

如何防御

首先是ARP静态绑定,但是不可能所有mac地址都绑定!然后是安装ARP防火墙,这样也可以有效的防止中间人攻击。还有就是交换机上启用DAI技术,这里简单的说下DAI功能原理:在用户PC动态获取IP地址的过程中,通过接入层交换机的DHCP Snooping功能将用户DHCP获取到的,正确的IP与MAC信息记录到交换机的DHCP Snooping软件表;然后使用DAI功能(纯CPU方式)校验进入交换机的所有ARP报文,将ARP报文里面的Sender IP及Sender MAC字段与DHCP Snooping表里面的IP+MAC 记录信息进行比较,如果一致则放通,否则丢弃。这样如果合法用户获取IP地址后试图进行ARP欺骗,或者是非法用户私自配置静态的IP地址,他们的ARP校验都将失败,这样的用户将无法使用网络。目前在企业级的交换机都有支持!可以将ARP攻击欺骗拍死在萌芽之中!

●★●★●★●★●★●★●★●★●★●★●★●★●★●★●★●★●★●★●★●★●★●

8ac7cc760a6d877d1582e72e97facd21.png

6f68ef6768e1d4ee2d23692c634fcda6.png

转载地址:http://uoxys.baihongyu.com/

你可能感兴趣的文章
JPA事务总结
查看>>
transitionFromView方法的使用
查看>>
ubuntu nginx+php环境520错误
查看>>
Java中OutOfMemoryError(内存溢出)的三种情况及解决办法
查看>>
windows 10 无法使用内置管理员账户打开应用的解决方案
查看>>
php入门变量
查看>>
wince(2.3)获取位图某一点的RGB值
查看>>
【转】C#中如何实现左截取和右截取字符串
查看>>
代码整洁之道
查看>>
HDU3657 Game(最小割)
查看>>
LinkedList源码解析
查看>>
为什么领域模型对于架构师如此重要? https://blog.csdn.net/qq_40741855/article/details/84835212...
查看>>
序言 - PHP零基础快速入门
查看>>
Zabbix_agnet部署
查看>>
shell --for双括号循环
查看>>
NIO
查看>>
UNICODE与ANSI的区别
查看>>
python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍
查看>>
ClickOnce部署(3):使用证书
查看>>
写程序需要注意的几点
查看>>