于德海 于文靜 林 瑜
(中國人民解放軍海軍航空工程學院訓練部教育技術中心 山東 煙臺 264001)
ARP病毒通過網絡中廣播虛假的ARP協議包來實現攻擊網絡的目的,我們稱這種現象為ARP欺騙。ARP欺騙分為兩種:一種是對路由器ARP表的欺騙。欺騙的原理是截獲網關數據。它通知路由器一系列錯誤的內網MAC地址,并按照一定的頻率不斷進行,使真實的地址信息無法通過更新保存在路由器中,結果路由器的所有數據只能發送給錯誤的MAC地址,造成正常PC無法收到信息,用戶無法通過路由器上網;另一種是對內網PC的網關欺騙。欺騙的原理是偽造網關,建立一個假網關,讓被它欺騙的PC向假網關發送數據,而不是通過正常的路由器途徑上網。在終端用戶看來,就是上不了網,網絡掉線了。而且在重啟計算機或在MS-DOS窗口下運行命令 ARP–d命令,又可以恢復上網了。凡是這種癥狀的基本上就是感染了ARP病毒[1]-[3]。
判斷是否是中了ARP病毒,最簡單的方法是利用“ARP–a”命令來查看,如果發現有兩個不同主機的 MAC地址一樣,或者直接 ping網關IP地址,然后用“ARP–a”查看,如果顯示的網關IP地址與原有網關 IP地址不一樣,則證明是中了 ARP病毒。另外,還可以在“進程”選項卡中查看是否含有一個名為“MIR0.dat”的進程。如果有,則說明已經中毒。在其上單擊鼠標右鍵,在彈出菜單中選擇【結束進程】命令來中止ARP病毒進程。
關閉Windows自動播放功能對防范ARP病毒攻擊十分必要和重要。
點擊開始→運行→輸入gpedit.msc,打開組策略編輯器,瀏覽到計算機配置→管理模板→系統,在右邊窗格中雙擊“關閉自動播放”,對話框中選擇所有驅動器,確定即可。
啟動毒霸主程序,工具菜單下找到綜合設置,在其它設置中選中禁止U盤和硬盤的自動播放功能。(圖2)

