蠕蟲病毒危害極大,在校園網(wǎng)中只要有一臺計算機感染了蠕蟲病毒,就有可能引起網(wǎng)絡阻塞,嚴重的還會導致網(wǎng)絡癱瘓。對于蠕蟲病毒的檢測,普通用戶通常通過更新殺毒軟件的病毒庫并查殺病毒來判斷電腦是否感染了蠕蟲病毒。但很多時候,感染蠕蟲病毒后普通用戶根本沒有察覺或是察覺后也不一定想到是病毒的原因。這樣,豈不是要網(wǎng)絡管理員逐一去更新每臺計算機的病毒庫并查殺病毒?這顯然是不現(xiàn)實的!況且即使更新了殺毒軟件的病毒庫,也未必一定能檢測出最新的蠕蟲病毒。
我們可以使用一款網(wǎng)絡協(xié)議分析工具——Wireshark來找出校園網(wǎng)內感染了蠕蟲病毒的計算機。Wireshark的前身是Ethereal,它非常小巧,免費而且開源。接下來介紹一下用Wireshark查找病毒的過程。
一、Wireshark的下載及安裝
去官方網(wǎng)站下載一個Wireshark安裝包(目前版本為0.99.3,下載地址:http://www.wireshark.org/download/win32/wireshark-setup-0.99.3.exe),在校園網(wǎng)中的一臺計算機上安裝好,安裝過程非常簡單,不再贅述。
二、使用Wireshark截取數(shù)據(jù)包
運行Wireshark,單擊菜單“Capture”下的“Start”命令,即開始截取網(wǎng)絡中的數(shù)據(jù)包了(如圖1)。在截取過程中,通過截取界面可以看到所截包的類型,了解當前網(wǎng)絡中各類數(shù)據(jù)包所占比例,通過這個比例基本上可以判斷當前網(wǎng)絡是否運轉正常。比如,如果發(fā)現(xiàn)ARP協(xié)議類型的數(shù)據(jù)包比例過大(40%以上,甚至60~70%),那說明校園網(wǎng)中極可能已經(jīng)有計算機感染蠕蟲病毒了。
圖1
注意:如果安裝Wireshark的計算機不止一個網(wǎng)絡接口,則無法直接使用“Capture”菜單下的“Start”命令,而應執(zhí)行菜單“Capture”下的“Interfaces…”命令,在彈出的“Capture Interfaces”對話框(如圖2)中單擊相應網(wǎng)絡接口旁的“Capture”按鈕才能截取數(shù)據(jù)包。
圖2
要停止截取數(shù)據(jù)包時,單擊圖1所示界面中的“Stop”即可,此時所截數(shù)據(jù)包的詳細信息就會顯示在面板中,接下來就可以對數(shù)據(jù)包進行分析了。
三、分析數(shù)據(jù),找出病毒的藏身之處
Wireshark窗口被分成三個部分:最上面為數(shù)據(jù)包列表,用來顯示截獲的每個數(shù)據(jù)包的詳細信息;中間為協(xié)議樹,用來顯示選定的數(shù)據(jù)包所屬的協(xié)議信息;最下邊是以十六進制形式表示的數(shù)據(jù)包內容,用來顯示數(shù)據(jù)包在物理層上傳輸時的最終形式。
使用Wireshark可以很方便地對截獲的數(shù)據(jù)包進行分析,包括該數(shù)據(jù)包的源地址、目的地址、所屬協(xié)議等。圖3是在Wireshark中對一個TCP數(shù)據(jù)包進行分析時的情形??梢钥闯觯斍斑x中數(shù)據(jù)包的源地址為172.20.3.8,目的地址為172.20.3.3,該數(shù)據(jù)包所屬的協(xié)議是TCP協(xié)議,同時從使用的3389端口可以看出172.20.3.8正使用遠程桌面連接訪問172.20.3.3。
圖3
面對Wireshark給出的大量數(shù)據(jù),我們常常不知如何下手,此時化繁為簡就顯得尤為重要了。我們可以借助Filter過濾器來過濾出我們感興趣的數(shù)據(jù)包。如果要查看ARP協(xié)議的包,可以在Wireshark窗口的左下角的Filter中輸入arp,回車,Wireshark就會只顯示ARP協(xié)議的包,接下來我們就可以仔細分析過濾出來的包而不會被其他無關的數(shù)據(jù)干擾了。
在局域網(wǎng)中,實際傳輸?shù)氖恰皫?,幀里面有目標主機的MAC地址。在以太網(wǎng)中,一個主機要和另一個主機進行直接通信,必須要知道目標主機的MAC地址。ARP協(xié)議的基本功能就是通過目標設備的IP地址,查詢目標設備的MAC地址,以保證通信的順利進行。
蠕蟲病毒在傳播過程中首先會隨機選取某一段IP地址(通常是染毒計算機所在IP地址段),然后通過發(fā)送ARP數(shù)據(jù)包來查詢網(wǎng)內計算機的MAC地址。因此,如果校園網(wǎng)內有計算機感染蠕蟲病毒,使用Wireshark會發(fā)現(xiàn):
(1)病毒傳播時,它會發(fā)送大量的ARP數(shù)據(jù)包,在圖1所示的截取數(shù)據(jù)包界面會看到ARP類型的包比例較大,ARP包的數(shù)量瞬間會增加幾十甚至幾百倍。
?。?)查看詳細的數(shù)據(jù)會發(fā)現(xiàn)ARP包非常有規(guī)律,染毒計算機會對自身所在IP段按順序逐一進行ARP查詢。圖4就是一臺IP為172.20.3.89的計算機在染毒后Wireshark獲取到的詳細數(shù)據(jù)。
圖4
一旦鎖定了染毒計算機的IP,接下來的工作就非常簡單了。需要注意的是有時候服務器尤其是DNS服務器會發(fā)送較多的ARP查詢數(shù)據(jù),但一般不是向網(wǎng)內計算機逐一發(fā)送的,不滿足上面的第二個條件,因此可以排除染毒的可能。圖5中的172.20.3.1是一臺提供DNS服務的服務器,它沒有感染病毒。
圖5
此外,通過對Wireshark截取的數(shù)據(jù)進行分析,還可以查出校園網(wǎng)中哪些用戶在占用大量的帶寬玩網(wǎng)絡游戲。截取數(shù)據(jù)包后在Filter中輸入udp,回車,查看所有UDP協(xié)議數(shù)據(jù)包。如果發(fā)現(xiàn)某個計算機向固定的IP的某個UDP端口連續(xù)發(fā)送數(shù)據(jù)包,則用戶很可能在玩網(wǎng)絡游戲或運行著類似的程序。
?。ㄗ髡邌挝唬赫憬B興市第一中學信息處