張廣瑞
[摘 要] 隨著信息技術(shù)的飛速發(fā)展,ARP攻擊逐漸成為威脅計算機網(wǎng)絡安全的“兇手”之一,它常常偽造MAC地址,對計算機網(wǎng)絡加以侵害,使單位或個人遭受巨大經(jīng)濟損失。為保障計算機網(wǎng)絡的安全、穩(wěn)定、高效,我們要對ARP攻擊進行技術(shù)上的防范;要保證技術(shù)防范措施的科學、合理、有效,就要對ARP攻擊本身有系統(tǒng)詳細的了解。
[關(guān)鍵詞] ARP協(xié)議;工作原理;漏洞分析;防范
[中圖分類號] TP393.0 [文獻標識碼] A [文章編號] 1673 - 0194(2014)19- 0050- 02
1 ARP協(xié)議簡介
1.1 ARP協(xié)議
地址解析協(xié)議(Address Resolution Protocol,ARP)是工作在OSI模型數(shù)據(jù)鏈路層中的一個協(xié)議。在本層與硬件接口聯(lián)系,同時對上層提供服務。主要工作是將網(wǎng)絡層地址解析為數(shù)據(jù)鏈路層的物理地址。
在以太網(wǎng)中,數(shù)據(jù)包被發(fā)送之前,首先要進行數(shù)據(jù)包拆分、封裝,將數(shù)據(jù)包轉(zhuǎn)換成比特流,最后通過物理層設備進行傳輸。數(shù)據(jù)包到達目標設備或主機后再執(zhí)行與發(fā)送方相反的過程,即把比特流轉(zhuǎn)變成幀,解封裝。如果發(fā)送方與接收方處于同一個網(wǎng)絡中,則下一跳的MAC地址就是目標的MAC地址;如果發(fā)送方和接收方不在同一個網(wǎng)絡內(nèi),則下一跳的MAC地址就是網(wǎng)關(guān)的MAC地址。通過這個過程我們不難發(fā)現(xiàn),在以太網(wǎng)中數(shù)據(jù)的傳輸僅知道目標的IP地址是不夠的,還需要知道下一跳的MAC地址,這個在網(wǎng)絡通訊中至關(guān)重要的地址轉(zhuǎn)換或者說地址解析就是由ARP協(xié)議來完成的。
1.2 ARP工作原理
以主機A(10.70.1.2)向主機B(10.70.1.3)發(fā)送數(shù)據(jù)為例。當發(fā)送數(shù)據(jù)時,主機A會在自己的ARP緩存表中尋找是否有目標IP地址。如果找到了,也就知道了目標的MAC地址,直接把目標的MAC地址寫入幀里面發(fā)送就可以了;如果在ARP緩存表里面沒有目標的IP地址,主機A就會在網(wǎng)絡上發(fā)送一個廣播,目標MAC地址是“ff-ff-ff-ff-ff-ff”,這表示向同一網(wǎng)段的所有主機發(fā)出這樣的詢問:“10.70.1.3的MAC地址是什么呀?”網(wǎng)絡上的其他主機并不回應這一詢問,只有主機B接收到這個幀時才向A作出回應:“10.70.1.3的MAC地址是03-03-03-03-03-03”這樣,主機A就知道了主機B的MAC地址,就可以向主機B發(fā)送信息了。同時,它還更新了自己的ARP緩存表,下次再向B發(fā)送數(shù)據(jù)時,直接在ARP緩存表中找就可以了。
2 ARP欺騙分析
2.1 ARP欺騙原理
局域網(wǎng)內(nèi)數(shù)據(jù)包傳輸依靠的是MAC地址,IP地址與MAC對應的關(guān)系依靠ARP表,每臺主機都有一個ARP緩存表。在正常情況下這個緩存表能夠有效保證數(shù)據(jù)傳輸?shù)囊灰粚5茿RP協(xié)議的實現(xiàn)機制中存在缺陷,它是沒有身份驗證機制的。當主機收到一個ARP的應答包后,不論是否正確,都會直接把原有的ARP緩存表里的相應信息以應答包里的MAC-IP替換掉。
2.2 ARP欺騙的方式
ARP欺騙主要包括以下3種方式:
(1)中間人欺騙攻擊,攻擊者將自己的主機插入兩個目標主機通信路徑之間,使他的主機如同兩個目標主機通信路徑上的一個中繼,這樣攻擊者就可以監(jiān)聽兩個目標主機之間的通信,甚至篡改通信的內(nèi)容。
(2)拒絕服務式欺騙攻擊,就是使主機不能響應外界請求,從而不能對外提供服務的攻擊方法。如果攻擊者將目標主機ARP緩存中的MAC地址全部改為根本就不存在的地址,會使目標主機向外發(fā)送的所有以太網(wǎng)數(shù)據(jù)幀丟失,這樣上層應用忙于處理這種異常而無法響應外來請求,導致目標主機產(chǎn)生拒絕服務。
(3)克隆欺騙攻擊,攻擊者首先對目標主機實施拒絕服務攻擊,使其不能對外界作出任何反應。然后發(fā)動攻擊就可以將自己的IP與MAC地址分別改為目標主機的IP與MAC地址,這樣攻擊者的主機變成了與目標主機一樣的“克隆”。
2.3 ARP欺騙的危害
ARP欺騙可以造成內(nèi)部網(wǎng)絡的混亂,只要感染一臺電腦,就可能導致整個網(wǎng)絡通訊中斷,嚴重的甚至可能導致整個網(wǎng)絡癱瘓。網(wǎng)內(nèi)某臺機器感染ARP病毒后,會出現(xiàn)頻繁斷網(wǎng),找不到網(wǎng)關(guān)服務器,IE瀏覽器頻繁出錯,以及一些常用軟件出現(xiàn)故障等現(xiàn)象;ARP病毒還會竊取用戶密碼。如盜取QQ密碼、盜取各種網(wǎng)絡游戲密碼和賬號去做金錢交易,盜竊網(wǎng)上銀行賬號進行非法交易活動等。
2.4 ARP欺騙的防范措施
(1)靜態(tài)IP地址與MAC地址綁定,在網(wǎng)內(nèi)把主機和網(wǎng)關(guān)都做IP和MAC綁定。ARP欺騙通過ARP的動態(tài)實時的規(guī)則欺騙內(nèi)網(wǎng)機器,所以可以將主機IP地址設為靜態(tài)地址,并進行綁定。在網(wǎng)關(guān)也進行IP和MAC的靜態(tài)綁定,只有采取雙向綁定才比較保險。
(2)采用劃分VLAN技術(shù),通過細化VLAN來抑制ARP請求包的廣播域。如果某一主機要發(fā)送ARP請求包,只有同一VLAN段的主機才能收到該請求包,這種方法可以有效限制ARP欺騙攻擊的范圍。
(3)使用防護軟件,常見的是ARP防火墻,它通常在路由器中將IP-MAC地址進行綁定,或者利用NAT(地址轉(zhuǎn)換協(xié)議)重新指定網(wǎng)絡中主機互相找到對方的方式。ARP防火墻通常也具有網(wǎng)關(guān)的ARP廣播機制,它以一定的頻次,向內(nèi)網(wǎng)公布正確的網(wǎng)關(guān)地址,能在一定程度上維持網(wǎng)絡的運行,避免災難性后果,贏取系統(tǒng)修復的時間。
(4)使用ARP服務器,在局域網(wǎng)中,指定一臺計算機作為專門的ARP服務器,可信范圍內(nèi)所有主機的IP與MAC地址映射記錄都在ARP服務器上進行保存和記錄,使所有主機的ARP配置只能接受來自服務器的ARP響應。當有ARP請求時,該服務器通過查閱自己緩存的靜態(tài)記錄核對目標主機的MAC地址是否正確,并以被查詢主機的名義響應ARP局域網(wǎng)內(nèi)部的請求,從而防止ARP欺騙攻擊的發(fā)生。
3 結(jié)束語
隨著網(wǎng)絡技術(shù)的升級,對于ARP攻擊的預防與維護手段也將逐步升級,但對于病毒的傳播與變異也提供了相當好的發(fā)展平臺。我們不能只依靠單一的技術(shù)手段來預防和維護,只有在不同的環(huán)境中運用不同的技術(shù)才能將病毒的危害降到最低,這樣才能有效預防病毒的傳播。
主要參考文獻
[1]王奇.以太網(wǎng)中ARP欺騙原理與解決辦法[J].網(wǎng)絡安全技術(shù)與應用,2007(2).
[2]吳蓓. 淺論ARP攻擊的原理與防范方式[J]. 科協(xié)論壇:下半月,2010(9).
[3]楊靜. 通過自助雙向綁定方案實現(xiàn)ARP攻擊防御的研究[J]. 電腦知識與技術(shù),2010,6(35).
[4]阮清強. ARP檢測與定位方法研究[J].信息網(wǎng)絡安全,2010(4).