ARP安全简介
定义
ARP(Address Resolution Protocol)安全是针对ARP攻击的一种安全特性,它通过一系列对ARP表项学习和ARP报文处理的限制、检查等措施来保证网络设备的安全性。ARP安全特性不仅能够防范针对ARP协议的攻击,还可以防范网段扫描攻击等基于ARP协议的攻击。
目的
ARP协议有简单、易用的优点,但是也因为其没有任何安全机制,容易被攻击者利用。在网络中,常见的ARP攻击方式主要包括:
-
ARP泛洪攻击,也叫拒绝服务攻击DoS(Denial of Service),主要存在这样两种场景:
-
设备处理ARP报文和维护ARP表项都需要消耗系统资源,同时为了满足ARP表项查询效率的要求,一般设备都会对ARP表项规模有规格限制。攻击者就利用这一点,通过伪造大量源IP地址变化的ARP报文,使得设备ARP表资源被无效的ARP条目耗尽,合法用户的ARP报文不能继续生成ARP条目,导致正常通信中断。
-
攻击者利用工具扫描本网段主机或者进行跨网段扫描时,会向设备发送大量目标IP地址不能解析的IP报文,导致设备触发大量ARP Miss消息,生成并下发大量临时ARP表项,并广播大量ARP请求报文以对目标IP地址进行解析,从而造成CPU(Central Processing Unit)负荷过重。
-
-
ARP欺骗攻击,是指攻击者通过发送伪造的ARP报文,恶意修改设备或网络内其他用户主机的ARP表项,造成用户或网络的报文通信异常。
ARP攻击行为存在以下危害:
- 会造成网络连接不稳定,引发用户通信中断。
- 利用ARP欺骗截取用户报文,进而非法获取游戏、网银、文件服务等系统的帐号和口令,造成被攻击者重大利益损失。
为了避免上述ARP攻击行为造成的各种危害,可以部署ARP安全特性。
受益
- 可以有效降低用户为保证网络正常运行和网络信息安全而产生的维护成本。
- 可以为用户提供更安全的网络环境和更稳定的网络服务。
ARP报文限速
如果设备对收到的大量ARP报文全部进行处理,可能导致CPU负荷过重而无法处理其他业务。因此,在处理之前,设备需要对ARP报文进行限速,以保护CPU资源。
设备提供了如下几类针对ARP报文的限速功能:
-
根据源MAC地址或源IP地址进行ARP报文限速
当设备检测到某一个用户在短时间内发送大量的ARP报文,可以针对该用户配置基于源MAC地址或源IP地址的ARP报文限速。在1秒时间内,如果该用户的ARP报文数目超过设定阈值(ARP报文限速值),则丢弃超出阈值部分的ARP报文。
-
根据源MAC地址进行ARP报文限速:如果指定MAC地址,则针对指定源MAC地址的ARP报文根据限速值进行限速;如果不指定MAC地址,则针对每一个源MAC地址的ARP报文根据限速值进行限速。
-
根据源IP地址进行ARP报文限速:如果指定IP地址,则针对指定源IP地址的ARP报文根据限速值进行限速;如果不指定IP地址,则针对每一个源IP地址的ARP报文根据限速值进行限速。
-
-
针对全局、VLAN和接口的ARP报文限速
设备支持在全局、VLAN和接口下配置ARP报文的限速值和限速时间,当同时在全局、VLAN和接口下配置ARP报文的限速值和限速时间时,设备会先按照接口进行限速,再按照VLAN进行限速,最后按照全局进行限速。
另外,在接口下还可以指定阻塞ARP报文的时间段。如果设备的某个接口在ARP报文限速时间内接收到的ARP报文数目超过了设定阈值(ARP报文限速值),则丢弃超出阈值部分的ARP报文,并在接下来的一段时间内(即阻塞ARP报文时间段)持续丢弃该接口下收到的所有ARP报文。
-
针对全局的ARP报文限速:在设备出现ARP攻击时,限制全局处理的ARP报文数量。
-
针对VLAN的ARP报文限速:在某个VLAN内的所有接口出现ARP攻击时,限制处理收到的该VLAN内的ARP报文数量,配置本功能可以保证不影响其他VLAN内所有接口的ARP学习。
-
针对接口的ARP报文限速:在某个接口出现ARP攻击时,限制处理该接口收到的ARP报文数量,配置本功能可以保证不影响其他接口的ARP学习。
-
实验拓扑图
实验步骤
S1 配置
<Huawei>system-view
Enter system view, return user view with Ctrl+Z.
[Huawei]sysname S1
[S1]undo info-center enable
Info: Information center is disabled.
[S1]vlan batch 10
Info: This operation may take a few seconds. Please wait for a moment...done.
[S1]interface GigabitEthernet 0/0/2
[S1-GigabitEthernet0/0/2]port link-type access
[S1-GigabitEthernet0/0/2]port default vlan 10
[S1-GigabitEthernet0/0/2]interface GigabitEthernet 0/0/3
[S1-GigabitEthernet0/0/3]port link-type access
[S1-GigabitEthernet0/0/3]port default vlan 10
[S1-GigabitEthernet0/0/3]quit
[S1]interface GigabitEthernet 0/0/1
[S1-GigabitEthernet0/0/1]port link-type trunk
[S1-GigabitEthernet0/0/1]port trunk allow-pass vlan 10
[S1-GigabitEthernet0/0/1]quit
S2 配置
<Huawei>system-view
Enter system view, return user view with Ctrl+Z.
[Huawei]undo info-center enable
Info: Information center is disabled.
[Huawei]sysname S2
[S2]vlan 20
[S2-vlan20]quit
[S2]interface GigabitEthernet 0/0/2
[S2-GigabitEthernet0/0/2]port link-type access
[S2-GigabitEthernet0/0/2]port default vlan 20
[S2-GigabitEthernet0/0/2]quit
[S2]int GigabitEthernet 0/0/3
[S2-GigabitEthernet0/0/3]port link-type access
[S2-GigabitEthernet0/0/3]port default vlan 20
[S2-GigabitEthernet0/0/3]quit
[S2]interface GigabitEthernet 0/0/1
[S2-GigabitEthernet0/0/1]port link-type trunk
[S2-GigabitEthernet0/0/1]port trunk allow-pass vlan 20
[S2-GigabitEthernet0/0/1]quit
<Huawei>system-view
Enter system view, return user view with Ctrl+Z.
[Huawei]undo info-center enable
Info: Information center is disabled.
[Huawei]sysname S3
[S3]vlan batch 10 20 30
Info: This operation may take a few seconds. Please wait for a moment...done.
[S3]interface GigabitEthernet 0/0/1
[S3-GigabitEthernet0/0/1]port link-type trunk
[S3-GigabitEthernet0/0/1]port trunk allow-pass vlan 10
[S3-GigabitEthernet0/0/1]quit
[S3]interface GigabitEthernet 0/0/2
[S3-GigabitEthernet0/0/2]port link-type trunk
[S3-GigabitEthernet0/0/2]port trunk allow-pass vlan 20
[S3-GigabitEthernet0/0/2]quit
[S3]interface Vlanif 10
[S3-Vlanif10]ip address 10.8.8.4 24
[S3-Vlanif10]interface Vlanif 20
[S3-Vlanif20]ip address 10.9.9.4 24
[S3-Vlanif20]interface Vlanif 30
[S3-Vlanif30]ip address 10.10.10.3 24
[S3-Vlanif30]quit
[S3]arp learning strict //配置ARP表项严格学习功能
[S3]arp anti-attack entry-check fixed-mac enable //配置ARP表项固化模式为fixed-mac方式
配置对Server(IP地址为10.10.10.2)的ARP Miss消息进行限速,允许Switch每秒最多处理该IP地址触发的40个ARP Miss消息;对于其他用户,允许Switch每秒最多处理同一个源IP地址触发的20个ARP Miss消息
[S3]arp-miss speed-limit source-ip maximum 20
[S3]arp-miss speed-limit source-ip 10.10.10.2 maximum 40
[S3]interface GigabitEthernet0/0/1
[S3-GigabitEthernet0/0/1]arp-limit vlan 10 maximum 20 // 配置接口GE0/0/1最多可以学习到20个动态ARP表项
Warning: It is recommended to clear ARP entries of this interface, because the n
umber of ARP entries may exceed the limit.
[S3-GigabitEthernet0/0/1]quit
[S3]arp speed-limit source-mac 1-1-1 maximum 10 //配置对用户User1(MAC地址为1-1-1)进行ARP报文限速,每秒最多只允许10个该MAC地址的ARP报文通过
[S3]arp speed-limit source-ip 10.9.9.2 maximum 10 //配置对用户User3(IP地址为10.9.9.2)进行ARP报文限速,每秒最多只允许10个该IP地址的ARP报文通过