一,ARP欺騙病毒發作跡象:
一般來說ARP欺騙病毒發作主要有以下幾個特點,首先網絡速度變得非常緩慢,部分計算機能夠正常上網,但是會出現偶爾丟包的現象。例如ping網關丟包。而其他大部分計算機是不能夠正常上網的,掉包現象嚴重。但是這些不能上網的計算機過一段時間又能夠自動連上。ping網關地址會發現延遲波動比較大。另外即使可以正常上網,象諸如郵箱,論壇等功能的使用依然出現無法正常登錄的問題。
二,確認ARP欺騙病毒發作:
當我們企業網絡中出現了和上面描述類似的現象時就需要我們在本機通過arp顯示指令來確認病毒的發作了。
第一步:通過“開始->運行”,輸入CMD指令后回車。這樣我們將進入命令提示窗口。
第二步:在命令提示窗口中我們輸入ARP -A命令來查詢本地計算機的ARP緩存信息。在顯示列表中的physical address列就是某IP對應的MAC地址了。如果企業沒有進行任何MAC與IP地址綁定工作的話,ARP模式列顯示的都是dynamic動態獲得。當我們發現arp -a指令執行后顯示信息網關地址對應的MAC地址和正確的不同時就可以百分之百的確定ARP欺騙病毒已經在網絡內發作了。例如正常情況下筆者網絡內網關地址192.168.2.1對應的MAC地址是00-10-5C-AC-3D-0A,然而執行后卻發現192.168.2.1對應的MAC地址為00-10-5c-ac-31-b6。網關地址MAC信息錯誤或變化確認是ARP病毒造成的。(如圖1)
第三步:我們用筆將錯誤的MAC地址記錄下來,為日后通過sniffer排查做準備。
接下來我們就應該利用sniffer這個強大的工具來找出病毒根源了。
三,從sniffer下手揪出ARP病毒:
一般來說最好的辦法是找一臺沒有感染病毒的計算機連接到企業核心路由交換設備的鏡像端口來抓取數據包。如果沒有鏡像端口直接連接到網絡中抓取也可以,只是所抓數據會不全,分析問題的周期比較長。
第一步:我們按照實際需要將用來分析故障的筆記本連接到交換機的鏡像端口上。運行sniffer,在sniffer軟件中打開dashboard面板,這個面板主要是掃描當前網絡中數據包的宏觀信息,即什么樣的數據包有多少個。一般來說病毒都是以廣播數據包來傳播的,所以只需要查看每秒網絡內的廣播數據包數量就可以判斷病毒危害的嚴重與否。在dashboard面板中我們可以看到broadcasts/s處顯示的信息為26個,也就是說對當前網絡抓取結果是一秒鐘有26個廣播數據包。和平常比要多一些。(如圖2)
第二步:接下來我們在sniffer軟件中切換到hosttable主機列表中,具體查看到底哪個計算機發送的廣播數據包最多。一般來說如果網絡內有蠕蟲病毒,那么這臺主機的廣播量要遠遠大于其他主機。例如本例中就會看到有一臺計算機的廣播數據包為14344個,是其他正常計算機發送包的1000倍還多。這樣就可以判斷該計算機有問題。(如圖3)
第三步:我們在sniffer軟件中切換到協議分析標簽(protocol distribution,從圖中可以看到網絡內ARP數據包占用的比例比較大,達到了12%以上,這也是不正常的。一般來說一個正常的網絡應該99%以上數據包都是IP數據包,ARP數據包小于1%。(如圖4)
第四步:接下來就該對嫌疑犯進行監控了,這在以前的文章中也介紹過,針對發送廣播量最大的主機進行抓包分析,能夠發現他不斷的欺騙網關,向外發送的數據包目的地址都是連續的,聲稱他是192.168.2.0/24網段的主機,從而造成其他主機無法和正確網關進行正常通訊,都被他欺騙了。(如圖5)
第五步:了解到出現問題計算機的MAC地址后我們通過查詢sniffer監控的數據,特別是查看該MAC和真正網關地址通訊時數據包的內容就可以找到他的IP地址了。當然如果企業有DHCP服務器的話,也可以到DHCP服務器的地址租約池中查看該MAC地址對應的IP地址信息。總之我們可以通過多種方法來通過MAC找到IP地址,從而最終確定病毒的根源。
第六步:找到了這個有問題的MAC地址和IP地址后我們就可以針對該計算機進行斷網隔離殺毒了。殺毒完畢連接到網絡中問題全部解決,網絡恢復正常。
四,總結:
ARP欺騙病毒的排查和清除方法非常單一,基本上按照本文介紹的方法就可以對付所有ARP欺騙病毒。這種查殺病毒的步驟也是最穩妥和全面的,采取步步為營的策略最終定位病毒根源,保證網絡恢復正常傳輸的狀態。