ARP攻击是一种常见的网络问题, 对此, 需要恰当配置交换设备。 以下以H3C设备为例, 介绍典型的配置方法。
一、对于阻止仿冒网关IP的arp攻击
1、二层交换机防攻击配置举例
3552P是三层设备, 其中ip:100.1.1.1是所有pc的网关, 3552P上的网关mac地址为000f-e200-3999。 现在PC-B装有arp攻击软件。 现在需要对3026_A进行一些特殊配置, 目的是过滤掉仿冒网关IP的arp报文。
对于二层交换机如3026c等, 可以配置acl
(1)全局配置deny 所有源IP是网关的arp报文(自定义规则)
ACL num 5000
rule 0 deny 0806 ffff 24 64010101 ffffffff 40
rule 1 permit 0806 ffff 24 000fe2003999 ffffffffffff 34
rule0目的:把整个3026C_A端口冒充网关的ARP报文禁掉, 其中蓝色部分64010101是网关ip地址的16进制表示形式:100.1.1.1=64010101。
rule1目的:把上行口的网关ARP报文允许通过, 蓝色部分为网关3552的mac地址000f-e200-3999。
在S3026C-A系统视图下发acl规则:
[S3026C-A]packet-filter user-group 5000
这样只有3026C_A上连设备能够下发网关的ARP报文, 其它pc就不能发送假冒网关的arp响应报文。
2、三层交换机防攻击配置举例
对于三层设备, 需要配置过滤源IP是网关的arp报文的acl规则, 配置如下acl规则:
ACL num 5000
rule 0 deny 0806 ffff 24 64010105 ffffffff 40
rule0目的:把所有3526E端口冒充网关的ARP报文禁掉, 其中蓝色部分64010105是网关ip地址的16进制表示形式:100.1.1.5=64010105。
二、仿冒他人IP的arp攻击
作为网关的设备有可能会出现arp错误表项, 在网关设备上还需对仿冒他人IP的arp攻击报文进行过滤。
当PC-B发送PC-D的arp的reply攻击报文, 源mac是PC-B的mac (000d-88f8-09fa), 源ip是PC-D的ip(100.1.1.3), 目的ip和mac是网关(3552P)的, 这样3552上就会学错arp, 如下:
--------------------- 错误 arp 表项 --------------------------------
IP Address MAC Address VLAN ID Port Name Aging Type
100.1.1.4 000d-88f8-09fa 1 Ethernet0/2 20 Dynamic
100.1.1.3 000f-3d81-45b4 1 Ethernet0/2 20 Dynamic
PC-D的arp表项应该学习到端口e0/8上, 而不应该学习到e0/2端口上。
①在3552上配置静态arp, 可以防止该现象:
arp static 100.1.1.3 000f-3d81-45b4 1 e0/8
②同理, 在图2中, 也可以配置静态arp来防止设备学习到错误的arp表项。
③对于二层设备(3050和3026系列),除了可以配置静态arp外, 还可以配置IP+mac+port绑定, 比如在3026C端口4上作如下操作:
am user-bind ip-addr 100.1.1.4 mac-addr 000d-88f8-09fa int e0/4
则ip为100.1.1.4并且mac为000d-88f8-09fa的arp报文可以通过e0/4端口, 仿冒其它设备arp报文无法通过, 从而不会出现错误arp表项。
……