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