劉珍億 蘇崢嶸
摘? ?要:文章介紹了企業(yè)網(wǎng)接入層交換機(jī)所面臨的安全威脅,分析了常見(jiàn)防范技術(shù)的原理,并對(duì)不同的應(yīng)用環(huán)境給出了兩種解決方案,并對(duì)這些方案進(jìn)行了優(yōu)劣比較。
關(guān)鍵詞:MAC地址;ARP協(xié)議;DHCP協(xié)議;端口安全
企業(yè)網(wǎng)絡(luò)的接入層交換機(jī)工作在數(shù)據(jù)鏈路層,它連接的是終端用戶,基于介質(zhì)訪問(wèn)控制(Media Access Control,MAC)地址表進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā)。由于傳統(tǒng)局域網(wǎng)協(xié)議的設(shè)計(jì)得不夠嚴(yán)謹(jǐn),對(duì)數(shù)據(jù)報(bào)文來(lái)源的合法性缺乏足夠的安全檢查機(jī)制,導(dǎo)致局域網(wǎng)中經(jīng)常出現(xiàn)拒絕服務(wù)、動(dòng)態(tài)主機(jī)設(shè)置協(xié)議(Dynamic Host Configuration Protocol,DHCP)服務(wù)器仿冒、ARP欺騙等安全威脅。解決企業(yè)網(wǎng)接入層安全問(wèn)題,可以將網(wǎng)絡(luò)安全造成的損失大大降低,意義十分重大。
1? ? 接入交換機(jī)常見(jiàn)安全威脅
1.1? MAC地址泛洪攻擊
MAC地址,也叫物理地址,是全球唯一的48 bit的標(biāo)識(shí)地址。在網(wǎng)絡(luò)底層的比特流傳輸過(guò)程,是通過(guò)該地址來(lái)識(shí)別網(wǎng)絡(luò)設(shè)備的。交換機(jī)在緩存中維護(hù)著一張計(jì)算機(jī)輔助制造(Computer Aided Manufacturing,CAM)表,它衍生自MAC地址表,它是交換機(jī)在做基于硬件的快速轉(zhuǎn)發(fā)時(shí)要查找的一張二層轉(zhuǎn)發(fā)表,表中記錄了MAC地址與端口、VLAN的映射關(guān)系,表項(xiàng)內(nèi)容自動(dòng)老化。交換機(jī)的端口能夠自動(dòng)學(xué)習(xí)MAC地址,每收到一個(gè)幀時(shí),都會(huì)檢查該幀中的源MAC,并從CAM表查找對(duì)應(yīng)條目,如果找到則直接轉(zhuǎn)發(fā),否則就將該MAC地址和端口的對(duì)應(yīng)關(guān)系存入CAM表,以便當(dāng)下一次往該MAC地址發(fā)送數(shù)據(jù)時(shí),可以確定向哪個(gè)端口轉(zhuǎn)發(fā)數(shù)據(jù)[1]。
交換機(jī)CAM表的容量是有限的,它能存儲(chǔ)的行數(shù)取決于交換機(jī)的內(nèi)存大小。如果攻擊者發(fā)送大量偽造數(shù)據(jù)包,且源MAC不斷改變,交換機(jī)的CAM表將很快被填滿,再也無(wú)法接受新的條目,導(dǎo)致合法用戶的數(shù)據(jù)流到達(dá)交換機(jī)時(shí)被擠出去,交換機(jī)的轉(zhuǎn)發(fā)效率極其低下,影響到網(wǎng)絡(luò)整體性能,攻擊者還可以竊取合法用戶的數(shù)據(jù)流量。
1.2? DHCP服務(wù)器攻擊
DHCP服務(wù)器提供IP地址租用服務(wù),當(dāng)內(nèi)網(wǎng)的PC設(shè)置為自動(dòng)獲取IP地址時(shí),就會(huì)在開(kāi)機(jī)后發(fā)送DHCP Request廣播請(qǐng)求租用地址。DHCP服務(wù)器會(huì)分配一個(gè)可用IP給該計(jì)算機(jī),請(qǐng)求IP地址的客戶端計(jì)算機(jī)會(huì)得到一個(gè)IP地址,同時(shí)也獲取到默認(rèn)網(wǎng)關(guān)、DNS服務(wù)器地址等信息[2]。
最初的網(wǎng)絡(luò)設(shè)計(jì)者主要考慮的是保證網(wǎng)絡(luò)的連通性,而對(duì)網(wǎng)絡(luò)的安全性考慮得不夠周全。如果企業(yè)網(wǎng)內(nèi)部有多臺(tái)提供IP分配服務(wù)的Server,將會(huì)給網(wǎng)絡(luò)管理帶來(lái)麻煩。攻擊者可以大量偽造DHCP Request請(qǐng)求包,耗盡合法DHCP Server的IP地址池。當(dāng)有PC請(qǐng)求IP的時(shí)候,合法的DHCP服務(wù)器就無(wú)法為其分配地址,這就是DHCP服務(wù)器DoS攻擊。
攻擊者還可以非法搭建一個(gè)DHCP服務(wù)器供內(nèi)網(wǎng)PC租用IP,并人為配置一個(gè)惡意的DNS地址。這時(shí),用戶可能獲取到一個(gè)錯(cuò)誤的IP地址導(dǎo)致不能上網(wǎng),或者能上網(wǎng)但卻被惡意的DNS地址引導(dǎo)到仿冒的網(wǎng)站。這就是DHCP服務(wù)器仿冒攻擊。
1.3? ARP欺騙攻擊
ARP協(xié)議工作在數(shù)據(jù)鏈路層,數(shù)據(jù)在以太網(wǎng)鏈路上是以幀的形式進(jìn)行傳輸,要在以太網(wǎng)中傳輸IP數(shù)據(jù)包,必須知道目標(biāo)IP所對(duì)應(yīng)的MAC地址信息,ARP的基本功能就是根據(jù)目標(biāo)IP來(lái)查找目標(biāo)MAC地址,以確保通信的正常進(jìn)行。網(wǎng)絡(luò)中的主機(jī)、交換機(jī)和路由器上,都有一張ARP緩存表,表中記錄了IP地址與MAC地址的一一對(duì)應(yīng)關(guān)系[3]。
根據(jù)ARP協(xié)議的工作機(jī)制,為了降低網(wǎng)絡(luò)上過(guò)多的ARP流量,一臺(tái)設(shè)備哪怕收到的ARP Response報(bào)文并非自己請(qǐng)求的,它也會(huì)將其存入到自己的ARP緩存表中。例如,攻擊者向PC1發(fā)送一個(gè)偽造的ARP響應(yīng)報(bào)文,告訴PC1:地址172.16.1.2(PC2的IP)對(duì)應(yīng)的MAC是D4-3A-7E-C6-D3-E2(攻擊者的MAC),PC1將這個(gè)映射關(guān)系寫(xiě)入自己的ARP緩存,以后發(fā)送數(shù)據(jù)時(shí),將本該發(fā)往PC2的數(shù)據(jù)發(fā)送給了攻擊者。攻擊者就截獲了PC1發(fā)往PC2的通信。攻擊者不但可以欺騙主機(jī),還可以欺騙網(wǎng)關(guān)[4]。
2? ? 應(yīng)對(duì)安全威脅的技術(shù)手段
2.1? 風(fēng)暴控制(Storm? Control)
合理細(xì)分VLAN可以減小局域網(wǎng)廣播風(fēng)暴的影響范圍,但光這樣還不夠。當(dāng)交換機(jī)的某個(gè)端口接收大量的broadcast,multiast或未知unicast報(bào)文時(shí),仍會(huì)引發(fā)廣播風(fēng)暴。攻擊者發(fā)動(dòng)DoS攻擊、協(xié)議棧的錯(cuò)誤實(shí)現(xiàn)、網(wǎng)絡(luò)設(shè)備的錯(cuò)誤配置均可能導(dǎo)致局域網(wǎng)廣播風(fēng)暴的發(fā)生。在接入交換機(jī)上配置的Storm Control功能,可以成功地避免二層廣播風(fēng)暴導(dǎo)致的網(wǎng)絡(luò)性能下降或網(wǎng)絡(luò)故障。Storm Control功能監(jiān)視進(jìn)棧的流量狀態(tài),通過(guò)一定時(shí)間內(nèi)的比較和測(cè)量,預(yù)先設(shè)定閾值的方法來(lái)管理流量,當(dāng)某種類型流量的閾值到達(dá)時(shí),這種流量就會(huì)被丟棄。
2.2? 端口安全(Port? Security)
通過(guò)配置端口安全,可以只允許特殊MAC或IP的PC接入網(wǎng)絡(luò),還可以限制交換機(jī)端口接入設(shè)備的數(shù)量。為了提高安全性,可將MAC地址和對(duì)應(yīng)的端口綁定起來(lái)(綁定的地址稱為安全地址),當(dāng)然也可以把指定的IP地址和相應(yīng)的端口綁定起來(lái),或者是兩者都綁定。對(duì)某端口啟用端口安全功能后,當(dāng)其安全地址的數(shù)目達(dá)到最大允許數(shù)目后,若該端口再接收一個(gè)源地址不屬于安全地址的數(shù)據(jù)包時(shí),將產(chǎn)生一個(gè)安全違例,此時(shí)管理人員可以根據(jù)需要,采用不同的安全違例處理方式,主要有protect,restrict和shutdown 3種[5]。
2.3? DHCP監(jiān)聽(tīng)(DHCP? Snooping)
通過(guò)配置DHCP Snooping,交換機(jī)能夠阻攔DHCP報(bào)文。DHCP Snooping將交換機(jī)的所有端口劃分成兩種類型:trust和untrust。交換機(jī)限定untrust端口只能夠發(fā)送DHCP Request報(bào)文,丟棄來(lái)自u(píng)ntrust端口的所有其他DHCP報(bào)文。trust端口可以接收所有的DHCP報(bào)文。一般把連接到真實(shí)DHCP Server的端口設(shè)置為trust端口,其他端口設(shè)置為untrust端口。
DHCP Snooping還有一個(gè)附帶的功能就是創(chuàng)建了一個(gè)DHCP監(jiān)聽(tīng)數(shù)據(jù)庫(kù)。一旦某臺(tái)PC成功獲取了一個(gè)IP,交換機(jī)便會(huì)自動(dòng)在監(jiān)聽(tīng)數(shù)據(jù)庫(kù)中添加一條綁定項(xiàng),該綁定條項(xiàng)可作為其他應(yīng)用的依據(jù)。
2.4? 動(dòng)態(tài)ARP檢測(cè)
部署動(dòng)態(tài)ARP檢測(cè)(Dynamic ARP Detection,DAI)的前提是要部署DHCP Snooping,在DHCP環(huán)境下,通過(guò)部署DHCP Snooping將會(huì)生成一個(gè)監(jiān)聽(tīng)綁定數(shù)據(jù)庫(kù),這個(gè)數(shù)據(jù)庫(kù)包含的信息可以作為ARP合法性檢驗(yàn)的依據(jù)。DAI技術(shù)將交換機(jī)的物理接口分為trust和untrust兩種狀態(tài),對(duì)trust端口直接放行(不做檢測(cè)),而對(duì)于untrust接口,收到ARP報(bào)文后會(huì)進(jìn)行合法性檢驗(yàn)。
DAI功能會(huì)消耗交換機(jī)的CPU資源的,開(kāi)啟DAI后有可能會(huì)成為DoS攻擊的目標(biāo)。所以我們有必要再對(duì)端口配置ARP報(bào)文限速。untrust端口的默認(rèn)速度限制是15 pps,trust端口則是無(wú)限制。當(dāng)untrust端口收到的ARP報(bào)文數(shù)量超出配置的閥值,端口將會(huì)進(jìn)入errdisable狀態(tài)[6]。
2.5? ARP報(bào)文校驗(yàn)(ARP? Check)
在PC發(fā)送ARP報(bào)文前獲得PC真實(shí)的IP和MAC,然后進(jìn)行ARP Check:校驗(yàn)ARP報(bào)文中發(fā)送者M(jìn)AC與真實(shí)的MAC是否相同,不同則丟棄;校驗(yàn)ARP報(bào)文中發(fā)送者IP與真實(shí)的IP是否相同,不同則丟棄。
除了以上技術(shù)手段,還有環(huán)路檢測(cè)、保護(hù)端口、端口阻塞、系統(tǒng)保護(hù)、CPU保護(hù)策略(CPP)、STP安全機(jī)制、dot1X等措施可以提高接入交換機(jī)的安全性。
3? ? 應(yīng)對(duì)安全威脅的綜合解決方案
3.1? 靜態(tài)IP環(huán)境解決方案
3.1.1? 端口安全+ARP報(bào)文校驗(yàn)
對(duì)接入交換機(jī)上連接PC的二層端口開(kāi)啟Port Security功能,將合法PC的IP地址和MAC地址(安全地址)寫(xiě)入交換機(jī)的硬件表項(xiàng);在接入交換機(jī)連接終端用戶的端口開(kāi)啟ARP-Check功能,通過(guò)使用ARP-Check技術(shù)校驗(yàn)ARP報(bào)文的正確性。如果非法的IP/MAC接入網(wǎng)絡(luò),ARP校驗(yàn)將失敗,這樣的用戶將不能正常使用網(wǎng)絡(luò)。
該方案的優(yōu)點(diǎn)是采用硬件的方式直接校驗(yàn)ARP報(bào)文,控制十分嚴(yán)格,不消耗CPU資源。缺點(diǎn)是端口安全必須逐一進(jìn)行配置,需收集所有終端的IP和MAC信息,對(duì)于用戶可能要頻繁變動(dòng)端口的環(huán)境不太適合。
3.1.2? 全局地址綁定+ARP報(bào)文校驗(yàn)
在接入交換機(jī)上全局開(kāi)啟address-bind功能,全局綁定IP與對(duì)應(yīng)MAC,將安全地址寫(xiě)入交換機(jī)的硬件表項(xiàng),在下聯(lián)口開(kāi)啟ARP-Check功能,對(duì)于未綁定或匹配錯(cuò)誤的用戶都不能正常使用網(wǎng)絡(luò)。
該方案的優(yōu)點(diǎn)是控制相對(duì)嚴(yán)格(但比端口安全要寬松),因?yàn)槠涞刂凡唤壎ǖ骄唧w端口。采用硬件校驗(yàn)方式,效率較高。缺點(diǎn)是必須逐一配置并收集所有用戶IP地址和MAC地址,但比前一方案要靈活,不需確認(rèn)IP所對(duì)應(yīng)的端口,適用于用戶需頻繁變動(dòng)交換機(jī)端口的場(chǎng)景[7]。
3.2? DHCP環(huán)境解決方案
3.2.1? DHCP? Snooping+IP? Source? Guard+ARP報(bào)文校驗(yàn)
提取DHCP Snooping數(shù)據(jù)庫(kù)中的IP和MAC信息,然后通過(guò)IP Source Guard特性將數(shù)據(jù)庫(kù)中的IP和MAC信息寫(xiě)入交換機(jī)的硬件表項(xiàng),最后使用ARP報(bào)文校驗(yàn)功能檢驗(yàn)所有ARP報(bào)文的合法性。如果用戶通過(guò)DHCP獲取到IP后試圖發(fā)動(dòng)ARP欺騙攻擊,或者是用戶私設(shè)靜態(tài)IP,他們的ARP報(bào)文校驗(yàn)都將失敗,這樣的用戶將不能正常使用網(wǎng)絡(luò)[8]。
該方案的優(yōu)點(diǎn)是不必逐一去做每個(gè)終端的地址綁定,硬件方式檢查安全表項(xiàng)。缺點(diǎn)是在安全功能上,對(duì)交換機(jī)的要求比較嚴(yán)格,交換機(jī)需同時(shí)具備DHCP監(jiān)聽(tīng)、IP源防護(hù)和ARP報(bào)文檢驗(yàn)這3種安全特性,會(huì)消耗交換機(jī)的硬件資源表項(xiàng)。
3.2.2? DHCP? Snooping +DAI
提取DHCP Snooping綁定數(shù)據(jù)庫(kù)中的IP與MAC,然后通過(guò)DAI特性檢驗(yàn)進(jìn)入的ARP報(bào)文,將ARP報(bào)文中的發(fā)送者IP及發(fā)送者 MAC字段與DHCP Snooping綁定數(shù)據(jù)庫(kù)里面的對(duì)應(yīng)信息進(jìn)行對(duì)比,如果相同則允許通過(guò),否則將丟棄該報(bào)文。
該方案的優(yōu)點(diǎn)是不必逐一去做每個(gè)用戶的地址綁定,配置和維護(hù)管理相對(duì)簡(jiǎn)單;和方案(1)相比,可以節(jié)省設(shè)備所需的硬件安全資源表項(xiàng)。缺點(diǎn)是DAI是CPU檢查ARP報(bào)文,這將會(huì)額外消耗交換機(jī)的CPU資源,當(dāng)交換機(jī)上連接的用戶較少時(shí)可以使用(例如低于30),如果交換機(jī)連接的用戶數(shù)量較多時(shí),方案(1)比較適合。
4? ? 結(jié)語(yǔ)
接入層交換機(jī)的安全威脅主要是由于ARP協(xié)議和DHCP協(xié)議自身的缺陷造成的,在流量控制的前提下,做好防ARP攻擊尤為重要,防止ARP攻擊的關(guān)鍵在于對(duì)ARP報(bào)文進(jìn)行合法性校驗(yàn)。單一的安全技術(shù)往往無(wú)法解決問(wèn)題,實(shí)際應(yīng)用中往往綜合多種技術(shù)進(jìn)行防范。
在靜態(tài)IP環(huán)境下,用戶接入端口如果不經(jīng)常變動(dòng),可以選擇較為嚴(yán)格的端口安全+ARP報(bào)文校驗(yàn)方案;如果用戶經(jīng)常變動(dòng)接入端口,可以選擇全局地址綁定+ARP報(bào)文校驗(yàn)方案。
在動(dòng)態(tài)IP環(huán)境下,推薦使用DHCP Snooping + IP Source Guard + ARP報(bào)文校驗(yàn)方案,因?yàn)樵摲桨覆幌腃PU資源,能承載更多的用戶數(shù)量。
[參考文獻(xiàn)]
[1]林圣杰.校園網(wǎng)絡(luò)安全接入技術(shù)與應(yīng)用[J].硅谷,2009(11):82-83.
[2]謝希仁.計(jì)算機(jī)網(wǎng)絡(luò)[M].4版.北京:電子工業(yè)出版社,2003.
[3]史壽樂(lè).ARP病毒與校園網(wǎng)絡(luò)安全研究[J].信息安全與技術(shù),2014(9):33-35.
[4]趙罡.簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議的ARP欺騙防御機(jī)制[J].武漢工程大學(xué)學(xué)報(bào),2011(4):103-105.
[5]汪雙頂,余明輝.網(wǎng)絡(luò)組建與維護(hù)技術(shù)[M].2版.北京:人民郵電出版社,2014.
[6]張文庫(kù).企業(yè)網(wǎng)絡(luò)搭建及應(yīng)用(銳捷版)[M].3版.北京:電子工業(yè)出版社,2013.
[7]張文杰.你不可忽視的園區(qū)網(wǎng)ARP安全防護(hù)[EB/OL].(2010-04-03)[2019-05-20].http://www.ruijie.com.cn/fa/xw-hlw/83468.
[8]湯小康.基于DHCP Snooping技術(shù)的校園網(wǎng)非法DHCP服務(wù)器的接入[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2015(7):48-51.