杜連利
[摘要]ARP欺騙是局域網中最普遍、最具危害性的病毒,從ARP協議的原理、ARP協議所存在的漏洞及安全隱患出發,分析ARP欺騙的原理和攻擊時的現象,并提出有效的解決辦法和防范策略。
[關鍵詞]ARP IP地址 MAC地址 局域網
中圖分類號:TP3文獻標識碼:A文章編號:1671-7597(2009)0810058-01
一、引言
隨著網絡技術在各個領域的廣泛應用,在提高工作效率、實現數據共享及信息交換等方面提供了極大的便利。然而,由于網絡協議設計上的缺陷,給網絡病毒以可乘之機。ARP病毒的出現,使網絡的使用效率急劇下降,甚至對用戶的信息安全構成威脅,因此,病毒的防范顯得尤為重要。
二、ARP欺騙的分析
(一)ARP協議工作原理。ARP是Address Resolution Protocol的縮寫,是TCP/IP協議族中的一個協議,稱為地址解析協議,具體來說就是將網絡層地址解析為數據連接層的MAC地址。
IP數據包在以太網中傳送,但以太網設備并不能識別32位的IP地址,只能識別48位的MAC地址,ARP的解析過程就是將目的主機的IP地址轉換成MAC地址。每一臺主機都設有一個ARP緩存表用于存放IP地址與MAC地址的對應關系,這個緩存表會定期的被刷新,在一段時間內表中某一行未被使用,就會被刪除,這樣可以減少ARP緩存表的長度從而加快查詢速度。
當主機A欲向本網絡的主機B發送數據包時,就先在其ARP緩存表中查找有無主機B的IP地址。如果有,就查出其對應的MAC地址,然后將該MAC幀發往此硬件地址對應的主機;如果不存在,主機A就要向網絡發送ARP廣播,網絡上的所有主機都能收到這個ARP請求,主機B收到廣播發現信息中的IP與自己的相同,便向主機A發送ARP響應,告知自己的MAC地址。這樣在得到了主機B的MAC地址后,主機A就可以向主機B發送數據了。
值得注意的是,對于某一臺主機而言,即使收到的ARP響應并不是由自己的請求而得到的,也不會對其進行“身份驗證”,而是直接將其加入到自己的ARP地址緩存表中。這是由于在設計ARP協議時是建立在主機間相互信任的基礎上,目的是減少過多的產生ARP廣播。后來被人們稱為不堅定的ARP協議,意為容易被欺騙的ARP協議。
(二)ARP欺騙的實現。ARP欺騙就是利用了ARP協議的信任機制,當主機收到一個ARP的應答包后,它并不會去驗證自己是否發送過這個ARP請求,而是直接將應答包里的MAC地址與IP對應的關系替換掉原有的ARP緩存表里的相應信息。
假設局域網中A與B是正常通訊的主機,C是實施ARP欺騙的主機,主機C首先向主機A發送假的ARP應答報文,主機A在接收到后,修改自己的ARP地址緩存表,使得主機B的IP地址與主機C的MAC地址相對應。同樣,主機C也向主機B發送假的ARP應答報文,使得主機B的ARP地址緩存表修改為主機A的IP地址與主機C的MAC地址相對應。這時,如果A向B發送信息,根據A中的ARP地址緩存表中的IP→MAC的映射關系,信息實際上是先被發送到了主機C,于是,主機A和主機B的通信過程,就被主機C所監聽,而主機A和B對此毫無察覺。
另外一種欺騙是用同樣的方法冒充網關欺騙網內的主機,使主機的信息不能正常的到達網關,表現為網絡掉線。
更為嚴重的行為是冒充網關欺騙主機的同時又冒充主機來欺騙網關。
三、ARP欺騙帶來的危害
1.網絡異常,使用局域網時會突然掉線,過一段時間后又會恢復正常。用戶頻繁斷網,嚴重時甚至可能帶來整個網絡的癱瘓。
2.數據竊取,具體表現為個人隱私泄漏,如MSN聊天記錄、郵件等。賬號被盜用,如QQ賬號、銀行賬號等,這是木馬的慣用伎倆,給用戶造成了很大的不便或經濟損失。
3.數據篡改,具體表現為訪問的網頁被添加了惡意內容,俗稱“掛馬”。
4.非法控制,具體表現為網絡速度、網絡訪問行為受第三者非法控制。
四、解決方法與防范策略
(一)利用命令行的方式來檢測并綁定IP與MAC的映射。ARP病毒攻擊的首要目標是網關,因此,保留一份正確的網關的IP-MAC數據很重要。當局域網中發生ARP欺騙的時候,實施ARP欺騙的電腦會不停地發送ARP欺騙廣播,這時局域網中的其它電腦就會動態更新自身的ARP緩存表,將網關的MAC地址記錄成ARP病毒電腦的MAC地址,我們只要打開一個命令提示符窗口,輸入“arp-a”來顯示ARP緩存表的內容,顯示為:
192.168.1.1 00-21-27-87-b8-1adynamic
如果顯示的內容與正確的數據不符,則說明ARP緩存表中網關的MAC已被篡改。先刪除現有的IP-MAC對應表:arp-d192.168.1.1,在緩存列表中增加一個正確的、靜態的IP→MAC的數據,如arp-s192.168.1.100-21-5c-55-6a-ed,既綁定了網關IP與MAC的對應關系。
如果網管有一個局域網內所有主機的IP-MAC映射表,則可以根據MAC地址找到實施ARP欺騙的主機,利用ARP專殺工具殺毒。
(二)在交換機端口上應用IP-MAC綁定。在交換機端口上實施MAC地址與端口綁定和IP地址與端口的綁定相結合,從而達到在端口上應用IP與MAC地址綁定的功能。一旦綁定之后,交換機的ARP表就固定了,任何ARP欺騙都無法修改交換機的ARP表,同時也就保證了路由的準確性。
(三)在交換機上設置虛擬局域網(VLAN)。由于廣播信息不能跨越虛擬局域網,因此通過劃分VLAN的方法,減小了ARP廣播的范圍,從而有效的減小了ARP欺騙帶來的影響。
(四)安裝ARP防火墻軟件。隨著ARP欺騙的不斷升級,國內多款ARP防火墻軟件應運而生,如奇虎360ARP防火墻、金山ARP防火墻、瑞星防火墻等,能有效的抑制ARP欺騙的發生。
五、結束語
網絡給人們帶來了無限的便利,但隨之而來的安全問題讓當初的設計者們始料未及。ARP的欺騙正是利用了ARP協議設計上的缺陷,給網絡安全、信息安全、甚至財產安全帶來極大隱患。但只要我們能從原理出發,找到問題的“癥結”所在,利用行之有效的解決方法和防范措施,就能減小或消滅ARP病毒帶來的危害,從而確保網絡的暢通和數據的安全。
參考文獻:
[1]鄭成興,網絡入侵防范的理論與實踐,機械工業出版社,2006.9.1.
[2]徐宇杰,TCP/IP協議深入分析,清華大學出版社,2009.
[3](美)康弗瑞著,王迎春、謝琳譯,網絡安全體系結構,人民郵電出版社,2005.
[4]楊延雙、張建標、王全民,TCP/IP協議分析及應用,機械工業出版社,2007.
[5](美)帕克、(美)斯鮑泰克,TCP/IP技術大全,機械工業出版社,2001.
[6]http://www.51cto.com.