常見的ARP安全隱患和對應(yīng)的預(yù)防方法
1.ARP泛洪攻擊
ARP泛洪攻擊就是攻擊者通過偽造大量源IP地址變化的ARP報文頻繁向網(wǎng)絡(luò)中發(fā)送,使得交換機端口在接收到這些請求包后,頻繁地處理這些ARP報文,占用大量的系統(tǒng)資源和設(shè)備CPU資源。這樣一一來,使設(shè)備的ARP表溢出(超出所能存儲的容量范圍),合法用戶的ARP報文就不能生成有效的ARP表項,導(dǎo)致正常通信中斷。另外,通過向設(shè)備發(fā)送大量目標(biāo)IP地址不能解析的IP報文,使設(shè)備反復(fù)地對目標(biāo)IP地址進(jìn)行解析,導(dǎo)致CPU負(fù)荷過重,也是泛洪攻擊的一種。
在H3C設(shè)備中,可以通過限制VLAN中學(xué)習(xí)到的ARP表項數(shù)量來預(yù)防ARP泛洪攻擊。ARP報文限速功能來預(yù)防ARP泛洪攻擊。在設(shè)備的指定VLAN接口,配置允許學(xué)習(xí)動態(tài)ARP表項的最大個數(shù)。當(dāng)該VLAN接口動態(tài)學(xué)習(xí)到的ARP表項超過限定的最大值后,將不進(jìn)行動態(tài)地址表項的學(xué)習(xí),從而防止某一VLAN內(nèi)的惡意用戶發(fā)動ARP泛洪攻擊造成的危害。
2. “中間人攻擊”
按照ARP協(xié)議的設(shè)計,一個主機即使收到的ARP應(yīng)答并非自身請求得到的,也會將其IP地址和MAC地址的對應(yīng)關(guān)系添加到自身的ARP映射表中。這樣可以減少網(wǎng)絡(luò)上過多的ARP數(shù)據(jù)通信,但也為“ARP 欺騙”創(chuàng)造了條件。
如圖17-1所示,Host A和Host C通過Switch進(jìn)行通信。此時,如果有黑客(Host B)想探聽Host A和Host C之間的通信,它可以分別給這兩臺主機發(fā)送偽造的ARP應(yīng)答報文,使Host A和Host C用MAC_B更新自身ARP映射表中與對方IP地址相應(yīng)的表項。此后,Host A 和Host C之間看似“直接”的通信,實際上都是通過黑客所在的主機間接進(jìn)行的,即Host B擔(dān)當(dāng)了“中間人”的角色,可以對信息進(jìn)行了竊取和篡改。這種攻擊方式就稱作“中間人(Man-In-The-Middle)攻擊。
為了防止黑客或攻擊者通過ARP報文實施“中間人”攻擊,在一些H3C交換機中(如S3100、S5600系列等)支持ARP入侵檢測功能。啟用了ARP入侵檢測功能后,對于ARP信任端口,不進(jìn)行用戶合法性檢查;對于ARP非信任端口,需要進(jìn)行用戶合法性檢查,以防止仿冒用戶的攻擊。
用戶合法性檢查是根據(jù)ARP報文中源IP地址和源MAC地址檢查用戶是否是所屬VLAN所在端口上的合法用戶,包括基于IP Source Guard靜態(tài)綁定表項的檢查、基于DHCP Snooping安全表項的檢查、基于802.1X安全表項的檢查和OUI MAC地址的檢查。
首先進(jìn)行基于IP Source Guard靜態(tài)綁定表項檢查。如果找到了對應(yīng)源IP地址和源MAC地址的靜態(tài)綁定表項,認(rèn)為該ARP報文合法,進(jìn)行轉(zhuǎn)發(fā)。如果找到了對應(yīng)源IP地址的靜態(tài)綁定表項但源MAC地址不符,認(rèn)為該ARP報文非法,進(jìn)行丟棄。如果沒有找到對應(yīng)源IP地址的靜態(tài)綁定表項,繼續(xù)進(jìn)行DHCP Snooping安全表項、802.1X安全表項和MAC地址檢查。
在基于IP Source Guard靜態(tài)綁定表項檢查之后進(jìn)行基于DHCP Snooping安全表項、802.1X安全表項和MAC地址檢查,只要符合三者中任何一個,就認(rèn)為該ARP報文合法,進(jìn)行轉(zhuǎn)發(fā)。其中,MAC地址檢查指的是,只要ARP報文的源MAC地址為MAC地址,并且使能了Voice VLAN功能,就認(rèn)為是合法報文,檢查通過。
如果所有檢查都沒有找到匹配的表項,則認(rèn)為是非法報文,直接丟棄。
開啟ARP入侵檢測功能以后,用戶可以通過配置ARP嚴(yán)格轉(zhuǎn)發(fā)功能,使從指定VLAN的非信任端口上接收的合法ARP請求報文只能通過已配置的信任端口進(jìn)行轉(zhuǎn)發(fā);而從非信任端口上接收的合法ARP應(yīng)答報文,首先按照報文中的目的MAC地址進(jìn)行轉(zhuǎn)發(fā),若目的MAC地址不在MAC地址表中,則將此ARP應(yīng)答報文通過信任端口進(jìn)行轉(zhuǎn)發(fā)。
但是開啟了ARP入侵檢測功能后,需要將ARP報文上送到CPU處理,如果攻擊者惡意構(gòu)造大量ARP報文發(fā)往交換機的某一端口,會導(dǎo)致CPU負(fù)擔(dān)過重,從而造成其他功能無法正常運行甚至設(shè)備癱瘓。于是H3C又有另一種配合的解決方案,就是在端口上配置ARP報文限速功能。開啟某個端口的ARP報文限速功能后,交換機對每秒內(nèi)該端口接收的ARP報文數(shù)量進(jìn)行統(tǒng)計,如果每秒收到的ARP報文數(shù)量超過設(shè)定值,則認(rèn)為該端口處于超速狀態(tài)(即受到ARP報文攻擊)。此時,交換機將關(guān)閉該端口,使其不再接收任何報文,從而避免大量ARP報文攻擊設(shè)備。同時,設(shè)備支持配置端口狀態(tài)自動恢復(fù)功能,對于配置了ARP限速功能的端口,在其因超速而被交換機關(guān)閉后,經(jīng)過一段時間可以自動恢復(fù)為開啟狀態(tài)。
3. 仿冒網(wǎng)關(guān)攻擊
按照ARP協(xié)議的設(shè)計,網(wǎng)絡(luò)設(shè)備收到目的IP地址是本接口IP地址的ARP報文(無論此ARP報文是否為自身請求得到的),都會將其IP地址和MAC地址的對應(yīng)關(guān)系添加到自身的ARP映射表中。這樣可以減少網(wǎng)絡(luò)上過多的ARP數(shù)據(jù)通信,但也為“ARP欺騙”創(chuàng)造了條件。
實際網(wǎng)絡(luò)環(huán)境,特別是校園網(wǎng)中,最常見的ARP攻擊方式是“仿冒網(wǎng)關(guān)”攻擊。即:攻擊者偽造ARP報文,發(fā)送源IP地址為網(wǎng)關(guān)IP地址,源MAC地址為偽造的MAC地址的ARP報文給被攻擊的主機,使這些主機更新自身ARP表中網(wǎng)關(guān)IP地址與MAC地址的對應(yīng)關(guān)系。這樣一來,主機訪問網(wǎng)關(guān)的流量,被重定向到一個錯誤的MAC地址,導(dǎo)致該用戶無法正常訪問外網(wǎng)。
如圖17-2所示,因為主機A仿冒網(wǎng)關(guān)向主機B發(fā)送了偽造的網(wǎng)關(guān)ARP報文,導(dǎo)致主機B的ARP表中記錄了錯誤的網(wǎng)關(guān)地址映射關(guān)系(本來正確的MAC地址應(yīng)該是1-1-1,現(xiàn)在卻被更新為2-2-2),這樣主機在上網(wǎng)時發(fā)送給網(wǎng)關(guān)報文時會錯誤地發(fā)送到仿冒的網(wǎng)關(guān)中,從而正常的數(shù)據(jù)不能被網(wǎng)關(guān)接收,造成所有更新了錯誤的網(wǎng)關(guān)ARP表項的用戶主機都上不了網(wǎng)。
圖17-2 仿冒網(wǎng)關(guān)攻擊示意圖
仿冒網(wǎng)關(guān)攻擊是一種比較常見的攻擊方式,如果攻擊源發(fā)送的是廣播ARP報文,或者根據(jù)其自身所掌握的局域網(wǎng)內(nèi)主機的信息依次地發(fā)送攻擊報文,就可能會導(dǎo)致整個局域網(wǎng)通信的中斷,是ARP攻擊中影響較為嚴(yán)重的一種。
為了防御“仿冒網(wǎng)關(guān)”的ARP攻擊,在一些H3C交換機中(如S3100、S5600等系列)中提供了基于網(wǎng)關(guān)IP/MAC的ARP報文過濾功能。為防御交換機下行端口(下行端口通常是直接連接用戶的)可能收到的源IP地址為網(wǎng)關(guān)IP地址的ARP攻擊報文,可將接入交換機下行端口和網(wǎng)關(guān)IP進(jìn)行綁定。綁定后,該端口接收的源IP地址為網(wǎng)關(guān)IP地址的ARP報文將被丟棄,其他ARP報文允許通過。為防御交換機上行端口(通常是直接連接網(wǎng)關(guān)設(shè)備的)可能收到的源IP地址為網(wǎng)關(guān)IP地址,源MAC地址為偽造的MAC地址的ARP攻擊報文,可將接入交換機級聯(lián)端口或上行端口和網(wǎng)關(guān)IP地址、網(wǎng)關(guān)MAC地址進(jìn)行綁定。綁定后,該端口接收的源IP地址為指定的網(wǎng)關(guān)IP地址,源MAC地址為非指定的網(wǎng)關(guān)MAC地址的ARP報文將被丟棄,其他ARP報文允許通過。這樣一來,這些仿冒網(wǎng)關(guān)的ARP報文就不起作用了。
【注意】ARP信任端口功能比端口支持基于網(wǎng)關(guān)IP/MAC的ARP報文過濾功能的優(yōu)先級高,即:如果接入交換機級聯(lián)端口或上行端口被配置為ARP信任端口,則該端口上對于網(wǎng)關(guān)IP地址、網(wǎng)關(guān)MAC地址的綁定不生效
4. 欺騙網(wǎng)關(guān)攻擊
惡意用戶可能通過工具軟件,發(fā)送偽造網(wǎng)絡(luò)中其他設(shè)備(或主機)的源IP或源MAC地址的ARP報文,從而導(dǎo)致途徑網(wǎng)絡(luò)設(shè)備上的ARP表項刷新到錯誤的端口上,導(dǎo)致正常主機的網(wǎng)絡(luò)流量中斷。
主機A以主機B的IP地址(10.10.01.3)為源IP地址和仿冒的MAC地址(5-5-5)為源MAC地址冒充主機B向網(wǎng)關(guān)發(fā)送了偽造的主機B的ARP報文,導(dǎo)致網(wǎng)關(guān)中關(guān)于主機B的ARP表中記錄了錯誤的主機B地址映射關(guān)系,這來來自互聯(lián)網(wǎng)發(fā)往主機B的的數(shù)據(jù)包就不能正確地被主機B接收。
為了防御這一類ARP攻擊,H3C的一些交換機(如S3100、S5600系列)中提供了ARP報文源MAC一致性檢查功能。通過檢查ARP報文中的源MAC地址和以太網(wǎng)報文頭中的源MAC地址是否一致,來校驗其是否為偽造的ARP報文。如果一致,則該ARP報文通過一致性檢查,交換機進(jìn)行正常的表項學(xué)習(xí);如果不一致,則認(rèn)為該ARP報文是偽造報文,交換機不學(xué)習(xí)動態(tài)ARP表項的學(xué)習(xí),也不根據(jù)該報文刷新ARP表項。
5. 欺騙其他用戶攻擊
這種攻擊方式與上面介紹的欺騙網(wǎng)關(guān)攻擊一樣,只不過,這里攻擊者的仿冒報文不是發(fā)送給風(fēng)關(guān),而是發(fā)送給其他用戶主機。如圖17-4所示,主機A以主機B的IP地址(10.10.10.3)為源IP地址,仿冒的MAC地址(5-5-5)向主機C發(fā)送了偽造的主機B的ARP報文,導(dǎo)致主機C的ARP表中記錄了錯誤的主機B地址映射關(guān)系,從而導(dǎo)致主機C發(fā)送給主機BR 正常的數(shù)據(jù)報文不能正確地被主機B接收。
防止欺騙其他用戶的攻擊方法也是采用前面介紹的ARP報文源MAC一致性檢查功能,不再贅述。,
通常需要配置以上所介紹的ARP攻擊防御功能的設(shè)備如下所示:
l 配置VLAN接口學(xué)習(xí)動態(tài)ARP表項的最大數(shù)目:網(wǎng)關(guān)設(shè)備
l 配置ARP報文源MAC一致性檢查功能:網(wǎng)關(guān)設(shè)備、接入設(shè)備
l 配置基于網(wǎng)關(guān)IP/MAC的ARP報文過濾功能:接入設(shè)備
l 配置ARP入侵檢測功能:網(wǎng)關(guān)設(shè)備、接入設(shè)備
l 配置ARP報文限速功能:網(wǎng)關(guān)設(shè)備、接入設(shè)備
億恩科技地址(ADD):鄭州市黃河路129號天一大廈608室 郵編(ZIP):450008 傳真(FAX):0371-60123888
聯(lián)系:億恩小凡
QQ:89317007
電話:0371-63322206
本文出自:億恩科技【mszdt.com】
服務(wù)器租用/服務(wù)器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM]
|