一、ARP工作机制
ARP协议是以太网等数据链路层的基础协议,负责完成IP地址到硬件地址的映射。
工作过程如下:
(1) 当主机或者网络设备需要解析一个IP地址对应的MAC地址时,会广播发送ARP请求报文。
(2) 主机或者网络设备接收到ARP请求后会进行应答。同时,根据请求发送者的IP地址和MAC地址的对应关系建立ARP表项。
(3) 发起请求的主机或者网络设备接收到应答后,同样会将应答报文中发送者的IP地址和MAC地址的映射关系记录下来,生成ARP表项。
二、ARP攻击类型介绍
ARP攻击方式有如下几种:仿冒网关攻击、仿冒用户攻击、洪泛攻击。
2.1 仿冒网关攻击
攻击者仿冒网关向被攻击主机发送伪造的网关ARP报文(声称自己是网络中的网关),导致被攻击主机的ARP表中记录了错误的网关映射关系,从而被攻击的主机发出的数据都发向攻击者,而不是网关。这样,攻击者可以截获被攻击主机发出的所有数据报文。
2.2 仿冒用户攻击
2.2.1 欺骗网关
攻击者伪造被攻击者向网关发送伪造的ARP报文,导致网关的ARP表中记录了错误的主机(被攻击者)地址映射关系。从而,正常的数据报文不能正确地被被攻击者接收。
2.2.2 欺骗用户
同一冲突域内的主机A、B、C,主机A(攻击者)仿冒主机B向主机C发送了伪造的ARP报文,导致主机C的ARP表中记录了错误的主机B地址映射关系,从而正常的数据报文不能正确地被主机B接收。
2.3 ARP洪泛攻击
攻击者通过伪造大量源IP地址变化的ARP报文,使被攻击设备ARP表溢出,合法用户的ARP报文不能生成有效的ARP表项,导致正常通信中断。
三、ARP攻击防范
3.1 接入设备攻击防范
如上节ARP攻击类型所述,接入设备可能受到的ARP攻击类型可以分为仿冒网关、仿冒用户和洪泛攻击。其中针对仿冒网关可以采用ARP Detection、ARP过滤保护、ARP网关保护功能;针对仿冒用户攻击可以采用ARP Detection、ARP过滤保护功能。而对于ARP洪泛攻击,可以采用ARP报文限速功能。下面,针对这些功能逐一进行简单介绍。
3.1.1 ARP Detection功能和ARP过滤保护
这两个功能的原理类似,都是对接收到的ARP报文进行合法性和有效性检查。若报文合法/有效,则转发报文。否则,直接丢弃报文。这两者所不同的是ARP Detection功能针对VLAN内的所有端口检查,而ARP过滤保护则只针对单个指定端口。
3.1.2 ARP网关保护功能
在设备不与网关相连的端口上配置此功能,可以防止仿冒网关攻击。其原理同3.1.1所述——对端口接收到的报文根据所设置的规则检查合法性/有效性。
3.1.3 ARP报文限速功能
ARP报文限速功能是指对上送CPU的ARP报文进行限速,可以防止大量ARP报文对CPU进行冲击。所以,可以防止ARP报文洪泛攻击。
3.2 网关设备攻击防范
针对网关设备的攻击一方面通过合法方式建立正确地ARP表项,并阻止攻击者修改(授权ARP功能、ARP自动扫描和固化功能、配置静态ARP表项);另一方面,在动态学习ARP表项前进行确认,保证学习到的是真实、正确地映射关系(ARP主动确认功能、ARP报文源MAC一致性检查功能)。针对,ARP洪泛攻击网关,可以使用源MAC地址固定的ARP攻击检测功能、限制接口学习动态ARP表项最大数目。