DHCP snooping總結(jié)

DHCP服務(wù)已是網(wǎng)絡(luò)中必不可少的服務(wù)之一。隨著DHCP服務(wù)的部署,一些安全問(wèn)題也逐漸暴露出一些問(wèn)題:

  • DHCP報(bào)文泛紅攻擊
  • 仿冒DHCP報(bào)文攻擊
  • DHCP仿冒者攻擊
  • DHCP server拒絕服務(wù)攻擊
  • 仿冒DHCP服務(wù)器攻擊

DHCP Snooping是DHCP(Dynamic Host Configuration Protocol)的一種安全特性,用于保證DHCP客戶端從合法的DHCP服務(wù)器獲取IP地址,并記錄DHCP客戶端IP地址與MAC地址等參數(shù)的對(duì)應(yīng)關(guān)系,防止網(wǎng)絡(luò)上針對(duì)DHCP攻擊。

這里要注意的是:DHCP snooping 只是會(huì)動(dòng)態(tài)的生成綁定表,需要結(jié)合其它功能和特性來(lái)實(shí)現(xiàn)安全防護(hù)。

1.DHCP報(bào)文泛紅攻擊:

在DHCP網(wǎng)絡(luò)環(huán)境中,若存在DHCP用戶短時(shí)間內(nèi)向設(shè)備發(fā)送大量的DHCP報(bào)文,將會(huì)對(duì)設(shè)備的性能造成巨大的沖擊以致可能會(huì)導(dǎo)致設(shè)備無(wú)法正常工作。通過(guò)使能對(duì)DHCP報(bào)文上送DHCP報(bào)文處理單元的速率進(jìn)行檢測(cè)功能將能夠有效防止DHCP報(bào)文泛洪攻擊。

解決辦法:
配置限制DHCP報(bào)文的上送速率,可在系統(tǒng)視圖、VLAN視圖或接口視圖下執(zhí)行。

執(zhí)行命令dhcp snooping check dhcp-rate enable,使能對(duì)DHCP報(bào)文上送DHCP報(bào)文處理單元的速率進(jìn)行檢測(cè)功能。
缺省情況下,未使能對(duì)DHCP報(bào)文上送DHCP報(bào)文處理單元的速率進(jìn)行檢測(cè)功能。

執(zhí)行命令dhcp snooping check dhcp-rate rate,配置DHCP報(bào)文上送DHCP報(bào)文處理單元的最大允許速率。
缺省情況下,全局DHCP報(bào)文上送DHCP報(bào)文處理單元的最大允許速率為100pps,接口下DHCP報(bào)文上送DHCP報(bào)文處理單元的最大允許速率為在系統(tǒng)視圖下配置的值。

2.仿冒DHCP報(bào)文攻擊:

在DHCP網(wǎng)絡(luò)環(huán)境中,若攻擊者仿冒合法用戶的DHCP Request報(bào)文發(fā)往DHCP Server,將會(huì)導(dǎo)致用戶的IP地址租約到期之后不能夠及時(shí)釋放,以致合法用戶無(wú)法使用該IP地址;若攻擊者仿冒合法用戶的DHCP Release報(bào)文發(fā)往DHCP Server,將會(huì)導(dǎo)致用戶異常下線。
在生成DHCP Snooping綁定表后,設(shè)備可根據(jù)綁定表項(xiàng),對(duì)DHCP Request報(bào)文或DHCP Release報(bào)文進(jìn)行匹配檢查,只有匹配成功的報(bào)文設(shè)備才將其轉(zhuǎn)發(fā),否則將丟棄。這將能有效的防止非法用戶通過(guò)發(fā)送偽造DHCP Request或DHCP Release報(bào)文冒充合法用戶續(xù)租或釋放IP地址。

解決辦法:
使能對(duì)DHCP報(bào)文進(jìn)行綁定表匹配檢查的功能,可在系統(tǒng)視圖、VLAN視圖或接口視圖下進(jìn)行配置。