圖2 金山毒霸禁止自動播放
清除ARP病毒的根本方法就是對交換機進行ARP配置,由于任何ARP包,都必須經由交換機轉發,才能到達被攻擊目標,只要交換機拒收非法的ARP包,那么ARP攻擊就不能造成任何影響,一般交換機都具備防ARP功能。
(1)在交換機上做端口、I P與MAC地址綁定
感染ARP病毒的計算機會將該機器的MAC地址映射到網關的 IP地址上,并且向網段內的所有計算機發出大量的ARP欺騙包。因此會使很多計算機誤以為染毒計算機就是網關,所以會造成大量計算機訪問Internet時中斷。有條件的話,可以在三層交換機上將所連接的計算機做I P與MAC地址的綁定以達到ARP病毒防御的目的。
下面以 H3C交換機為例,在交換機的 E thernet1/0/6口上綁定 I P地址為 192.168.1.2,MAC地址為00-17-31-33-58-a4。
[SwitchA]interface E t hernet1/0/6
[SwitchA-Ethernet1/0/6]ip source static binding ipaddress 192.168.1.2 mac-address 00-17-31-33-58-a4
[SwitchA-Ethernet1/0/6]quit
采用上面的方法配置好所有計算機。
(2)在交換機上劃分VLAN減小沖突域
通過交換機上的 VLAN劃分可以減小沖突域達到縮減ARP廣播區域的目的。劃分H3C交換機端口Ethernet1/0/1到 VLAN5,端口 Ethernet1/0/2到 VLAN10。
[SwitchA]vlan 5
[SwitchA-vlan5]port Ethernet 1/0/1
[SwitchA]vlan 10
[SwitchA-vlan10]port Ethernet 1/0/2
(3)通過訪問控制列表 ACL防御 ARP欺騙
對于大多數三層交換機,可通過配置過濾源 I P是網關的ARP報文的ACL規則來做到防御。ACL規則如下:
[SwitchA]fire wall enable
[SwitchA]acl number 5000
[SwitchA-acl-adv-5000]rule 0 deny 0806 ffff 2464010101 ffffffff 40
[SwitchA-acl-adv-5000]rule 1 permit 0806 ffff 24000fe9a08000 ffffffffffff 34
rule0禁止switchA的所有端口接收冒充網關的ARP報文,其中 64010101是網關 I P地址 100.1.1.1的16進制表示形式。
rule1允許通過網關發送的 ARP報文,000fe9a08000網關的mac地址。
注意:配置Rule時的配置順序,上述配置為先下發后生效的情況。
[Switch]packet-filter user-group5000(下發 ACL5000的規則。)
這樣只有switchA上連網關設備才能夠發送網關的ARP報文,其它主機都不能發送假冒網關的ARP相應報文。
在服務器與客戶端上安裝 ARP防火墻來阻止ARP欺騙,但是ARP防火墻要在全網每臺主機上安裝,要不然起不到很好的效果。ARP防火墻有很多,有安全 360ARP防火墻、彩影ARP防火墻、金山ARP防火墻等。
(1)染毒計算機的定位
A.主動定位方式
所有的 ARP攻擊源的網卡會處于混雜模式(promiscuous)可以通過 ARPKiller工具掃描網內有哪臺機器的網卡是處于混雜模式的,從而判斷這臺機器有可能就是元兇。
B.被動定位方式
在局域網發生 ARP攻擊時,查看三層交換機的動態ARP表中的內容,確定攻擊源的MAC地址;也可以在局域網中部署 Sniffer工具,定位 ARP攻擊源的 MAC。在網絡不正常的時候,也可以直接 Ping網關 IP,完成 Ping后,用 ARP-a查看網關 IP對應的 MAC地址,此 MAC地址應該為欺騙的MAC地址。
(2)ARP 病毒的清除
首先,斷開染毒主機與網絡的連接,運行 msconfig命令,在“服務”欄目下停掉可疑啟動項,在“啟動”欄目下停掉可疑啟動項,并記下文件路徑,在正常模式下,病毒文件一般刪除不了,或者刪除后,又馬上產生,應切換到安全模式下進行。病毒文件一般存放在 c:wi ndows或c:windowssystem32下,進入安全模式后,打開以上文件夾,點擊菜單欄“查看”-“詳細信息”,然后,按“修改日期”排序,查找最近日期的可執行文件及相關的DLL文件,對可疑文件進行刪除。病毒文件一般將自己設為“隱藏”屬性,應點擊菜單欄“工具”-“文件選項#”,打開“顯示所有文件和文件夾”選項。完成以上操作后,全盤殺毒,重啟主機,確認病毒完全處理完畢,才可以恢復網絡連接。
通過對ARP病毒原理和癥狀的分析,本文提出了個人防范ARP病毒的一些有效措施,針對局域網中的ARP病毒特點,研究了根治ARP病毒的方法。病毒的變異和入侵是千變萬化的,要想有效的防范網絡病毒,還有許多工作需要研究。
[1]范建華.TCP/IP詳解[M].北京:機械工業出版社,2003.
[2]寇曉蕤.網絡協議分析[M].北京:機械工業出版社,2009.
[3]李利軍.2008網管員必讀[M].北京:電子影像出版社,2008.
[4]胡冬嚴.ARP病毒的攻擊原理和防護 [J].吉林省教育學院學報,2011,26(5):217-218.
[5]胡建龍,孫驀,張帆.校園網ARP病毒攻擊原理與防御[J].情報雜志,2009,28:155-156.
[6]段煜暉.局域網內ARP病毒的綜合防治[J].河南機電高等專科學校學報,2010,18(4):39-40.