基于報(bào)文窺探的DHCP欺騙過(guò)濾機(jī)制
一、DHCP協(xié)議
1.協(xié)議簡(jiǎn)介
DHCP協(xié)議(Dynamic Host Configuration Protocol)是一個(gè)工作在傳輸層的協(xié)議,基于UDP報(bào)文工作。DHCP協(xié)議占用2個(gè)網(wǎng)絡(luò)端口:UDP67端口和UDP68端口分別作為DHCP Server和DHCP Client的服務(wù)端口使用。
2.報(bào)文結(jié)構(gòu)
DHCP使用BOOTP協(xié)議的報(bào)文格式,但對(duì)許多字段的定義和內(nèi)容作出了修改。
報(bào)文結(jié)構(gòu)分為:op 字段、HTYPE和HLEN字段、跳數(shù)字段、事務(wù)ID字段、秒數(shù)字段、標(biāo)志字段、客戶機(jī)IP地址字段等,每個(gè)字段都有相對(duì)應(yīng)的功能和使用規(guī)格。
二、DHCP欺騙
1.DHCP的工作流程
DHCP的主要工作流可以簡(jiǎn)單理解為,一臺(tái)主機(jī)新加入網(wǎng)絡(luò),從發(fā)出獲取IP的請(qǐng)求,到順利的地獲得一個(gè)IP地址,需要經(jīng)過(guò)發(fā)現(xiàn)、提供、選擇、確認(rèn)4個(gè)階段。
發(fā)現(xiàn)階段,即客戶機(jī)請(qǐng)求服務(wù)器的階段。提供階段,即DHCP服務(wù)器提供IP地址的階段。選擇階段,即DHCP客戶機(jī)選擇某臺(tái)DHCP服務(wù)器提供的IP地址的階段。確認(rèn)階段,即DHCP服務(wù)器確認(rèn)所提供的IP地址的階段。由于DHCP協(xié)議設(shè)計(jì)上的漏洞,客戶機(jī)在收到多個(gè)DHCP回應(yīng)報(bào)文(DHCP offer)時(shí),沒(méi)有采用身份認(rèn)證或其他非法過(guò)濾機(jī)制,導(dǎo)致了客戶機(jī)有極大的幾率接受錯(cuò)誤的或非法的DHCP配置,遭到黑客或惡意程序的DHCP欺騙攻擊。
2.DHCP欺騙攻擊
如圖1所示,PC A接入交換網(wǎng)絡(luò),希望通過(guò)DHCP來(lái)自動(dòng)獲得IP地址等信息。于是PC A發(fā)出了DHCP請(qǐng)求報(bào)文(DHCP discover,廣播方式)。這個(gè)報(bào)文被傳遞到了PC B和DHCP SERVER上(理論上DHCP SERVER要求比PC B晚一點(diǎn)收到這個(gè)請(qǐng)求)。
圖1
如圖2,PC B和DHCP SERVER收到PC A的DHCP請(qǐng)求后,都進(jìn)行了DHCP回應(yīng)(DHCP offer),但是由于PC B與PC A在同一個(gè)子網(wǎng)內(nèi),中間的聯(lián)系沒(méi)有經(jīng)過(guò)路由設(shè)備,所以理論上PC B的DHCP欺騙回應(yīng)可能早于DHCP SERVER的回應(yīng)包到達(dá)PC A。因此,PC A發(fā)送DHCP Request報(bào)文給PC B,接受PC B的DHCP配置;同時(shí),發(fā)送DHCP NAK報(bào)文給DHCP SERVER,拒絕DHCP SERVER的DHCP配置。
圖2
此時(shí),PC A已被PC B成功欺騙,PC A的網(wǎng)關(guān)地址指向的是DHCP偽裝者PC B,而不是正確的網(wǎng)絡(luò)路由器。
如圖3所示,PC A產(chǎn)生的所有出外網(wǎng)的數(shù)據(jù)都將首先流入PC B,被PC B竊?。ù鄹模?shù)據(jù)后,才轉(zhuǎn)發(fā)出外網(wǎng);同樣地,來(lái)自外網(wǎng)的所有要到達(dá)PC A的數(shù)據(jù),也將首先流入PC B,被PC B竊?。ù鄹模?shù)據(jù)后,才轉(zhuǎn)發(fā)給PC A。
圖3
三、基于報(bào)文窺探的DHCP欺騙過(guò)濾機(jī)制
1.工作原理
為了杜絕DHCP欺騙的發(fā)生,我們需要建立基于報(bào)文窺探的DHCP欺騙過(guò)濾機(jī)制,通過(guò)對(duì)Client和服務(wù)器之間的DHCP交互報(bào)文進(jìn)行窺探,實(shí)現(xiàn)對(duì)非法DHCP報(bào)文的過(guò)濾。下邊對(duì)DHCP Snooping配置使用到的一些術(shù)語(yǔ)及功能進(jìn)行一些解釋。
(1)DHCP Snooping TRUST口:由于DHCP獲取IP的交互報(bào)文是使用廣播的形式,從而存在著非法服務(wù)器影響用戶正常IP的獲取,更有甚者通過(guò)非法服務(wù)器欺騙竊取用戶信息的現(xiàn)象,為了防止非法服務(wù)器的問(wèn)題,DHCP Snooping把端口分為兩種類型,TRUST口和UNTRUST口,設(shè)備只轉(zhuǎn)發(fā)TRUST口收到的DHCP Reply報(bào)文,而丟棄所有來(lái)自UNTRUST口DHCP Reply報(bào)文,這樣我們把合法的DHCP Server連接的端口設(shè)置為TURST口,其他口設(shè)置為UNTRUST口,就可以實(shí)現(xiàn)對(duì)非法DHCP Server的屏蔽。
(2)IP Source Guard:相當(dāng)于在端口上添加了一條ACL表項(xiàng),默認(rèn)過(guò)濾該端口上所有用戶發(fā)送的IP報(bào)文(除DHCP報(bào)文外)。當(dāng)用戶通過(guò)DHCP交互申請(qǐng)IP地址后,會(huì)在該端口上添加一條過(guò)濾表項(xiàng),允許該用戶使用該地址進(jìn)行IP報(bào)文的通訊,其他用戶依然禁止通訊。
(3)DHCP Snooping綁定數(shù)據(jù)庫(kù):在DHCP環(huán)境的網(wǎng)絡(luò)里經(jīng)常會(huì)出現(xiàn)用戶私自設(shè)置IP地址的問(wèn)題,用戶私設(shè)IP地址不但使網(wǎng)絡(luò)難以維護(hù),并且會(huì)導(dǎo)致一些合法的使用DHCP獲取IP的用戶因?yàn)闆_突而無(wú)法正常使用網(wǎng)絡(luò),DHCP Snooping通過(guò)窺探Client和Server之間交互的報(bào)文,把用戶獲取到的IP信息以及用戶MAC、VID、PORT、租約時(shí)間等信息組成一個(gè)用戶記錄表項(xiàng),從而形成一個(gè)DHCP Snooping的用戶數(shù)據(jù)庫(kù),配合ARP檢測(cè)功能或ARP CHECK功能的使用,從而達(dá)到控制用戶上網(wǎng)的目的。
(4) DHCP Snooping速率限制: DHCP Snooping需要對(duì)所有非信任端的DHCP請(qǐng)求報(bào)文進(jìn)行檢查,同時(shí)將合法的DHCP請(qǐng)求報(bào)文轉(zhuǎn)發(fā)到信任口所在的網(wǎng)絡(luò)。為了防止在非信任端出現(xiàn)DHCP請(qǐng)求攻擊、控制流向信任網(wǎng)絡(luò)的DHCP請(qǐng)求速率,DHCP Snooping支持在端口對(duì)收到的DHCP報(bào)文進(jìn)行速率限制,當(dāng)接口收到的DHCP報(bào)文速率超過(guò)設(shè)定的限制時(shí),直接丟棄接口上收到的DHCP報(bào)文。
2.DHCP欺騙過(guò)濾機(jī)制的實(shí)現(xiàn)
以一個(gè)簡(jiǎn)例來(lái)介紹DHCP欺騙過(guò)濾機(jī)制的實(shí)現(xiàn)。網(wǎng)絡(luò)拓?fù)淙鐖D4所示,PC A的DHCP報(bào)文交互主要流經(jīng)與它直連的交換機(jī)的4個(gè)端口:G0/1、G0/2、G0/3、G0/4,其中通過(guò)G0/2、G0/3接口的DHCP報(bào)文都能到達(dá)正確的DHCP SERVER,而通過(guò)G0/4接口的DHCP報(bào)文時(shí)來(lái)自于DHCP偽裝者PC B,是我們需要過(guò)濾掉的目標(biāo)。
圖4
交換機(jī)具體配置如下:
switch> enable
/*進(jìn)入特權(quán)模式。
switch# configure terminal
/*進(jìn)入全局配置模式。
switch(config)# ip dhcp snooping
/*開啟DHCP報(bào)文窺探。
switch(config)# ip dhcp snooping information option
/*在進(jìn)行DHCP窺探轉(zhuǎn)發(fā)時(shí),給每個(gè)DHCP請(qǐng)求添加option82選項(xiàng),如果不開啟這個(gè)功能,DHCP中繼服務(wù)無(wú)法正常工作。
switch(config-if)# interface range G0/2-3
/*進(jìn)入接口配置模式,同時(shí)配置G0/2,G0/3接口。
switch(config-if)# ip dhcp snooping limit rate 10
/*配置DHCP包的轉(zhuǎn)發(fā)速率,超過(guò)后接口就shutdown,默認(rèn)不限制;
switch(config-if)# ip dhcp snooping trust
/*設(shè)置G0/2,G0/3接口為信任接口,信任接口可以正常接收并轉(zhuǎn)發(fā)DHCP Offer報(bào)文,不記錄IP和MAC地址的綁定,默認(rèn)是非信任接口。
G0/4接口沒(méi)有配置,默認(rèn)狀態(tài)是非信任接口,所有將會(huì)過(guò)濾掉所有DHCP Offer報(bào)文。
switch(config-if)# end
/*退出到特權(quán)配置模式。
switch# show ip dhcp snooping
/*顯示當(dāng)前的DHCP窺探狀態(tài)。
至此,DHCP欺騙過(guò)濾機(jī)制設(shè)置完畢。此時(shí),當(dāng)DHCP偽裝者PC B的DHCP欺騙報(bào)文到達(dá)交換機(jī)的G0/4接口后,交換機(jī)通過(guò)報(bào)文解析,發(fā)現(xiàn)是來(lái)自于非信任接口的DHCP offer報(bào)文,將其丟棄,PC A將再也無(wú)法收到DHCP欺騙報(bào)文。
小結(jié)
在小型網(wǎng)絡(luò)中基于報(bào)文窺探的DHCP欺騙過(guò)濾機(jī)制的配置比較簡(jiǎn)單,但當(dāng)網(wǎng)絡(luò)規(guī)模越來(lái)越大時(shí),需要考慮和顧及的各種細(xì)節(jié)會(huì)比較復(fù)雜;特別是當(dāng)網(wǎng)絡(luò)出現(xiàn)故障時(shí),需要對(duì)DHCP協(xié)議的工作原理有深刻的理解,才能快速排查故障,解決問(wèn)題。
欄目分類
- 為什么發(fā)表論文都不開雜志社的發(fā)票呢?
- 2021-2022年CSCD中國(guó)科學(xué)引文數(shù)據(jù)庫(kù)來(lái)源期刊列表-理科南大核心目錄完整版
- CSCD中國(guó)科學(xué)引文數(shù)據(jù)庫(kù)來(lái)源期刊列表(2023-2024年度)南大核心目錄
- 融媒體環(huán)境下地方新聞網(wǎng)站媒體的發(fā)展路徑
- 創(chuàng)新與繼承:70周年獻(xiàn)禮片“三杰”研究
- 人本導(dǎo)向下的城市更新規(guī)劃思路探索——以上海松江區(qū)中山街道老城區(qū)為例
- 預(yù)制裝配式地鐵車站施工技術(shù)
- 從框架理論看“中國(guó)學(xué)習(xí)的人”
- 互聯(lián)網(wǎng)環(huán)境下古都洛陽(yáng)城市形象建構(gòu)與傳播探析
- 價(jià)值工程在房地產(chǎn)開發(fā)管理分工中應(yīng)用
- 官方認(rèn)定!CSSCI南大核心首批191家“青年學(xué)者友好期刊名單”
- 2023JCR影響因子正式公布!
- 國(guó)內(nèi)核心期刊分級(jí)情況概覽及說(shuō)明!本篇適用人群:需要發(fā)南核、北核、CSCD、科核、AMI、SCD、RCCSE期刊的學(xué)者
- 我用了一個(gè)很復(fù)雜的圖,幫你們解釋下“23版最新北大核心目錄有效期問(wèn)題”。
- 重磅!CSSCI來(lái)源期刊(2023-2024版)最新期刊目錄看點(diǎn)分析!全網(wǎng)首發(fā)!
- CSSCI官方早就公布了最新南核目錄,有心的人已經(jīng)拿到并且投入使用!附南核目錄新增期刊!
- 北大核心期刊目錄換屆,我們應(yīng)該熟知的10個(gè)知識(shí)點(diǎn)。
- 注意,最新期刊論文格式標(biāo)準(zhǔn)已發(fā)布,論文寫作規(guī)則發(fā)生重大變化!文字版GB/T 7713.2—2022 學(xué)術(shù)論文編寫規(guī)則
- 盤點(diǎn)那些評(píng)職稱超管用的資源,1,3和5已經(jīng)“絕種”了
- 職稱話題| 為什么黨校更認(rèn)可省市級(jí)黨報(bào)?是否有什么說(shuō)據(jù)?還有哪些機(jī)構(gòu)認(rèn)可黨報(bào)?