執(zhí)行命令dhcp snooping check dhcp-request enable vlan { vlan-id1 [ to vlan-id2 ] }&<1-10>,使能對(duì)從指定VLAN內(nèi)上送的DHCP報(bào)文進(jìn)行綁定表匹配檢查的功能。
缺省情況下,未使能對(duì)DHCP報(bào)文進(jìn)行綁定表匹配檢查的功能。

在VLAN或者接口視圖下:
執(zhí)行命令dhcp snooping check dhcp-request enable,使能對(duì)DHCP報(bào)文進(jìn)行綁定表匹配檢查的功能。
缺省情況下,未使能對(duì)DHCP報(bào)文進(jìn)行綁定表匹配檢查的功能。

3. DHCP仿冒者攻擊:

此功能需要結(jié)合IPSG來(lái)實(shí)現(xiàn):

隨著網(wǎng)絡(luò)規(guī)模越來(lái)越大,通過(guò)偽造源IP地址實(shí)施的網(wǎng)絡(luò)攻擊(簡(jiǎn)稱(chēng)IP地址欺騙攻擊)也逐漸增多。一些攻擊者通過(guò)偽造合法用戶的IP地址獲取網(wǎng)絡(luò)訪問(wèn)權(quán)限,非法訪問(wèn)網(wǎng)絡(luò),甚至造成合法用戶無(wú)法訪問(wèn)網(wǎng)絡(luò),或者信息泄露。IPSG針對(duì)IP地址欺騙攻擊提供了一種防御機(jī)制,可以有效阻止此類(lèi)網(wǎng)絡(luò)攻擊行為。
一個(gè)典型的利用IPSG防攻擊的示例如圖1所示,非法主機(jī)偽造合法主機(jī)的IP地址獲取上網(wǎng)權(quán)限。此時(shí),通過(guò)在Switch的接入用戶側(cè)的接口或VLAN上部署IPSG功能,Switch可以對(duì)進(jìn)入接口的IP報(bào)文進(jìn)行檢查,丟棄非法主機(jī)的報(bào)文,從而阻止此類(lèi)攻擊。

IPSG利用綁定表(源IP地址、源MAC地址、所屬VLAN、入接口的綁定關(guān)系)去匹配檢查二層接口上收到的IP報(bào)文,只有匹配綁定表的報(bào)文才允許通過(guò),其他報(bào)文將被丟棄。

綁定表生成后,IPSG基于綁定表向指定的接口或者指定的VLAN下發(fā)ACL,由該ACL來(lái)匹配檢查所有IP報(bào)文。主機(jī)發(fā)送的報(bào)文,只有匹配綁定表才會(huì)允許通過(guò),不匹配綁定表的報(bào)文都將被丟棄。當(dāng)綁定表信息變化時(shí),設(shè)備會(huì)重新下發(fā)ACL。缺省情況下,如果在沒(méi)有綁定表的情況下使能了IPSG,設(shè)備會(huì)允許IP協(xié)議報(bào)文通過(guò),但是會(huì)拒絕所有的數(shù)據(jù)報(bào)文。

IPSG只匹配檢查主機(jī)發(fā)送的IP報(bào)文,對(duì)于ARP、PPPoE等非IP報(bào)文,IPSG不做匹配檢查。

IPSG實(shí)現(xiàn)原理圖

4.DHCP server拒絕服務(wù)攻擊

