如何使用DHCP snooping技術防御網絡攻擊?
企業內部訪問者與外部訪問者的數量在不斷變化,這增大了它所面對的安全威脅,而且內外訪問的界線也在逐漸模糊。如果一個組織在設計網絡架構時加入了不安全的系統和協議,那么網絡基礎架構就可能有風險。例如,有時候一些2層協議的安全性就被忽視了,如動態主機配置協議(DHCP)。DHCP是一種輔助協議,它工作在后臺,大多數用戶都不會注意到它的存在。事實上,這種沒有得到重視的情況就意味著供應商也可能會忽略這種攻擊。DHCP snooping就是一種可用于防御許多常見攻擊的防控技術。
DHCP可能受到幾種不同方式的攻擊,其中包括惡意DHCP服務器或本地交換網絡的地址解析協議(ARP)污染。并非所有意外事件都屬于惡意攻擊。舉個例子來說,一位最終用戶可能連接了一個啟用DHCP的網絡設備或路由器,結果就可能給其他用戶分配一個無效的DHCP地址。另外,攻擊者也可能發起了一個資源耗盡的攻擊,并且嘗試用光所有的DHCP地址。危害更大的方法是,攻擊者會主動嘗試重定向用戶的DHCP服務器請求。當然,這些只是促使您使用DHCP snooping技術的一部分原因。
這種中間人攻擊的機制要求攻擊者創建自己的DHCP服務器。接下來,攻擊者會廣播偽造的DHCP請求,并且嘗試用光DHCP范圍內的所有DHCP地址。結果,合法用戶就無法從DHCP服務器獲得或更新IP地址。然后,攻擊者就開始用它的欺騙性DHCP服務器分配所搶占的DHCP地址,使它的地址成為新的網關。接收到這些地址的最終用戶就可能被重定向到攻擊者,然后再通向互聯網。這樣它就盜用了網絡連接。
上面的場景只是經典中間人攻擊的另一種變化。這種技術需要將攻擊者置于所攻擊網絡內部,從而讓他能夠窺探客戶流量。或許您會認為這種攻擊并不可怕,但是現在已經出現了許多專門發起這些攻擊的工具,如Gobbler、DHCPstarv和Yersinia。
在現有交換機上創建DHCP snooping
DHCP snooping是通過現有交換機在數據鏈路層實現的,它可以對抗攻擊,阻擋未授權DHCP服務器。它使2層協議交換機能夠檢測從特定端口接收的數據幀,然后檢查它們是否來自合法的DHCP服務器。
這個2層處理過程包括幾個步驟。首先,您需要在交換機上啟用全局DHCP,然后再在各個虛擬LAN(VLAN)上啟用DHCP snooping。最后,您還必須配置各個可信端口。
下面是一個啟用DHCP SNOOPING的例子:
Switch(config)#ip dhcp snooping
Switch(config)#ip dhcp snooping vlan 30
Switch(config)#interface gigabitethernet1/0/1
Switch(config-if)#ip dhcp snooping trust
在這個例子中,交換機啟用了全局DHCP snooping,然后再為VLAN 30啟用DHCP snooping。唯一可信的接口是gigabitEthernet1/0/1。DHCP snooping可以幫助保證主機只使用分配給它們的IP地址,并且驗證只能訪問授權的DHCP服務器。在實現之后,DHCP snooping就會丟棄來自未可信DHCP服務器的DHCP消息。
使用DHCP snooping防止ARP緩存污染
DHCP snooping還可以跟蹤主機的物理位置,從而可以防御(ARP)緩存污染攻擊。它在防御這些攻擊的過程中發揮重要作用,因為您可以使用DHCP snooping技術丟棄一些來源與目標MAC地址不符合已定義規則的DHCP消息。管理會收到通過DHCP snooping警報通知的違規行為。當DHCP snooping服務檢測到違規行為時,它會在系統日志服務器上記錄一條消息“DHCP Snooping”。
DHCP snooping是實現2層協議流量安全性的第一步。惡意DHCP服務器不僅會導致網絡問題,它們還可以被攻擊者用于轉發敏感流量和發起中間人攻擊。如果還沒有做好這些措施,那么一定要考慮實現這些防御措施,保證網絡基礎架構的安全性。