如何用ARP欺骗来嗅探主机流量

如何用ARP欺骗来嗅探主机流量

发现这个是第四节的,囧,改改名字~

ARP攻击,其实原理非常简单。

根据局域网内地址寻址的弱点,我们伪造一个错误地址映射的ARP包,就可以诱导被攻击者将数据包先发送给攻击者,攻击者再转发出去,发给被攻击者的数据包,也先发到攻击者,然后攻击者再转发给被攻击者,这样,攻击者就充当中间人(MAN-IN-THE-MIDDLE),一个类似代理的主机,就能够嗅探到被攻击者的流量。

 

以下是“纯手工”地进行一次局域网内ARP攻击案例:


 

其中:

                          MAC地址                               IP地址                               网关地址

     A用户:    000C29EA3EAA                   192.168.20.131                192.168.20.254

     B用户:    000C29EA3EBB                   192.168.20.132                192.168.20.254

     C用户:    000C29EA3ECC                   192.168.20.133                192.168.20.254

     网关:       002719A3FB70                    192.168.20.254

 

正常情况,A用户需要访问外网,则需要发信息通过网关,网关再路由数据包,以此来使用正常的网络服务。现在C用户为攻击者,对A用户进行ARP攻击,导致用户A访问外网的数据包先发送到用户C,用户C再将此数据包转发给网关,网关也会将理应发送给用户A的数据包先发送给用户C,用户C再将数据包发回给用户A,这样用户C就能在A用户毫不察觉的情况下获取到用户A的上网数据了。

 


1.攻击者的电脑里先修改注册表的HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters:
   Name:IPEnableRouter
   Type:REG_DWORD
   Value:0x01

目的是启用路由转发功能,以便在随后的ARP欺骗中本机充当MAN-IN-THE-MIDDLE(中间人)

 


2.安装sniffer(嗅探器)软件,这个是一个很强大的商业网络分析软件,便于抓包和攻击。

 


3.首先设定一下捕获数据包的过滤器,我们需要ARP应答包来欺骗A用户,所以暂时只需要ARP数据包。

 


4.还没有A用户和网关的ARP信息,如何获取?最简单的办法就是PING一下,这样就会触发两台电脑交换ARP信息,同时sniffer也能抓取到我们需要的ARP包。

 

5.好了,查看sniffer,选择decode(解码)界面,发现获取了不少ARP的请求包和应答包,嘿嘿,干坏事的时间到了,随便选择一个ARP应答包,在下面16进制的数字中点右键选edit,开始修改……

 

 

6.弹出来是一个这样内容的窗口,这时候我们要理清思路了。

首先红色的是二层传输信息,修改正确包才会正确送达到目的地,红色字的信息与ARP表无关。目标MAC是包需要到达的那台电脑的MAC地址,源MAC地址是本机的MAC地址。

蓝色的就是ARP应答包的信息,这里修改的内容才会更改被攻击者电脑中的ARP映射表。发送者为本机,接受者为目的地。

我们修改的目的就是产生一个错误的MAC地址和IP地址间的映射关系。

 

7.这个就是一个已经修改过的ARP应答包,这个包是欺骗网关的,让它将发送给A用户的包发到用户C上。

(请参照上面给出的IP和MAC信息以及图片理解,你会发现ARP应答包里面发送者IP地址是A用户,可是发送者MAC地址却是C用户,这就是一个错误的映射关系。)

修改好了按RE-INTERPRET重新解释这个包,然后按右键选择“sent current frame”就可以发送这个数据包了。

 

 8.同上,这也是已经修改好的ARP应答包,是欺骗A用户将需要发往网关的数据包先发到C用户主机。

 

 9.这是在A用户电脑中的ARP映射表,攻击前电脑中的ARP缓存中的映射关系是正确的。

 10.开始攻击,A用户电脑中的ARP映射被修改,IP是网关的IP可是MAC已经成为C用户电脑的MAC地址,在局域网内是通过MAC地址进行数据包交换的,所以A用户送往网关的数据包会先发到C用户电脑上。

 

 11.A用户上网正常,因为C用户开启了路由转发功能,所有嗅探到的数据包会被转发。

 

12.开始了邪恶的嗅探~先选择合适的过滤器,默认就是什么包就获取。 

 

 13.可以发现用户A(192.168.20.131)访问163网页的数据包已经获取到了,如果有传输什么用户名和密码等等的信息的话嘿嘿~~

 

=====================================================================================

 

那么是不是用户A的所有信息都能获取到了呢?并不是,因为你只是在用户A面前冒充了网关,如果它和用户B通讯,那些信息还是不过通过你这里的,不过~嘿嘿,如果你都能冒充网关了,再冒充一下用户B也是一样的,以下就是A用户和B用户之间的流量嗅探(过程略)。


你可能感兴趣的:(网络安全研究)