公務(wù)員期刊網(wǎng) 論文中心 正文

計(jì)算機(jī)病毒軟件檢測思索

前言:想要寫出一篇引人入勝的文章?我們特意為您整理了計(jì)算機(jī)病毒軟件檢測思索范文,希望能給你帶來靈感和參考,敬請閱讀。

計(jì)算機(jī)病毒軟件檢測思索

1計(jì)算機(jī)病毒行為特征

(1)傳染性

傳染性是計(jì)算機(jī)病毒最重要的特征,是判斷一段程序代碼是否為計(jì)算機(jī)病毒的依據(jù)。計(jì)算機(jī)病毒是一段人為編制的計(jì)算機(jī)程序代碼,這段程序代碼一旦進(jìn)入計(jì)算機(jī)并得以執(zhí)行,它會搜尋其他符合其傳染條件的程序或存儲介質(zhì),確定目標(biāo)后再將自身代碼插入其中,達(dá)到自我繁殖的目的。是否具有傳染性是判別一個程序是否為計(jì)算機(jī)病毒的重要條件。

(2)非授權(quán)性

病毒隱藏在合法程序中,當(dāng)用戶調(diào)用合法程序時竊取到系統(tǒng)的控制權(quán),先于合法程序執(zhí)行,病毒的動作、目的對用戶是未知的,是未經(jīng)用戶允許的。

(3)隱蔽性

病毒一般是具有很高編程技巧、短小精悍的程序,它們一般附著在合法程序之中,也有個別的以隱含文件形式出現(xiàn),目的是不讓用戶發(fā)現(xiàn)它的存在。如果不經(jīng)過代碼分析,病毒程序與合法程序是不容易區(qū)別開來的。

(4)潛伏性

大部分的病毒傳染系統(tǒng)之后一般不會馬上發(fā)作,它可長期隱藏在系統(tǒng)中,只有在滿足其特定條件時才啟動破壞模塊。如著名的在每月26日發(fā)作的CIH病毒。

(5)破壞性

病毒可分為良性病毒與惡性病毒。良性病毒多數(shù)都是編制者的惡作劇,它對文件、數(shù)據(jù)不具有破壞性,但會浪費(fèi)系統(tǒng)資源。而惡性病毒則會破壞數(shù)據(jù)、刪除文件或加密磁盤、格式化磁盤等。

(6)不可預(yù)見性

從對病毒檢測方面看,病毒還有不可預(yù)見性。不同種類的病毒,它們的代碼千差萬別。雖然反病毒技術(shù)在不斷發(fā)展,但是病毒的制作技術(shù)也在不斷的提高,病毒總是先于相應(yīng)反病毒技術(shù)出現(xiàn)。

(7)可觸發(fā)性

計(jì)算機(jī)病毒一般都有一個或者幾個觸發(fā)條件。如果滿足其觸發(fā)條件,將激活病毒的傳染機(jī)制進(jìn)行傳染,或者激活病毒的表現(xiàn)部分或破壞部分。病毒的觸發(fā)條件越多,則傳染性越強(qiáng)。

2實(shí)驗(yàn)環(huán)境

本文的實(shí)驗(yàn)環(huán)境為一臺PC機(jī),其運(yùn)行WindowsXPSP3系統(tǒng)和裝有WindowsXPSP3系統(tǒng)的Vmvare7.0虛擬機(jī),其中還有OllyDBG、Filemon、SReng2、Regshot、SSM在開始實(shí)驗(yàn)之前,我們先要確保虛擬機(jī)內(nèi)的系統(tǒng)純凈,然后保存虛擬機(jī)的快照。

3檢測分析計(jì)算機(jī)病毒過程

運(yùn)行Regshot進(jìn)行注冊表快照比較。首先,運(yùn)行Regshot軟件,然后選擇日志輸出路徑后點(diǎn)擊1stshot,即對純凈系統(tǒng)下的注冊表進(jìn)行快照,之后不要退出程序,接下來運(yùn)行我們要測試的neworz.exe,再點(diǎn)擊2stshot,即對運(yùn)行病毒后的注冊表進(jìn)行快照。在第二次快照完成之后,點(diǎn)擊compare便會在IE瀏覽器中顯示出注冊表的變化,由于該病毒修改表項(xiàng)過多,此處只展示一部分。通過報(bào)告我們知道neworz共對注冊表造成影響有541項(xiàng),通過上圖我們能夠發(fā)現(xiàn),此病毒對很多殺毒軟件進(jìn)行了映像劫持操作。

