吳暑靜
(湖南科技學(xué)院 圖書(shū)館,湖南 永州 425100)
電子閱覽室ARP欺騙及防范
吳暑靜
(湖南科技學(xué)院 圖書(shū)館,湖南 永州 425100)
ARP欺騙、ARP攻擊給局域網(wǎng)內(nèi)的數(shù)據(jù)通訊安全造成了巨大威脅。文章闡述了ARP協(xié)議工作原理、ARP協(xié)議的缺陷以及ARP欺騙的過(guò)程,并有針對(duì)性地提出了幾種有效的防范措施。
電子閱覽室;ARP協(xié)議;ARP欺騙
從湖南科技學(xué)院圖書(shū)館電子閱覽室投入使用以來(lái),ARP攻擊成為困擾我們網(wǎng)管人員的頭號(hào)難題。由ARP攻擊引起的IP地址沖突、網(wǎng)絡(luò)掉線、網(wǎng)絡(luò)癱瘓等網(wǎng)絡(luò)故障嚴(yán)重影響了網(wǎng)絡(luò)的正常使用,給學(xué)生們的網(wǎng)絡(luò)數(shù)據(jù)信息帶來(lái)了巨大安全隱患。本文從ARP協(xié)議工作原理入手,闡述了ARP協(xié)議先天的缺陷以及ARP攻擊發(fā)生的過(guò)程,并有針對(duì)性提出了幾種ARP攻擊的防范措施。1
在Internet通信中,網(wǎng)絡(luò)層及上層用戶使用32位的IP地址,而下層物理網(wǎng)絡(luò)使用的是在以太網(wǎng)和令牌環(huán)協(xié)議中的48位MAC地址。通信過(guò)程中,在已知對(duì)方IP地址情況下,需要確定該IP地址對(duì)應(yīng)的MAC地址,這就需要通過(guò)地址解析協(xié)議(Address Resolution Protocol,ARP)來(lái)解決,以實(shí)現(xiàn)地址轉(zhuǎn)換。
計(jì)算機(jī)中都維護(hù)著一個(gè)ARP高速緩存,并且這個(gè)ARP高速緩存是隨著計(jì)算機(jī)不斷地發(fā)出 ARP_Request和收到ARP_Reply而不斷更新的。ARP高速緩存的目的是把機(jī)器的IP地址和MAC地址相互映射。通信時(shí),計(jì)算機(jī)會(huì)對(duì)本地網(wǎng)絡(luò)上的機(jī)器進(jìn)行查詢,以了解它們的MAC地址。并在它的ARP高速緩存中保存其它機(jī)器IP與MAC地址的對(duì)應(yīng)關(guān)系。每當(dāng)發(fā)送方需要與其他主機(jī)進(jìn)行通信時(shí),首先要查詢自己的ARP高速緩存,以了解緩存中是否存在接收方的IP地址。如果存在這個(gè)IP地址,便使用它對(duì)應(yīng)的MAC地址,直接將分組發(fā)送到接收方的物理網(wǎng)卡。如果沒(méi)有該IP地址,那么發(fā)送方 ARP便在本地網(wǎng)絡(luò)上發(fā)出一個(gè)“ARP廣播-Request”。ARP_Request中包括了接收方的IP地址。LAN上的每一臺(tái)主機(jī)均要查看這個(gè)ARP_Request中包含的IP地址。如果LAN中某一臺(tái)主機(jī)的IP地址與此IP地址相一致,那么該主機(jī)便生成一個(gè)“ARP單播-Reply”,其中包含該主機(jī)的IP地址和MAC地址。然后發(fā)送方ARP將該IP與MAC地址對(duì)添加到它的高速緩存中,這時(shí)IP便可繼續(xù)將它的分組直接發(fā)送到接收方的網(wǎng)卡[1]P358-359。
圖1顯示了一個(gè)簡(jiǎn)化的ARP動(dòng)態(tài)映射示例[2]P22-23。假設(shè)主機(jī)或路由器都稱為機(jī)器。通過(guò)廣播一個(gè) ARP_Request,一個(gè)機(jī)器可以找到另一個(gè)機(jī)器的MAC地址。該Request含有指定機(jī)器的IP地址,MAC地址需要這個(gè)IP地址。網(wǎng)絡(luò)中的所有機(jī)器(M1,M2,M3…)都將接收到這個(gè)ARP_Request。如果該Request含有M2機(jī)器的IP地址,那么M2通過(guò)發(fā)送一個(gè)含有所請(qǐng)求的MAC地址的Reply來(lái)進(jìn)行響應(yīng)。
ARP協(xié)議的安全問(wèn)題是指由于ARP協(xié)議在設(shè)計(jì)和實(shí)現(xiàn)上存在漏洞,從而導(dǎo)致系統(tǒng)的不安全性。其漏洞主要有以下兩點(diǎn):
第一,在每臺(tái)主機(jī)的內(nèi)存中,都有一個(gè)ARP緩存表,保存最近獲得的IP與MAC地址對(duì)應(yīng)。ARP表通常是動(dòng)態(tài)更新的,默認(rèn)情況下,當(dāng)其中的緩存項(xiàng)超過(guò)兩分鐘沒(méi)有活動(dòng)時(shí),就會(huì)因超時(shí)而被刪除。當(dāng)一臺(tái)主機(jī)的IP地址映像在另一臺(tái)主機(jī)的ARP高速緩存中后,它就會(huì)被當(dāng)成是可信任的計(jì)算機(jī)。而該主機(jī)并沒(méi)有提供校驗(yàn)IP到MAC地址對(duì)應(yīng)表真實(shí)性的機(jī)制,使得大多數(shù)主機(jī)保存了通過(guò)ARP協(xié)議得到的映射,卻不考慮它的真實(shí)性、有效性、也不維護(hù)一致性,這是ARP協(xié)議的漏洞之一[3]。
圖1 ARP動(dòng)態(tài)映射
第二,ARP協(xié)議是無(wú)狀態(tài)的,協(xié)議沒(méi)有規(guī)定一定要等ARP_Request出現(xiàn)才能發(fā)送 ARP_Reply,也沒(méi)有規(guī)定一定要發(fā)送過(guò)ARP_Request才能接收ARP_Reply。由于ARP協(xié)議工作在局域網(wǎng)內(nèi)部,為提高傳輸效率,任何主機(jī)即使在沒(méi)有發(fā)出 ARP_Request的時(shí)候也可以接受 ARP_Reply,任何ARP_Reply都是合法的,ARP_ Reply無(wú)需認(rèn)證。而且許多系統(tǒng)會(huì)接受沒(méi)有經(jīng)過(guò)請(qǐng)求的 ARP_Reply,并用其信息更新ARP緩存。這是ARP協(xié)議的另一個(gè)漏洞。
ARP欺騙是計(jì)算機(jī)網(wǎng)絡(luò)安全的重大隱患,了解ARP欺騙、攻擊的原理是對(duì)其進(jìn)行防范的前提。假設(shè)有這樣一個(gè)網(wǎng)絡(luò),一個(gè)三層交換機(jī)上接了3臺(tái)主機(jī),他們的IP地址和MAC地址如下:
主機(jī)A:IP地址172.0.0.1 MAC地址是aa-aa-aa-aa-aa-aa主機(jī)B:IP地址172.0.0.2 MAC地址是bb-bb-bb-bb-bb-bb主機(jī)C:IP地址172.0.0.3 MAC地址是cc-cc-cc-cc-cc-cc
假設(shè),主機(jī)B向主機(jī)C傳送數(shù)據(jù)包,此時(shí),主機(jī)B會(huì)查詢自身ARP緩存表中是否有主機(jī)C的IP及MAC地址的信息。有,就直接發(fā)送。如果沒(méi)有,主機(jī)B會(huì)發(fā)出“ARP廣播-Request”,問(wèn): “我的 IP 是 172.0.0.2,MAC 為bb-bb-bb-bb-bb-bb,請(qǐng)問(wèn)172.0.0.3的主機(jī)的MAC地址是多少?”局域網(wǎng)中的主機(jī)A和C都能接收到這個(gè)廣播包,并分別查詢自身的ARP緩存表,正常情況下只有主機(jī)C會(huì)做出回答,告訴對(duì)方自身的MAC地址。此時(shí),主機(jī)B會(huì)將主機(jī)C的IP及對(duì)應(yīng)的MAC保存到自身的ARP緩存表中,記錄是: “172.0.0.3---cc-cc-cc-cc-cc-cc”。這樣下次主機(jī)B發(fā)送數(shù)據(jù)給主機(jī)C,就可以直接發(fā)送了。
從ARP協(xié)議缺陷中可以看出,上面這種通訊是建立在信任的基礎(chǔ)上。假如主機(jī) B發(fā)出“ARP廣播-Request”詢問(wèn)172.0.0.3的物理地址時(shí),主機(jī) A也回應(yīng):“我的 IP是172.0.0.3,MAC地址是 aa-aa-aa-aa-aa-aa”,這時(shí),主機(jī) A假冒了主機(jī)C的IP地址,物理地址卻使用自己的MAC地址。主機(jī)B中的ARP緩存表中本來(lái)保存著正確的記錄,但由于主機(jī)A不斷地發(fā)出這樣的應(yīng)答數(shù)據(jù)包,導(dǎo)致主機(jī)B動(dòng)態(tài)更新了自身的ARP高速緩存表,使得保存的IP--MAC地址對(duì)變成:“ 172.0.0.3---aa-aa-aa-aa-aa-aa”。以后主機(jī)B發(fā)送給172.0.0.3主機(jī)(C)的數(shù)據(jù),也會(huì)發(fā)送給主機(jī)A。也就是說(shuō)主機(jī)A劫持了主機(jī)C的數(shù)據(jù),這就是ARP病毒的攻擊欺騙過(guò)程[4]。
還有一種可能,如果主機(jī) A冒充網(wǎng)關(guān),那么網(wǎng)絡(luò)中要發(fā)送到網(wǎng)關(guān)的數(shù)據(jù),都會(huì)發(fā)送給主機(jī)A,這樣主機(jī)A轉(zhuǎn)變?yōu)閮?nèi)網(wǎng)代理服務(wù)器,將會(huì)監(jiān)聽(tīng)整個(gè)局域網(wǎng)發(fā)送給互聯(lián)網(wǎng)的數(shù)據(jù)包,從而產(chǎn)生網(wǎng)絡(luò)重名、掉線、網(wǎng)絡(luò)阻塞等現(xiàn)象,這是其他網(wǎng)絡(luò)攻擊的前奏。同理,如果成功冒充一臺(tái)路由器,那么入侵者就可以輕易地冒充這個(gè)局域網(wǎng)的機(jī)器去欺騙整個(gè)Internet中的任意一臺(tái)機(jī)器了。
1.安裝ARP防火墻,一般比較常用的ARP工具主要是欣向ARP工具,彩影Antiarp防火墻及360arp防火墻等。我館電子閱覽室用的是彩影Antiarp防火墻,它有如下主要功能:在系統(tǒng)內(nèi)核層攔截外部虛假ARP數(shù)據(jù)包;在系統(tǒng)內(nèi)核層攔截本機(jī)對(duì)外的ARP攻擊數(shù)據(jù)包;攔截IP沖突;DoS攻擊抑制等。很好地保障系統(tǒng)不受ARP欺騙、ARP攻擊影響,保持網(wǎng)絡(luò)暢通及通訊安全。
2.在用戶端計(jì)算機(jī)上綁定交換機(jī)網(wǎng)關(guān)的IP地址和MAC地址。首先用戶要獲得網(wǎng)關(guān)的IP地址和MAC地址。在DOS提示符下先運(yùn)行“arp -d”,清除本機(jī)的ARP緩存表,然后用命令“arp -s IP地址 MAC地址”(如:arp -s 172.17.5.1 00-04-96-1f-e0-c0)將網(wǎng)關(guān)的IP地址和MAC地址綁定。
3.在核心交換機(jī)上綁定用戶主機(jī)的IP地址和MAC地址,同時(shí)在接入層交換機(jī)上將用戶網(wǎng)卡的MAC地址和接入交換機(jī)端口綁定為雙重安全綁定方式。
4.利用VLAN技術(shù)。ARP應(yīng)答包通常情況下不會(huì)路由的,因此,采用VLAN技術(shù)將入侵者可能訪問(wèn)到的子網(wǎng)與其他網(wǎng)絡(luò)分隔開(kāi)來(lái)是一種很有用的安全途徑??梢杂行У馗綦x廣播報(bào)文,大大減少ARP病毒的傳播范圍和傳播速度,同時(shí)也減輕了交換機(jī)的流量負(fù)荷,減少?gòu)V播風(fēng)暴出現(xiàn)的幾率。
5.使用ARP服務(wù)器[5]P250。在網(wǎng)絡(luò)中配置一臺(tái)ARP服務(wù)器,ARP服務(wù)器中保存了網(wǎng)絡(luò)中所有設(shè)備的IP地址與硬件地址的對(duì)應(yīng)記錄。將網(wǎng)絡(luò)上的其他計(jì)算機(jī)配置成只接收來(lái)自 ARP服務(wù)器的 ARP_Reply,而不理會(huì)來(lái)自其他來(lái)源的ARP_Reply。
[1]高傳善.數(shù)據(jù)通信與計(jì)算機(jī)網(wǎng)絡(luò)[M].北京:高等教育出版社,2004.
[2]Man Young Rhee.網(wǎng)絡(luò)安全-加密原理、算法與協(xié)議[M].北京:清華大學(xué)出版社,2007.
[3]鄒麗霞.ARP協(xié)議漏洞攻擊實(shí)現(xiàn)與防范[J].內(nèi)江科技,2008,(11).
[4].彭騰.ARP病毒攻擊原理及防范方法[J].電腦知識(shí)與技術(shù),2008,(S2).
[5]黃志洪.現(xiàn)代計(jì)算機(jī)信息安全技術(shù)[M].北京:冶金工業(yè)出版社,2004.
E-Reading Room ARP spoof and preventive measures
WU Shu-jing
(Hunan University of Science and Engineering Library,Yongzhou Hunan 425100,China)
ARP spoof and ARP attack caused a tremendous threat to the security of data communication in the LAN. This paper describes the working principle of the ARP protocol, ARP protocol flaws, as well as the process of ARP spoofing,and puts forward several targeted and effective preventive measures.
E-Reading Room;ARP;ARP spoof
G251
A
1673-2219(2009)12-0199-02
2009-09-15
吳暑靜(1983-),湖南岳陽(yáng)人,助理館員,研究方向?yàn)閳D書(shū)館現(xiàn)代技術(shù)。
(責(zé)任編校:何俊華)