【IT168 資訊】 自去年5月份開始出現的校內區域網頻繁掉線等問題,對正常的教育教學帶來了極大的不便,可以說是談「掉」色變,造成這種現象的情況有很多,但目前最常見的是ARP攻擊了。本文介紹了 ARP攻擊的原理以及由此引發的網絡安全問題,並且結合實際情況,提出在校園網中實施多層次的防範方法,以解決因ARP攻擊而引發的網絡安全問題,最後介紹了一些實用性較強且操作簡單的檢測和抵禦攻擊的有效方法。
您是否遇到區域網內頻繁性區域或整體掉線,重啟計算機或網絡設備後恢復正常?您的網速是否時快時慢,極其不穩定,但單機進行光纖數據測試時一切正常?您是否時常聽到教職工的網上銀行、遊戲及QQ帳號頻繁丟失的消息?……
這些問題的出現有很大一部分要歸功於ARP攻擊,我校區域網自去年5月份開始ARP攻擊頻頻出現,目前校園網內已發現的「ARP攻擊」系列病毒已經有了幾十個變種。據檢測數據顯示,APR攻擊從未停止過,為此有效的防範ARP形式的網絡攻擊已成為確保網絡暢通必要條件。
一、ARP的基本知識
1、什麼是ARP?
ARP協議是「Address Resolution Protocol」(地址解析協議)的縮寫。在區域網中,網絡中實際傳輸的是「幀」,幀裡面是有目標主機的MAC地址的。在乙太網中,一個主機要和另一個主機進行直接通信,必須要知道目標主機的MAC地址。但這個目標MAC地址是如何獲得的呢?它就是通過地址解析協議獲得的.
所謂「地址解析」就是主機在發送幀前將目標IP位址轉換成目標MAC地址的過程。ARP協議的基本功能就是通過目標設備的IP位址,查詢目標設備的MAC地址,以保證通信的順利進行。
在區域網中,通過ARP協議來完成IP位址轉換為第二層物理地址(即MAC地址)的,ARP協議對網絡安全具有重要的意義。
2、ARP協議的工作原理
正常情況下,每臺主機都會在自己的ARP緩衝區中建立一個 ARP列表,以表示IP位址和MAC地址的對應關係。當源主機需要將一個數據包要發送到目的主機時,會首先檢查自己 ARP列表中是否存在該 IP位址對應的MAC地址,如果有﹐就直接將數據包發送到這個MAC地址;如果沒有,就向本地網段發起一個ARP請求的廣播包,查詢此目的主機對應的MAC地址。此ARP請求數據包裡包括源主機的IP位址、硬體地址、以及目的主機的IP位址。網絡中所有的主機收到這個ARP請求後,會檢查數據包中的目的IP是否和自己的IP位址一致。
如果不相同就忽略此數據包;如果相同,該主機首先將發送端的MAC地址和IP位址添加到自己的ARP列表中,如果ARP表中已經存在該IP的信息,則將其覆蓋,然後給源主機發送一個 ARP響應數據包,告訴對方自己是它需要查找的MAC地址;源主機收到這個ARP響應數據包後,將得到的目的主機的IP位址和MAC地址添加到自己的 ARP列表中,並利用此信息開始數據的傳輸。
如圖:
1. 要發送網絡包給192.168.1.1,但不知MAC地址?#p#分頁標題#e#
2. 在區域網發出廣播包「192.168.1.1的MAC地址是什麼?」
3. 其他機器不回應,只有192.168.1.1回應「192.168.1.1的MAC地址是00-aa-00-62-c6-09」
從上面可以看出,ARP協議的基礎就是信任區域網內所有的人,那麼就很容易實現在乙太網上的ARP欺騙。更何況ARP協議是工作在更低於IP協議的協議層,因此它的危害就更加隱蔽。
二、ARP欺騙的原理
ARP類型的攻擊最早用於盜取密碼之用,網內中毒電腦可以偽裝成路由器,盜取用戶的密碼, 後來發展成內藏於軟體,擾亂其他區域網用戶正常的網絡通信,下面我們簡要闡述ARP欺騙的原理:假設這樣一個網絡,一個交換機連接了3臺機器,依次是計算機A,B,C
A的地址為:IP:192.168.1.1 MAC: AA-AA-AA-AA-AA-AA
B的地址為:IP:192.168.1.2 MAC: BB-BB-BB-BB-BB-BB
C的地址為:IP:192.168.1.3 MAC: CC-CC-CC-CC-CC-CC
第二步:正常情況下在A計算機上運行ARP -A查詢ARP緩存表應該出現如下信息。
Interface: 192.168.1.1 on Interface 0x1000003
Internet Address Physical Address Type
192.168.1.3 CC-CC-CC-CC-CC-CC dynamic
第三步:在計算機B上運行ARP欺騙程序,來發送ARP欺騙包。
B向A發送一個自己偽造的ARP應答,而這個應答中的數據為發送方IP位址是192.168.10.3(C的IP位址),MAC地址是DD-DD- DD-DD-DD-DD(C的MAC地址本來應該是CC-CC-CC-CC-CC-CC,這裡被偽造了)。當A接收到B偽造的ARP應答,就會更新本地的 ARP緩存(A可不知道被偽造了)。而且A不知道其實是從B發送過來的,A這裡只有192.168.10.3(C的IP位址)和無效的DD-DD-DD- DD-DD-DD MAC地址。
第四步:欺騙完畢我們在A計算機上運行ARP -A來查詢ARP緩存信息。你會發現原來正確的信息現在已經出現了錯誤。
Interface: 192.168.1.1 on Interface 0x1000003
Internet Address Physical Address Type
192.168.1.3 DD-DD-DD-DD-DD-DD dynamic
上面例子中在計算機A上的關於計算機C的MAC地址已經錯誤了,所以即使以後從A計算機訪問C計算機這個192.168.1.3這個地址也會被ARP協議錯誤的解析成MAC地址為DD-DD-DD-DD-DD-DD的。
當區域網中一臺機器,反覆向其他機器,特別是向網關,發送這樣無效假冒的ARP應答信息包時,嚴重的網絡堵塞就會開始。由於網關MAC地址錯誤,所以從網絡中計算機發來的數據無法正常發到網關,自然無法正常上網。
這就造成了無法訪問外網的問題,另外由於很多時候網關還控制著我們的區域網LAN上網,所以這時我們的LAN訪問也就出現問題了。下圖更直觀的展示了ARP欺騙攻擊的情況:
三、ARP欺騙的危害
ARP類型的攻擊在校園網中最早出現在去年5月份,目前校園網內的計算機所感染的「ARP欺騙」系列病毒已經有了幾十個變種。根據這些變種的工作特點和外部特性大概可以分為三大類,其中「ARP欺騙」和「惡意竊聽」兩類對學校區域網的正常運行和網絡用戶的信息安全的威脅最大。#p#分頁標題#e#
ARP攻擊只要一開始就造成區域網內計算機無法和其他計算機進行通訊,而且網絡對此種病毒沒有任何耐受度,只要區域網中存在一臺感染「ARP欺騙」病毒的計算機將會造成整個區域網通訊中斷。
「惡意竊聽」病毒是「ARP欺騙」系列病毒中影響和危害最為惡劣的。它不會造成區域網的中斷,僅僅會使網絡產生較大的延時,但是中毒主機會截取區域網內所有的通訊數據,並向特定的外網用戶發送所截獲的數據,對區域網用戶的網絡使用造成非常非常嚴重的影響,直接威脅著區域網用戶自身的信息安全。
四、出現ARP攻擊的原因及特徵
一個正常運行的區域網是不應該出現ARP攻擊的,經過長時間的觀測,發現ARP攻擊的出現主要是由以下幾個原因造成的:
1、人為破壞
主要是內網有人安裝了P2P監控軟體,如P2P終結者,網絡執法官,聚生網管,QQ第六感等,惡意監控其他機器,限制流量,或者進行內網DDOS攻擊。
2、木馬病毒
傳奇、跑跑卡丁車、勁舞團等遊戲外掛,如:及時雨PK版,跑跑牛車,勁舞小生等,他內含一些木馬程序,也會引起ARP欺騙。
其實真正有人惡意搗亂的是很少的,一次兩次搗亂,次數多了自己也就膩了,更何況事後網管肯定會找到搗亂的主機,所以說人為破壞是比較好解決的。最麻煩的就是使用帶木馬的遊戲外掛和瀏覽帶有惡意代碼的網頁。
當出現ARP攻擊後最明顯的特徵是網絡頻繁掉線,速度變慢,查看進程你會發現增加了 down.exe 1.exe cmd.exe 9sy.exe中的任意一個或多個,嚴重的還能自動還下載威金病毒,logo_1.exe.rundl132.exe,感染可執行文件,圖標變花還。
五、常用的防範方法
目前ARP系列的攻擊方式和手段多種多樣,因此還沒有一個絕對全面有效的防範方法。從實踐經驗看最為有效的防範方法即打全Windows的補丁、正確配置和使用網絡防火牆、安裝防病毒軟體並及時更新病毒庫。
對於Windows補丁不僅僅打到SP2(XP)或SP4(2000),其後出現的所有安全更新也都必須及時打全才能最大限度的防範病毒和木馬的襲擊。此外,正確使用U盤等移動存儲設備,防止通過校外計算機傳播病毒和木馬。
下面介紹防範ARP攻擊的幾種常用方法:
1、靜態綁定
將IP和MAC靜態綁定,在網內把主機和網關都做IP和MAC綁定。
欺騙是通過ARP的動態實時的規則欺騙內網機器,所以我們把ARP全部設置為靜態可以解決對內網PC的欺騙,同時在網關也要進行IP和MAC的靜態綁定,這樣雙向綁定才比較保險。缺點是每臺電腦需綁定,且重啟後任需綁定,工作量較大,雖說綁定可以通過批處理文件來實現,但也比較麻煩。
2、使用防護軟體
目前關於ARP類的防護軟體出的比較多了,我校常用的一款軟體是大勢至(北京)軟體工程有限公司的聚生網管系統(官方網站:http://www.grabsun.com).
聚生網管採用系統內核層攔截技術和主動防禦技術,包含六大功能模塊可解決大部分欺騙、ARP攻擊帶來的問題,從而保證通訊安全(保障通訊數據不被網管軟體/惡意軟體監聽和控制)、保證網絡暢通
3、具有ARP防護功能的網絡設備
由於ARP形式的攻擊而引發的網絡問題是目前網絡管理,特別是區域網管理中最讓人頭疼的攻擊,他的攻擊技術含量低,隨便一個人都可以通過攻擊軟體來完成ARP欺騙攻擊,同時防範ARP形式的攻擊也沒有什麼特別有效的方法。目前只能通過被動的亡羊補牢形式的措施了,本文介紹的方法希望對大家有所幫助。