(1)對使用系統(tǒng)端口進(jìn)行比較在進(jìn)行完注冊表對比后,我們將虛擬機(jī)系統(tǒng)還原至純凈快照,運(yùn)行CMD,切換到C盤根目錄下,輸入netstat–an>netstat1.txt,這樣做是保存純凈系統(tǒng)下系統(tǒng)所開端口的記錄。之后運(yùn)行病毒文件,再次輸入netstat–an>netstat2.txt。對比兩個TXT文檔的變化,在這里,用的是UltraEdit進(jìn)行的比較。通過比較我們發(fā)現(xiàn)在運(yùn)行neworz.exe之后,虛擬機(jī)有了一個端口為1401的TCP鏈接,指向一個特定IP的80端口,打開TCPview軟件,對所有TCP鏈接進(jìn)行監(jiān)控后發(fā)現(xiàn)這個1401端口正是neworz.exe打開用來與遠(yuǎn)程主機(jī)通信的。

(2)用SReng2分析病毒樣本靜態(tài)行為再次將虛擬機(jī)還原到純凈快照處,這次我們要用到SReng2軟件。打開SReng2,點(diǎn)擊左側(cè)的智能掃描,然后開始掃描,保存掃描結(jié)果。在運(yùn)行病毒后再次運(yùn)行SReng2,并保存掃描結(jié)果,用UE對比兩次結(jié)果。我們能夠發(fā)現(xiàn)在進(jìn)程中多了neworz.exe進(jìn)程,同時發(fā)現(xiàn)其獲得了SeDebugPrivilege和SeLoadDriverPrivilege權(quán)限,并且在有一個不是在C:\Windows\System32目錄下的svchost.exe也同樣獲得了這兩個權(quán)限。

(3)通過Filemon觀察病毒的操作在這里需要提前說明一點(diǎn),根據(jù)前面的分析研究發(fā)現(xiàn)neworz.exe病毒也對Filemon進(jìn)行了映像劫持,所以需要將主程序名更改一下方可正常運(yùn)行。同樣,還原虛擬機(jī)至純凈快照,打開Filemon,將過濾條件設(shè)置成為neworz.exe,然后運(yùn)行病毒程序。由于信息量很大,只列舉一部分,如圖2所示,我們可以發(fā)現(xiàn)在其在C:\DocumentsandSettings\Administrator\LocalSettings\Temp目錄下創(chuàng)建了綠化.bat,還發(fā)現(xiàn)其在相同的目錄下創(chuàng)建了svchost.exe和urlmOn.dll。

(4)OllyDBG分析還原虛擬機(jī)系統(tǒng),運(yùn)行PEID對neworz.exe進(jìn)行查殼,發(fā)現(xiàn)其使用的是WinUpack0.39final的殼。對其脫殼,脫殼過程不在這里進(jìn)行說明了。脫殼之后顯示是VC6.0編寫的。將其載入OD,查找字符串,結(jié)合我們剛才對neworz.exe行為的分析,我們發(fā)現(xiàn)了其創(chuàng)建的綠化.bat和修改的權(quán)限,圖3是病毒對注冊表的修改,我們可以發(fā)現(xiàn)其對大部分的殺毒軟件都進(jìn)行了映像劫持,同時還有任務(wù)管理器。

(5)通過HIPS軟件SSM對病毒進(jìn)行動態(tài)分析與Filemon一樣,在用SSM對病毒進(jìn)行動態(tài)監(jiān)控時,也需要將SSM主程序更改名稱。最后一次將系統(tǒng)還原至純凈,安裝SSM,并將系統(tǒng)內(nèi)的安全進(jìn)程設(shè)為信任。再次運(yùn)行病毒,可以發(fā)現(xiàn)neworz.exe運(yùn)行了winlogon.exe,之后services.exe運(yùn)行了Beep.sys等等,在這里就不一一舉例了。

4總結(jié)

本文通過對neworz.exe計(jì)算機(jī)病毒為例,總結(jié)了使用虛擬機(jī)和軟件行為分析技術(shù)對檢測病毒行為的各個步驟:注冊表快照對比、端口開放與通信對比、利用SReng2比較分析、通過使用Filemon觀察病毒文件操作、研究分析OD字符串和使用HIPS軟件對病毒進(jìn)行動態(tài)觀察等,使得在接下來的查殺和今后的防御有了極大的幫助。