摘要:隨著信息時代計算機技術的發展,但由于資源的共享性與多樣性、以及網絡邊界的不可知性等特征,網絡必然存在眾多潛在的安全隱患,利用ARP協議漏洞對網絡進行攻擊就是其中一種重要方式。闡述了ARP協議的工作原理及自身的缺陷,以及ARP欺騙攻擊的形式與防范方法。
關鍵詞:
ARP協議;IP地址;MAC地址;漏洞防范
中圖分類號:TP
文獻標識碼:A
文章編號:1672-3198(2010)16-0308-02
1 ARP協議及其工作原理
ARP協議(Address Resolution Protocol)即地址解析協議,位于TCP / IP模型的網絡層,負責將網絡層的IP 地址轉換成數據鏈路層的物理地址,以保證數據的順利傳輸。在TCP/IP 協議中,計算機之間的通信是通過網絡層的IP地址進行的,每一個網絡結點是用IP地址(邏輯地址)標識的,任何接入Internet 的主機都有一個唯一的IP地址作為標識,由網絡ID和網絡內主機ID共32 位二進制數組成,用于在網絡層標識和查找計算機,它由用戶手工分配或從DHCP服務器自動獲得;而在以太網中數據包則采用數據鏈路層中的MAC地址(物理地址)進行尋址,MAC地址由48 位二進制數組成,用于標識和查找計算機,它在產品出廠時即被固化存儲在網卡中,因此在全球都是唯一且不可改變的。因此,必須建立IP地址與MAC 地址之間的對應(映射)關系,必須把IP目的地址轉換成MAC地址。對于局域網而言ARP協議是網絡正常通信的基礎。為了查找與目的主機IP地址相對應的MAC地址,源主機會以廣播的形式在以太網內發送一個ARP請求數據幀,這個過程稱作ARP廣播。而在接收到ARP廣播的所有計算機中,只有與數據幀中的目的MAC地址相同的主機接收該數據幀并向源主機回送一個包含其MAC地址的ARP應答,這樣一次正常的IP地址向MAC地址解析過程就完成了。每臺安裝有TCP/ IP協議的電腦里都有一個ARP緩存表,表中的IP地址與MAC地址一一對應,存放了自主機啟動以來所有的IP地址與MAC地址之間的映射記錄。為了盡量減少網絡中ARP廣播請求的次數,主機每隔一定時間都會用對ARP緩存進行更新,加快查詢的速度。
2 ARP協議的漏洞
由于ARP 協議的設計初衷是在網絡絕對安全的情況下進行方便的數據傳輸,因此不可避免也存在著安全缺陷,它不檢查是否發過請求包或接收的應答是否合法,只要收到目標MAC 是自己的ARP 響應數據包或廣播包都會接受并緩存,而不提供檢驗IP 地址到MAC 地址對應表真實性的機制, 使得大多數主機保存了通過ARP協議得到的映射,因此ARP 協議可能把幾個IP 地址映射到同一物理地址上;同時由于缺乏必要的身份認證和鑒別機制,使得ARP協議在使用的過程中存在著盜用IP地址和ARP欺騙等安全漏洞。任何ARP 響應都是合法的,其應答無需認證。而且許多系統接受未請求的ARP 響應并用其信息篡改緩存,這就為ARP 欺騙提供了可能。
ARP 欺騙的核心思想是修改每個系統ARP 表中緩存的MAC 地址與IP 地址映射表項。發送錯誤的ARP 廣播消息給路由器,這些錯誤的ARP 欺騙信息誘騙路由器轉發分組到不正確的交換端口,或者是將以受害系統為目的地的分組發送到攻擊者所在的接口。ARP欺騙原理在以太網中并不存在對報文信息的真實性校驗,ARP 報文也不例外,所以無法識別出偽造的ARP 報文,同時由于沒有請求的ARP 響應報文同樣能夠被系統所接受并刷新目標系統的緩存,而系統在進行ARP 解析之前都是以系統緩存不存在為前提的, 所以當有ARP 響應報文不停地刷新緩存的時候,系統就不會主動地發出ARP 請求,使得對本地ARP 緩存進行欺騙。
針對ARP 協議的攻擊主要有:(1)主機可以發出更改過的ARP 報文,將一個錯誤的MAC 地址強行映射到目的主機的IP 地址,致使系統檢測到兩個不同的MAC 地址對應了一個IP 地址,誤以為網絡中該IP 地址已經被其他主機使用,造成IP地址沖突從而發生網絡中斷。(2)利用ARP 協議的緩存更新不需要驗證的特點,就可以冒用一個合法IP,對同網絡的數據進行嗅探。(3)向路由器惡意灌入大量虛假ARP 表項,造成拒絕服務攻擊,導致通信失敗、耗盡系統資源,使系統性能顯著下降。
3 ARP協議漏洞的防范措施
ARP攻擊是利用網絡協議固有的缺陷,因此防御比較困難。應對繁多的ARP欺騙,必須掌握ARP協議工作原理及必要的防范措施,保證網絡的高效與安全。針對ARP協議漏洞,其攻擊方法最根本的途徑就是利用主機對ARP協議信任機制的缺陷,對目標物理地址進行篡改和控制。因此在防范ARP欺騙攻擊上,必須保證主機的ARP緩沖中的IP 地址與MAC地址映射關系的正確,盡可能阻止非法篡改的ARP緩存就可以避免網絡中的主機受到攻擊。有多種方式可對ARP欺騙進行檢測,如采用相應工具軟件、腳本及通過路由器或交換機的ARP 列表分析等。
可采取以下措施以提高網絡的安全性:(1)ARP 協議攻擊的最根本原理是改變IP 與MAC地址的對應關系。所以可以采取靜態MAC地址表法的方法進行防范。根據ARP 欺騙原理,主要是刷新主機的ARP列表,因此重點應該放在目標主機拒絕偽造的ARP應答上。DHCP本身作用是為主機動態分配IP地址,但是可以通過對DHCP協議加載安全功能,使其只為主機分配靜態IP地址及綁定相應的MAC地址。通過對DHCP的“靜態”分配IP地址和相應的IPMAC地址綁定功能,實現網關可以靜態認定主機IP和MAC地址,杜絕了攻擊機對網關的ARP欺騙。大多數三層交換機都支持這種方法輸入之后不再動態更新,顯然可以避免ARP協議攻擊,但是其缺陷也很明顯,移動或經常變化的網絡環境中,這種手工維護MAC表的方式不適用,而且它也要求網絡硬件支持這種配置方式。(2)使用ARP服務器。通過該服務器查找自己的ARP轉換表來響應其他機器的ARP廣播,在確保該服務器安全前提下,通過該服務器查找自己的ARP轉換表來響應其他機器的ARP 廣播,其缺點是必須確保這臺ARP服務器不被攻擊。(3)使用高層交換方式。目前基于IP地址變換進行路由的第三層交換機逐漸被采用,第三層交換技術用的是IP 路由交換協議。以往的鏈路層的MAC地址和ARP協議已經不起作用,因而ARP欺騙攻擊在這種交換環境下不起作用。這種方法的缺點是第三層交換機價格較為昂貴。(4)提高安全意識,養成良好的安全習慣,不要把網絡安全信任關系建立在IP基礎上或MAC基礎上,對于ARP欺騙的網絡攻擊,不僅需要用戶自身做好防范工作之外,更需要網絡管理員應該時刻保持高度警惕,并不斷跟蹤防范欺騙類攻擊的最新技術,做到防范于未然。
4 結語
ARP協議由于缺乏必要的身份認證和鑒別機制,導致其安全性能脆弱。近年來,利用ARP協議的安全缺陷破壞局域網的情況愈演愈烈,ARP欺騙攻擊已對局域網的安全構成了嚴重威脅。目前雖有多種防御ARP欺騙攻擊的方法,但是都存在一定程度的局限性。ARP協議是整個TCP/IP 網絡的基礎之一,隨著網絡的不斷發展,它的安全性必然會得到更多的關注。
參考文獻
[1][美]Tanenbaum,A.S.熊桂喜,王小虎譯.ComputerNetworks ( Third Edition) [M].北京:清華大學出版社,2001.
[2]王奇.以太網中ARP 欺騙原理與解決辦法[J].網絡安全技術與應用,2007,(2):40-42.
[3]宋曉輝.ARP 病毒攻擊機理與防御.網絡安全技術與應用,2006,(1):29-3.
[4]黃玉春.王自南.淺談局域網中的嗅探原理和ARP 欺騙[J].大眾科技,2006,(8):84,86.
[5]LauraA.Chappell/EdTittel 著;馬海軍,等譯.TCP/IP 協議原理與應用[M].北京:清華大學出版社,2005.