若在網(wǎng)絡(luò)中存在DHCP用戶惡意申請(qǐng)IP地址,將會(huì)導(dǎo)致IP地址池中的IP地址快速耗盡以致DHCP Server無(wú)法為其他合法用戶分配IP地址。另一方面,DHCP Server通常僅根據(jù)CHADDR(client hardware address)字段來(lái)確認(rèn)客戶端的MAC地址。如果攻擊者通過(guò)不斷改變DHCP Request報(bào)文中的CHADDR字段向DHCP Server申請(qǐng)IP地址,將會(huì)導(dǎo)致DHCP Server上的地址池被耗盡,從而無(wú)法為其他正常用戶提供IP地址。
為了防止某些端口的DHCP用戶惡意申請(qǐng)IP地址,可配置接口允許學(xué)習(xí)的DHCP Snooping綁定表項(xiàng)的最大個(gè)數(shù)來(lái)控制上線用戶的個(gè)數(shù),當(dāng)用戶數(shù)達(dá)到該值時(shí),則任何用戶將無(wú)法通過(guò)此接口成功申請(qǐng)到IP地址。為了防止攻擊者不斷改變DHCP Request報(bào)文中的CHADDR字段進(jìn)行攻擊,可使能檢測(cè)DHCP Request報(bào)文幀頭MAC地址與DHCP數(shù)據(jù)區(qū)中CHADDR字段是否相同的功能,相同則轉(zhuǎn)發(fā)報(bào)文,否則丟棄。

解決辦法:
配置接口允許學(xué)習(xí)的DHCP Snooping綁定表項(xiàng)的最大個(gè)數(shù),可在系統(tǒng)視圖、VLAN視圖或接口視圖下配置。

執(zhí)行命令dhcp snooping max-user-number max-number vlan { vlan-id1 [ to vlan-id2 ] } &<1-10>,配置設(shè)備允許學(xué)習(xí)的DHCP Snooping綁定表項(xiàng)的最大個(gè)數(shù)。
執(zhí)行該命令后,設(shè)備所有的接口允許學(xué)習(xí)的DHCP Snooping綁定表項(xiàng)之和為該命令所配置的值。

在VLAN或者接口視圖下:
執(zhí)行命令dhcp snooping max-user-number max-number,配置接口允許學(xué)習(xí)的DHCP Snooping綁定表項(xiàng)的最大個(gè)數(shù)。
若在VLAN視圖下執(zhí)行該命令,則VLAN內(nèi)所有的接口接入的用戶最大數(shù)為該命令所配置的值。

5.仿冒DHCP服務(wù)器攻擊

此功能需要配置DHCP 信任功能來(lái)實(shí)現(xiàn):

配置接口信任狀態(tài)

背景信息

如圖所示場(chǎng)景中,為使DHCP客戶端能通過(guò)合法的DHCP服務(wù)器獲取IP地址,需將與管理員信任的DHCP服務(wù)器直接或間接連接的設(shè)備接口設(shè)置為信任接口(如圖中的if0),其他接口設(shè)置為非信任接口(如圖中的if2)。從而保證DHCP客戶端只能從合法的DHCP服務(wù)器獲取IP地址,私自架設(shè)的DHCP Server仿冒者無(wú)法為DHCP客戶端分配IP地址。
在連接用戶的接口或VLAN下使能DHCP Snooping功能之后,需將連接DHCP服務(wù)器的接口配置為“信任”模式,兩者同時(shí)生效設(shè)備即能夠生成DHCP Snooping動(dòng)態(tài)綁定表。

解決辦法:
請(qǐng)?jiān)诙泳W(wǎng)絡(luò)中的接入設(shè)備上執(zhí)行以下步驟。
配置接口為“信任”狀態(tài),可在接口視圖或VLAN視圖下執(zhí)行。
接口視圖下:
執(zhí)行命令interface interface-type interface-number,進(jìn)入接口視圖。
執(zhí)行命令dhcp snooping trusted,配置接口為“信任”接口。
缺省情況下,接口的狀態(tài)為“非信任”狀態(tài)。
VLAN視圖下:
執(zhí)行命令vlan vlan-id,進(jìn)入VLAN視圖。
執(zhí)行命令dhcp snooping trusted interface interface-type interface-number ,配置接口為“信任”接口。
缺省情況下,接口的狀態(tài)為“非信任”狀態(tài)。
在VLAN視圖下執(zhí)行此命令,則命令功能僅對(duì)加入該VLAN的接口收到的屬于此VLAN的DHCP報(bào)文生效;在接口下執(zhí)行該命令,則命令功能對(duì)該接口接收到的所有DHCP報(bào)文生效。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容