一、從病毒目錄入手
我們先得從病毒所在的目錄入手,如果病毒像正常的軟件一樣有自己獨立的目錄,那么我們可以略微地笑笑了——這個病毒比較弱。檢查目錄的創建時間就可以知道你是什么時候染的毒,并可能發現毒從何來。如果它沒有自己單獨的目錄,而是存在于系統目錄,那也比較好辦,這種病毒的破壞性一般不是很大,你就直接查看它的屬性就可以了解到一切必要的信息。如果它存在于你的計算機上的每個目錄,那這時候Windows自帶的文件搜索功能就派上用場了。
盡管它復制的到處都是,但這種病毒都只有一個主程序文件,且都是一個娘胎生的,文件大小必然一致。打開文件搜索的高級功能,填入EXE文件類型并把文件的大小輸入,然后按下回車鍵,接著藏在你的硬盤每個角落的病毒就會暴露無疑。利用創建時建排序,你可以發現第一個攻擊你的機器的病毒了。現在所有的病毒數據文件基本都在眼前了,至少是病毒能對你發動攻擊的主要成分,那么就請大開殺戒吧,把你找到的與任何與病毒相關的EXE、DLL、數據全部刪除。不過別做的太絕,留上至少一個EXE作為標本,將其擴展名改為DAT并用RAR打包,我們以后還用的上。
另外還是請你非常地小心謹慎,別把不是病毒的文件給誤刪了,那可是致命的錯誤!在處理完硬盤病毒后,千萬不要重啟計算機,那可能會導致前功盡棄,因為有的病毒的正身我們并不能如此輕易地找到。如果有些病毒不以EXE的身份出現,而是其它的比如COM、RAR等,我們的文件尺寸搜索法一樣適用,換個擴展名就行了。不過我還是要告訴你一件不幸的事,主程序文件尺寸不一樣的病毒現在還沒有但并不代表以后不會有,到那時我們只能用關鍵數據匹配搜索了。
二、對病毒最后的陣地發動總攻
硬盤上的病毒雖然已被我們斬草除根,但更麻煩的事還在等著我們,要知道負隅頑抗的敵人才是最可怕的。病毒的最后陣地在哪呢?無疑就是那傳說中的注冊表。因為系統服務的信息都存儲在注冊表里,我就把服務的內容歸類在這一節了。首先應該做的事是仔細檢查你的服務列表,仔細核對每一個沒有描述的服務,看是否和你剛結束掉的進程有關。對于中文版Windows的用戶來說,查出病毒服務是有一定優勢的,原因說來比較可笑,那就是國外寫病毒的程序員不懂中文,因此他們不會用中文的描述來將自己偽裝成系統服務。因此對于一切英文描述的服務也應該格外注意。
我還見過更狠的病毒,它將系統正常的進程干掉,然后將那個進程的描述、名稱等信息套用在自己身上,偽裝的真是天衣無縫。但最終還是露出了馬腳,它所對應的EXE文件是完全不對路的。當確保進程是安全的,那我們就可以直接進入注冊表了,先檢查系統啟動時自動運行的注冊項,看有沒有可疑的程序。我的經驗是在系統啟動時基本不運行任何程序,真的要運行就放在開始菜單的啟動項里,這樣不僅安全,而且可以為你發現病毒帶來極大的便利。
事實上,長期以來的無數次實踐證明,將所有的自動啟動項都刪除對于機器是沒有任何不良影響的。系統本身不會把關鍵的啟動程序放在那里,對于系統運行最關鍵的其實是服務。不過當你在這里發現病毒時先不要急于刪除鍵值,你應該將它記錄下來,看看它對應的程序是否已被你備案。然后將病毒程序可能的名字都復制下來,逐個在注冊表中搜索,把找到的所有的匹配項全部刪掉。不過這樣做還是有一定的危險性,我強烈建議你在刪除前導出鍵值以做備份。在注冊表的查殺和掃描工作結束后,我們終于可以長噓一口氣了,因為病毒及其家人很可能已經被我們殘忍地屠殺凈了。在你再次檢查進程列表確保無誤后,就可以重啟計算機看看病毒是否會再次發作了。
三、真正可怕的對手
還記得上面的內容中曾經提到過的寄生在瀏覽器進程或系統服務進程中的病毒嗎?它們當之無愧是我們最可怕的敵人。然而隨著你將他們藏在注冊表里的信息清除掉,它們中的大多數在你重啟機器后就不會再附加在系統進程上了,這時就可以按照上面的方法將它們清除,這聽起來并不很復雜是嗎?但更加令人恐怖的病毒還在后面,那就是病毒在運行的時候對注冊表實施了監控,一旦發現它在注冊表里的注冊信息被破壞,將會立即復原,使你對注冊表的操作無效。對于這樣的病毒,我們只能用干凈的DOS啟動盤啟動機器,然后將它的程序文件刪掉,再啟動進入Windows,刪除它在注冊表里的信息。
有的朋友會問,為什么不進入安全模式殺毒。當然,在安全模式下絕大多數無用的服務和進程不會被啟動,然而這對于那些喪心病狂的特殊病毒是無效的,甚至于當它們發現你的機器進入了安全模式后會立即發動最后猛攻,使你的機器徹底癱瘓。雖然這么狠的病毒對于一般的朋友來說是百年難遇的。