且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Windows Server入门系列19 ARP欺骗原理

更新时间:2022-09-15 09:06:37

在ARP协议的工作过程中,正常情况下应是由一台主机先发出ARP请求,然后再由目标主机向其返回ARP响应。但ARP协议是建立在信任局域网内所有结点的基础上的,即如果主机并没有发出ARP请求,它也仍会接收别的主机主动向其发送的ARP响应,这就为ARP欺骗提供了可能。

假设在下图所示的网络拓扑中,在主机A所在的网段出现了一台恶意主机,它通过伪造ARP响应包可以实施三种类型的ARP欺骗。

Windows Server入门系列19 ARP欺骗原理

第一种,欺骗主机。

这种欺骗的目标是主机(如主机A),欺骗的目的是伪造网关的MAC地址。

恶意主机通过向目标主机发送伪造的ARP响应,使得目标主机ARP缓存表中的网关IP地址对应到一个虚假的MAC地址上。

伪造的发往主机A的ARP Response数据帧封装结构如下图所示:

Windows Server入门系列19 ARP欺骗原理

主机A收到这个伪造的ARP响应之后,将更新自己的ARP缓存表,将网关的IP地址192.168.1.1对应到错误的MAC地址上。这样导致的后果是主机A将无法将数据正常地发送给网关,从而使主机掉线,无法上网。

第二种,欺骗网关。

这种欺骗的目标是网关,欺骗的目的是伪造主机的MAC地址。

恶意主机通过向网关发送伪造的ARP响应,使得网关ARP缓存表中的主机IP地址对应到一个虚假的MAC地址上。

伪造的发往网关的ARP Response数据帧封装结构如下图所示:

Windows Server入门系列19 ARP欺骗原理

网关收到这个伪造的ARP响应之后,将更新自己的ARP缓存表,将主机A的IP地址192.168.1.100对应到错误的MAC地址上。这样导致的后果是主机A虽然能将数据发送给网关,但网关却无法将返回的信息发送给主机A,所以仍然会使主机掉线,无法上网。

第三种,对主机和网关的双向欺骗。

明白了上述两种欺骗的原理之后,这种欺骗方法就比较好理解了。恶意主机分别向主机和网关发送伪造的ARP响应,其破坏力相比前两种欺骗方法要更强。


本文转自 yttitan 51CTO博客,原文链接:http://blog.51cto.com/yttitan/1329745