揭秘以太網安全技術:IPSG如何保護你的網絡世界?
IPSG簡介
1.定義
IP源防攻擊IPSG(IP Source Guard)是一種基于二層接口的源IP地址過濾技術,它能夠防止惡意主機偽造合法主機的IP地址來仿冒合法主機,還能確保非授權主機不能通過自己指定IP地址的方式來訪問網絡或攻擊網絡。
2.目的
隨著網絡規模越來越大,通過偽造源IP地址實施的網絡攻擊(簡稱IP地址欺騙攻擊)也逐漸增多。一些攻擊者通過偽造合法用戶的IP地址獲取網絡訪問權限,非法訪問網絡,甚至造成合法用戶無法訪問網絡,或者信息泄露。IPSG針對IP地址欺騙攻擊提供了一種防御機制,可以有效阻止此類網絡攻擊行為。
一個典型的利用IPSG防攻擊的示例如下圖所示,非法主機偽造合法主機的IP地址獲取上網權限。此時,通過在Device的用戶側的接口或VLAN上部署IPSG功能,Device可以對進入接口的IP報文進行檢查,丟棄非法主機的報文,從而阻止此類攻擊。
IPSG典型防攻擊
IPSG的基本原理
IPSG利用綁定表(源IP地址、源MAC地址、所屬VLAN、入接口的綁定關系)去匹配檢查二層接口上收到的IP報文,只有匹配綁定表的報文才允許通過,其他報文將被丟棄。
綁定表如下表所示,包括靜態和動態兩種。
綁定表生成后,IPSG基于綁定表向指定的接口或者指定的VLAN下發ACL,由該ACL來匹配檢查所有IP報文。主機發送的報文,只有匹配綁定表才會允許通過,不匹配綁定表的報文都將被丟棄。當綁定表信息變化時,設備會重新下發ACL。缺省情況下,如果在沒有綁定表的情況下使能了IPSG,設備會允許除IGMP協議報文外的IP協議報文通過,但是會拒絕所有的IP數據報文通過。
IPSG一般應用在用戶側的接入設備上,可以基于接口或者基于VLAN應用。
- 在用戶側的接口上應用IPSG,該接口接收的所有IP報文均進行IPSG檢查。
- 在用戶側的VLAN上應用IPSG,屬于該VLAN的所有接口接收到IP報文均進行IPSG檢查。
- 如果用戶側的接入設備不支持IPSG功能,也可以在上層設備的接口或者VLAN上應用IPSG。
IPSG中的接口角色
IPSG僅支持在二層物理接口或者VLAN上應用,且只對使能了IPSG功能的非信任接口進行檢查。對于IPSG來說,缺省所有的接口均為非信任接口,信任接口由用戶指定。IPSG的信任接口/非信任接口也就是DHCP Snooping中的信任接口/非信任接口,信任接口/非信任接口同樣適用于基于靜態綁定表方式的IPSG。
IPSG中各接口角色如下圖所示。其中:
- Interface1和Interface2接口為非信任接口且使能IPSG功能,從Interface1和Interface2接口收到的報文會執行IPSG檢查。
- Interface3接口為非信任接口但未使能IPSG功能,從Interface3接口收到的報文不會執行IPSG檢查,可能存在攻擊。
- Interface4接口為用戶指定的信任接口,從Interface4接口收到的報文也不會執行IPSG檢查,但此接口一般不存在攻擊。在DHCP Snooping的場景下,通常把與合法DHCP服務器直接或間接連接的接口設置為信任接口。
IPSG的過濾方式
綁定表項包含:MAC地址、IP地址、VLAN ID、入接口。靜態綁定表項中指定的信息均用于IPSG過濾接口收到的報文。而對于動態綁定表,IPSG依據該表項中的哪些信息過濾接口收到的報文,由用戶設置的檢查項決定,缺省是四項都進行匹配檢查。常見的幾種檢查項如下:
- 基于源IP地址過濾
- 基于源MAC地址過濾
- 基于源IP地址+源MAC地址過濾
- 基于源IP地址+源MAC地址+接口過濾
- 基于源IP地址+源MAC地址+接口+VLAN過濾
IPSG配置命令介紹
(1) 配置靜態用戶綁定表項:
[Huawei] user-bind static { { { ip-address | ipv6-address } { start-ip [ to end-ip ] } &<1-10> | ipv6-prefix prefix/prefix-length } | mac-address mac-address } * [ interface interface-type interface-number ] [ vlan vlan-id [ ce-vlan ce-vlan-id ] ]
[Huawei] user-bind static { { { ip-address | ipv6-address } { start-ip [ to end-ip ] } &<1-10> | ipv6-prefix prefix/prefix-length } | mac-address mac-address } * [ interface interface-type interface-number ] [ vlan vlan-id [ ce-vlan ce-vlan-id ] ]
(2) 使能IPSG功能:
[Huawei-GigabitEthernet0/0/1] ip source check user-bind enable
使能接口或者VLAN的IP報文檢查功能,VLAN視圖配置與接口視圖一致。
(3) 使能IP報文檢查告警功能:
[Huawei-GigabitEthernet0/0/1] ip source check user-bind alarm enable
(4) 配置IP報文檢查告警閾值
[Huawei-GigabitEthernet0/0/1] ip source check user-bind alarm threshold threshold
配置了IP報文檢查告警功能后,當丟棄的IP報文超過告警閾值時,會產生告警提醒用戶。
IPSG配置舉例
如圖所示:網絡終端設備通過手工方式配置靜態IP地址統一管理,通過在接入交換機上配置IPSG,防止主機私自更改IP地址非法獲取訪問網絡權限。
- 配置靜態綁定表
- 使能IPSG及告警上報功能
Switch1配置如下:
#在接入交換機上配置靜態綁定表
[Switch1] user-bind static ip-address 10.1.1.1 mac-address 5489-98C2-1486
[Switch1] user-bind static ip-address 10.1.1.10 mac-address 5489-98AB-22A7
#使能GE0/0/1接口IPSG和IP報文檢查告警功能
[Switch1] interface GigabitEthernet 0/0/1
[Switch1-GigabitEthernet0/0/1] ip source check user-bind enable
[Switch1-GigabitEthernet0/0/1] ip source check user-bind alarm enable
[Switch1-GigabitEthernet0/0/1] ip source check user-bind alarm threshold 100
#接口GE0/0/2配置與GE0/0/1類似,此處省略
配置驗證在Switch上執行display dhcp static user-bind all命令,可以查看靜態綁定表信息。PC1和PC2使用管理員分配的固定IP地址可以正常訪問網絡,更改IP地址后無法訪問網絡。