摘要:在局域網中,利用TCP/IP協議安全漏洞進行欺騙攻擊是目前最常見的一種方法。攻擊者通過偽造網關MAC地址來阻斷主機訪問服務,控制網絡通信。通過ARP協議原理分析,對ARP協議欺騙的方式進行揭示,并給出相應的防護方法。
關鍵詞:局域網;ARP;攻擊;防御
中圖分類號:TP393文獻標識碼:A文章編號:1009-3044(2008)34-1633-01
隨著計算機網絡的發展,特別是眾多局域網的出現,如網吧、高校校園網、中小企業局域網的組建,給人們的學習、工作、生活帶來方便,與此同時也帶來了嚴重的網絡安全問題,其中ARP欺騙就是近期最讓人頭疼的問題之一。局域網用戶常常會受到ARP攻擊,致使MSN、QQ、IM經常掉線,還可能造成網絡大面積癱瘓的后果。
1 ARP協議工作原理
在TCP/IP協議中,每一個網絡結點都有一個唯一的IP地址作為網絡標識,而以太網設備并沒有識別32位IP地址的能力。在以太網中,數據的傳輸是靠48位MAC地址尋址的。因此,必須在IP地址與MAC地址之間建立一個映射關系,ARP協議就是為完成這個工作而設計的。
ARP(Address Resolution Protocol)是地址解析協議,它工作在數據鏈路層,和硬件接口直接聯系,同時對上層提供服務,負責通知主機要連接的目標MAC地址。簡單的說,ARP的作用就是通過IP地址來查詢目標主機的MAC地址,其報頭結構如圖1所示。一旦這個環節出錯,主機就不能正常地和目標主機通信了。
主機的TCP/IP協議棧中保存著一個ARP cache 表,在構造網絡數據包時,主機會首先從ARP cache 表中查找目標IP對應的MAC地址;如果找不到,主機會發送一個ARP request 廣播包,請求具有該IP地址的主機報告其MAC地址,當收到目標IP所有者的ARP reply后,更新本地 ARP cache ,并完成通信連接。
2 ARP 協議缺陷
ARP協議的可靠性是建立在局域網內所有結點均為受信結點的基礎上的,它很高效,但卻不安全。因為它是無狀態協議,不會檢查自己是否發過請求包,同時也沒有相應的安全機制檢驗接收到的數據包是否為合法應答,只要收到目標MAC是自己的ARP reply包或ARP 廣播包(包括ARP request和ARP reply),都會接受并更新本地ARP cache。這就為ARP欺騙提供了可能,攻擊者可以發布虛假的ARP報文對主機進行欺騙,從而影響網內結點間的通信。
3 ARP攻擊原理分析
ARP協議工作時會從ARP cache 中讀取IP-MAC記錄,提供目標主機MAC地址,進行通信。默認情況下,ARP cache 中的IP-MAC條目會根據ARP reply動態更新,但ARP協議并不是在發送了ARP request后才接收ARP reply,而是一直處于接收狀態,中人主機接收到ARP reply,就會對本地的ARP cache進行同步更新。因此,攻擊者發出偽造的ARP reply主能很輕易地更改目標主機ARP cache中的IP-MAC條目。在Windows系統里,ARP cache中的記錄生存時間一般為60秒,起始時間從記錄被創建時開始,只要攻擊數據的發送時間間隔小于60秒,就能持續不斷地對目標主機進行欺騙,造成該主機網絡中斷。
4 ARP欺騙攻擊的防護
最早的ARP欺騙解決方法是在主機和網關進行雙向綁定,無論網絡中是否存在ARP欺騙信息,都不影響正常的數據轉發,無視ARP的存在;雖然其本身直接針對ARP原理進行防御,效果較好,但其存在雙向綁定管理難度大,難以大規模部署的缺點。除此之外,還可以從以下幾個方面加強對ARP欺騙攻擊的防護:
1) 使用可防御ARP攻擊的三層交換機,綁定端口MAC-IP,限制ARP流量,及時發現并自動阻斷ARP攻擊端口,合理劃分VLAN,徹底阻止盜用IP、MAC地址,從根本上杜絕ARP的攻擊。
2) 上網用戶應增強安全意識,不要瀏覽缺乏可信度的網站;不要輕易下載和安裝盜版的、不可信任的軟件或者程序;不要隨便打開不明來歷的電子郵件,尤其是郵件附件;不要隨便點擊打開QQ、MSN等聊天工具上發來的鏈接信息;
3) 及時修補系統漏洞(比如,打上ARP補丁KB842168等);關閉不必要的系統服務;安裝正版的殺毒軟件,經常更新病毒庫等。
5 結束語
總之,通過正確的網絡管理和用戶控制,可以有效地抵御ARP攻擊帶來的破壞,同時合理而有效的安全手段能夠進一步提高用戶的網絡使用效率。
參考文獻:
[1] 王達.管員必讀——網絡安全[M].2版.北京:電子工業出版社,2007.
[2] 黃學林.ARP協議欺騙原理分析及防范措施[J].廣東科技,2007(7):172-173.