本文是一華為交換機防止同網段ARP欺騙攻擊配置案例。
阻止仿冒網關IP的arp攻擊
1.1 二層交換機實現防攻擊
1.1.1 配置組網
S3552P是三層設備,其中IP:100.1.1.1是所有PC的網關,S3552P上的網關MAC地址為000f-e200-3999。PC-B上裝有ARP攻擊軟件。現在需要對S3026_A進行一些特殊配置,目的是過濾掉仿冒網關IP的ARP報文。
1.1.2; 配置步驟
對於二層交換機如S3026C等支持用戶自定義ACL(number為5000到5999)的交換機,可以配置ACL來進行ARP報文過濾。
全局配置ACL禁止所有源IP是網關的ARP報文
acl num; 5000
rule 0 deny 0806 ffff 24 64010101 ffffffff 40
rule 1 permit 0806 ffff 24 000fe2003999 ffffffffffff 34
其中rule0把整個S3026C_A的端口冒充網關的ARP報文禁掉,其中斜體部分64010101是網關IP地址100.1.1.1的16進制表示形式。Rule1允許通過網關發送的ARP報文,斜體部分為網關的mac地址000f-e200-3999。
注意:配置Rule時的配置順序,上述配置為先下發後生效的情況。
在S3026C-A系統視圖下發acl規則:
[S3026C-A] packet-filter user-group 5000
這樣只有S3026C_A上連網關設備才能夠發送網關的ARP報文,其它主機都不能發送假冒網關的arp響應報文。
1.2; 三層交換機實現防攻擊
1.2.1 配置組網
圖2 三層交換機防ARP攻擊組網
1.2.2 防攻擊配置舉例
對於三層設備,需要配置過濾源IP是網關的ARP報文的ACL規則,配置如下ACL規則:
acl number 5000
rule 0 deny 0806 ffff 24 64010105 ffffffff 40
rule0禁止S3526E的所有端口接收冒充網關的ARP報文,其中斜體部分64010105是網關IP地址100.1.1.5的16進制表示形式。
2 仿冒他人IP的arp攻擊
作為網關的設備有可能會出現ARP錯誤表項,因此在網關設備上還需對仿冒他人IP的ARP攻擊報文進行過濾。
如圖1所示,當PC-B發送源IP地址為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-09fa1;;;;;Ethernet0/2;;20;Dynamic
100.1.1.3;;000f-3d81-45b41;;;;Ethernet0/2;;20;Dynamic
從網絡連接可以知道PC-D的arp表項應該學習到端口E0/8上,而不應該學習到E0/2端口上。但實際上交換機上學習到該ARP表項在E0/2。通過如下配置方法可以防止這類ARP的攻擊。
一、在S3552上配置靜態ARP,可以防止該現象:
arp static 100.1.1.3 000f-3d81-45b4 1 e0/8
二、同理在圖2 S3526C上也可以配置靜態ARP來防止設備學習到錯誤的ARP表項。
三、對於二層設備(S3050C和S3026E系列),除了可以配置靜態ARP外,還可以配置IP+MAC+port綁定,比如在S3026C端口E0/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表項。
上述配置案例中僅僅列舉了部分Quidway S系列以太網交換機的應用。在實際的網絡應用中,請根據配置手冊確認該產品是否支持用戶自定義ACL和地址綁定。僅僅具有上述功能的交換機才能防止ARP欺騙。