魯賓給的網(wǎng)絡(luò)數(shù)據(jù)樣本是以文本方式存放的,從系統(tǒng)角度來(lái)看,純文本方式保存的數(shù)據(jù)是不會(huì)被操作系統(tǒng)執(zhí)行的,因此肖遠(yuǎn)雖然做了一些防護(hù),卻是在防止魯賓的軟盤里帶有其他的病毒,至于那段網(wǎng)絡(luò)數(shù)據(jù)的文本,并沒(méi)有太多擔(dān)心。
這段文本占據(jù)了差不多滿滿一張軟盤,肖遠(yuǎn)用一個(gè)能夠在各種進(jìn)制(十進(jìn)制、二進(jìn)制、八進(jìn)制、十六進(jìn)制)之間轉(zhuǎn)換的文本編輯器將這段文本打開,因?yàn)槲募荛L(zhǎng),如果要將之打印出來(lái)的話,恐怕要一兩百頁(yè)之多,不借助專門的工具直接人工進(jìn)行分析,是一件不可能的事情,因此他也只是翻了翻開頭的幾頁(yè),了解了一下這個(gè)文本文件的大致情況,就將之關(guān)閉了。
看著眼前的windows桌面,肖遠(yuǎn)有種束手束腳的感覺(jué),因?yàn)楹荛L(zhǎng)一段時(shí)間以來(lái),他接觸的計(jì)算機(jī)系統(tǒng),都是非windows系列,比如平時(shí)在家里,他使用的是thinkpad600,那臺(tái)電腦安裝的系統(tǒng)是feonix系統(tǒng),在學(xué)校的實(shí)驗(yàn)室,他使用的是freebsd系統(tǒng),這兩套系統(tǒng)的內(nèi)核雖然不同,但是因?yàn)樗麄兊耐獠拷涌诙际前凑誴osix標(biāo)準(zhǔn)開發(fā)的,使用的shell也都是他在bash之上自行定制出來(lái)的,因此在使用上如果不涉及系統(tǒng)底層,就很難感覺(jué)到有什么不同。
但是windows卻不同,無(wú)論是操作方式,還是工具都完全不同,最重要的是,眼前這臺(tái)康柏筆記本從卡瑪那拿回來(lái)后,平時(shí)都是夏九瀅上網(wǎng)的時(shí)候偶爾用用,肖遠(yuǎn)就沒(méi)有在上面安裝太多的工具,也沒(méi)有安裝編程環(huán)境。
而現(xiàn)在要分析這段網(wǎng)絡(luò)數(shù)據(jù),卻需要大量的工具配合,甚至需要根據(jù)情況編寫一些專門的工具,這些在康柏筆記本上都沒(méi)有,這才是肖遠(yuǎn)束手束腳的根本原因。
所以,他決定將工作遷移到thinkpad600上進(jìn)行,至于蠕蟲病毒運(yùn)行需要的windows環(huán)境,在thinkpad600上,他可以用一款軟件在feonix系統(tǒng)上設(shè)置一個(gè)win32的api虛擬環(huán)境,讓那個(gè)蠕蟲病毒去那個(gè)虛擬環(huán)境中運(yùn)行,如果那個(gè)虛擬環(huán)境仍然難以滿足要求的話,他還可以動(dòng)用虛擬機(jī)這樣的大殺器,但是限于thinkpad這樣的硬件水平,虛擬機(jī)這種極大耗費(fèi)計(jì)算資源的大型軟件,不到萬(wàn)不得已,他并不準(zhǔn)備使用,如果真的要使用的話,他也會(huì)等到明天回到學(xué)校實(shí)驗(yàn)室,那里他的電腦是一臺(tái)freebsd工作站,在其上運(yùn)行一臺(tái)虛擬機(jī)肯定是游刃有余的。
不過(guò)肖遠(yuǎn)在正式進(jìn)行分析之前,他決定先看看這段網(wǎng)絡(luò)數(shù)據(jù)中內(nèi)嵌的蠕蟲病毒究竟是什么樣子的,具體的表現(xiàn)是什么,只有做到知己知彼,才能百戰(zhàn)不殆。
要想將蠕蟲病毒釋放出來(lái),肖遠(yuǎn)需要前期做一些準(zhǔn)備,首先他要準(zhǔn)備一個(gè)虛擬環(huán)境。
這個(gè)虛擬環(huán)境第一個(gè)作用是作為一個(gè)隔離層,讓蠕蟲運(yùn)行于其中,防止對(duì)計(jì)算機(jī)真正的系統(tǒng)造成損害,其二,這個(gè)虛擬環(huán)境也有類似于監(jiān)控的作用,蠕蟲在其中的一舉一動(dòng),都會(huì)被記錄下來(lái),便于觀察,第三,虛擬系統(tǒng)還可以根據(jù)需要,放開適當(dāng)?shù)木W(wǎng)絡(luò)端口,或者預(yù)留出某一些特定的系統(tǒng)漏洞,用以觀察蠕蟲在其中的反應(yīng)等等。
搭建虛擬環(huán)境所需要的軟件肖遠(yuǎn)早已收集有,現(xiàn)在存放在玄涅社區(qū)他的私人空間里,只需要從哪里下載到本機(jī)就可以了。
虛擬環(huán)境雖然不是真正的虛擬機(jī),但是也要消耗大量的資源,肖遠(yuǎn)在將之配置好之后,就明顯感覺(jué)到系統(tǒng)變慢了,但是還在可以忍受的范圍之內(nèi),并不影響他工作。
搭建好虛擬環(huán)境后,肖遠(yuǎn)又將已經(jīng)被魯賓事先轉(zhuǎn)存成文本文件的網(wǎng)絡(luò)數(shù)據(jù)樣本利用一個(gè)工具轉(zhuǎn)換成二進(jìn)制形式,然后將之導(dǎo)入到了另一個(gè)工具中,這個(gè)工具會(huì)在肖遠(yuǎn)現(xiàn)在的計(jì)算機(jī)模擬一個(gè)網(wǎng)絡(luò)主機(jī),并利用模擬出來(lái)的主機(jī)向虛擬環(huán)境發(fā)送網(wǎng)絡(luò)數(shù)據(jù),實(shí)現(xiàn)和真正從網(wǎng)絡(luò)上接受數(shù)據(jù)包完全相同的效果。
在將網(wǎng)絡(luò)數(shù)據(jù)發(fā)送到虛擬環(huán)境之前,肖遠(yuǎn)現(xiàn)將這些數(shù)據(jù)導(dǎo)入了另一個(gè)網(wǎng)絡(luò)數(shù)據(jù)分悉軟件,這個(gè)軟件會(huì)對(duì)網(wǎng)絡(luò)數(shù)據(jù)流進(jìn)行初步分析,判斷出數(shù)據(jù)流所使用的網(wǎng)絡(luò)協(xié)議,并統(tǒng)計(jì)出其他的一些數(shù)據(jù),以供肖遠(yuǎn)觀察分析。
分析結(jié)果出來(lái)后,肖遠(yuǎn)先看了一遍,首先可以確定的一點(diǎn)是,這些數(shù)據(jù)魯賓是從tcp/ip網(wǎng)絡(luò)堆棧中網(wǎng)絡(luò)層截取的,其次,這些數(shù)據(jù)由很多具有正常功能的網(wǎng)絡(luò)層協(xié)議數(shù)據(jù)包組成,其中tcp協(xié)議的數(shù)據(jù)包占據(jù)了大多數(shù),另外還有少數(shù)的icmp協(xié)議數(shù)據(jù)包,這些數(shù)據(jù)包穿插在tcp/ip數(shù)據(jù)包中,插入位置呈現(xiàn)隨機(jī)性,這兩種協(xié)議的數(shù)據(jù)包占據(jù)了整個(gè)數(shù)據(jù)流的97%,除此之外,還有其他的一些網(wǎng)絡(luò)層協(xié)議數(shù)據(jù)包,比如數(shù)據(jù)廣播協(xié)議igmp等等。
從分析報(bào)告來(lái)看,所有的網(wǎng)絡(luò)層數(shù)據(jù)包都是正常的數(shù)據(jù)包,沒(méi)有任何異常,如果想要查詢數(shù)據(jù)包里所攜帶的數(shù)據(jù)究竟會(huì)不會(huì)有問(wèn)題,則需要對(duì)所有這些數(shù)據(jù)包進(jìn)行解包,然后分解出其中更底層數(shù)據(jù)流進(jìn)行進(jìn)一步的分析。
進(jìn)一步的解包和分析肖遠(yuǎn)準(zhǔn)備留到明天到實(shí)驗(yàn)室后再做,現(xiàn)在只是想要了解一下這段數(shù)據(jù)流的基本情況,然后就是通過(guò)軟件將它們發(fā)送至虛擬環(huán)境,看看網(wǎng)絡(luò)蠕蟲在虛擬環(huán)境中究竟會(huì)干些什么。
數(shù)據(jù)發(fā)出之后,肖遠(yuǎn)在虛擬環(huán)境的監(jiān)控窗口中看到這些數(shù)據(jù)包被虛擬環(huán)境接受,解包,然后因?yàn)檎也坏浇邮者@些數(shù)據(jù)包的程序,開始將這些數(shù)據(jù)包丟棄……
“哇,這是什么地方?”
而就在數(shù)據(jù)包被虛擬環(huán)境接收不到不到三分之一的時(shí)候,突然虛擬環(huán)境中彈出了一個(gè)對(duì)話框,令肖遠(yuǎn)為之一驚,因?yàn)樗仓溃@個(gè)對(duì)話框的出現(xiàn),標(biāo)志著蠕蟲病毒已經(jīng)進(jìn)入了虛擬環(huán)境,但是這個(gè)病毒究竟是怎么進(jìn)去的,他根本就沒(méi)有發(fā)現(xiàn),一切都是那么的突然,而且對(duì)話框里的話更值得他去尋味。
“難道這個(gè)病毒已經(jīng)發(fā)現(xiàn)他所處的環(huán)境不是正常的系統(tǒng)環(huán)境了嗎,它是怎么發(fā)現(xiàn)的?”肖遠(yuǎn)仔細(xì)捉摸著對(duì)話框里的話。
“這里很不正常啊,怎么這么空曠,而且到處都是監(jiān)控,不行,我不喜歡,我要離開。”
就在肖遠(yuǎn)捉摸著第一個(gè)對(duì)話框里的話的時(shí)候,那個(gè)對(duì)話框自己關(guān)閉了,然后第二個(gè)對(duì)話框彈了出來(lái),里面的話讓肖遠(yuǎn)感到驚訝的同時(shí),也確認(rèn)了他剛才的推測(cè),那就是這個(gè)蠕蟲竟然這么快識(shí)別出來(lái),他所處的環(huán)境不正常,并且還表達(dá)出想要離開的意圖。
這時(shí)候,虛擬環(huán)境的監(jiān)控窗口內(nèi),信息快速的滾動(dòng)起來(lái),顯示著虛擬環(huán)境中有一個(gè)進(jìn)程在對(duì)虛擬環(huán)境進(jìn)行掃描,而這個(gè)進(jìn)程的名字是imthin。
“imthin,這是什么意思?”肖遠(yuǎn)覺(jué)得這個(gè)名字很奇怪。
而就在這時(shí),電腦突然發(fā)出了一陣嘀嘀的報(bào)警聲,把肖遠(yuǎn)的思路打斷了。
“哈哈,終于出來(lái)了,竟然想要把我關(guān)進(jìn)小房子里,太可惡了,壞蛋!”
“我靠,這家伙竟然跑出來(lái)了!”肖遠(yuǎn)這時(shí)卻無(wú)心再去關(guān)心對(duì)話里充滿孩子氣的話了,這時(shí)他更關(guān)心的是這個(gè)蠕蟲是怎么從虛擬環(huán)境中跑出來(lái)的。
肖遠(yuǎn)關(guān)掉了屏幕上的對(duì)話框,噼里啪啦敲擊著減胖,一連串的命令通過(guò)虛擬環(huán)境的監(jiān)控窗口發(fā)了出去,他要將監(jiān)控程序的詳細(xì)日志調(diào)查來(lái),看看這個(gè)蠕蟲是怎么跑出來(lái)的,然后就在他將命令發(fā)出去后,等待詳細(xì)日志出來(lái)的時(shí)候,電腦屏幕上又彈出了一個(gè)對(duì)話框,里面的話卻讓他如遭雷擊,一下子愣在了那里,眼淚迅速模糊了視線。
“喂,壞蛋,問(wèn)你個(gè)問(wèn)題,我很胖嗎?”