2024年3月20日发(作者:)
ARP攻击和防范
1.前言
很多文章针对ARP协议的原理和缺点进行了描述。但是并没有全面提出ARP
的攻击,防护策略。本文就网络针对性解决方法作一些阐述。内容包括:
ARP Flooding的攻击与防范
中间人欺骗的攻击与防范
ARP Spoofing(ARP病毒)的攻击与防范
2.ARP协议的原理和缺点。
在以太网中传输的数据包是以太包,而以太包的寻址是依据其首部的物理地
址(MAC 地址)。仅仅知道某主机的逻辑地址(IP 地址)并不能让内核发送一帧
数据给此主机,内核必须知道目的主机的物理地址才能发送数据。
ARP 协议的作用就是在于把逻辑地址变换成物理地址,也既是把32bit 的IP
地址变换成48bit 的以太地址。每一个主机都有一个ARP 高速缓存,此缓存中记录
了最近一段时间内其它IP 地址与其MAC 地址的对应关系。如果本机想与某台主
机通信,则首先在ARP 高速缓存中查找此台主机的IP 和MAC 信息,如果存在,
则直接利用此MAC 地址构造以太包;如果不存在,则向本网络上每一个主机广播
一个ARP 请求包,其意义是"如果你有此IP 地址,请告诉我你的MAC 地址",目
的主机收到此请求包后,发送一个ARP 响应包,本机收到此响应包后,把相关信
息记录在ARP 高速缓存中,以下的步骤同上。
可以看出,ARP 协议是有缺点的,第三方主机可以构造一个ARP 欺骗包,而
源主机却无法分辨真假。
按照RFC 的规定,PC 在发ARP 响应时,不需要一定要先收到ARP 请求报
文,局域网中任何一台PC 都可以向网络内其它PC 通告:自己就是PC A 和MAC
A 的对应关系,这就给攻击者带来可乘人之危的漏洞,如下图所示:
1
下面就以下三种常见的网络攻击逐一进行介绍。
ARP Flooding的攻击与防范
中间人欺骗的攻击与防范
ARP Spoofing(ARP病毒)的攻击与防范。。
3.1 ARP Flooding的攻击与防范
ARP Flooding又叫MAC Flooding,即我们所说的MAC地址泛洪。
a) 攻击原理
交换机能够主动学习客户端的 MAC 地址,并建立和维护端口和 MAC 地址
的对应表以此建立交换路径,这个表就是通常我们所说的MAC地址表。 MAC地
址表的大小是固定的,不同的交换机的 MAC地址表大小不同。 MAC Flooding攻
击是指利用工具产生欺骗 MAC ,快速填满MAC地址表,交换机MAC地址表被
填满后,交换机以广播方式处理通过交换机的报文,这时攻击者可以利用各种嗅探
攻击获取网络信息。MAC地址表满了后,流量以洪泛方式发送到所有接口,也就
代表 TRUNK 接口上的流量也会发给所有接口和邻接交换机,会造成交换机负载过
大,网络缓慢和丢包甚至瘫痪。
b) 典型的病毒攻击案例
曾经对网络照成非常大威胁的 SQL 蠕虫病毒就利用组播目标地址,构造假目
标 MAC 来填满交换机 CAM 表。其特征如下图所示:
2


发布评论