木馬和蠕蟲有相似的地方,都是程序,都運(yùn)行在目標(biāo)機(jī)器上,并且目前的程序,有木馬和蠕蟲甚至和病毒相結(jié)合的趨勢。
不過只要是木馬和蠕蟲,沒有病毒的特征,那么,至少,它不會感染文件,如果感染的話,也是文件完全被木馬和蠕蟲所代替,而原來文件本身,因為木馬和蠕蟲要隱藏自己,這個文件必然還要保留以實(shí)現(xiàn)本身的功能,所以一般是被他們改名或移動位置。
根據(jù)以上特點(diǎn),所以,木馬和蠕蟲在一般情況下,是可以手動清除的,個別比如某些版本的求職信,某些版本的冰河,都帶有寄生功能,所以,手動清除是不可能了,這些就要跟病毒的清除方法一樣了,不再多說。
既然木馬和蠕蟲,都要在目標(biāo)機(jī)器上運(yùn)行,北大青鳥告訴你他們一般都采取什么方法。
1.注冊表
注冊表里,也是最多的一種,在HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run,或者runonce,runservice,runserivceonce;或者在HKEY_CURRENT_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run。runonce,runservice,runserviceonce。
并且運(yùn)行以run和runservice為多,因為帶once的,運(yùn)行了就從里面刪除掉了,要想再運(yùn)行,就要在關(guān)閉系統(tǒng)的時候,再加上,這樣的程序有好處也有壞處,好處是看不到注冊表里的運(yùn)行痕跡,但壞處是,如果對方不正常關(guān)機(jī),那就沒辦法加載了,不過這些程序不會用一種方法的,所以這種情況也可能出現(xiàn)。
2.服務(wù)
運(yùn)行在服務(wù)里,也是很好的方法,并且服務(wù)里運(yùn)行的東西也很多,不是非常熟悉的話,的確很難判斷哪個是木馬或蠕蟲程序。
3.文件關(guān)聯(lián)
如果放在注冊表的run里面,也是容易被發(fā)現(xiàn)并且刪除的,所以,他們一般采取的備用措施都是關(guān)聯(lián)文件,很多都是關(guān)聯(lián)txt或exe文件,只要你打開這些文件,備用程序就會運(yùn)行,并且再生成服務(wù)文件。
4.在system.ini的shell里
shell=eXPlorer,這個是默認(rèn)的,不過有些程序會修改這里或者是shell=其他程序,或者是shell=explorer,其他程序后者的好處是,運(yùn)行后隱藏在explorer的進(jìn)程里了,在進(jìn)程列表里不好找到。
5.win.ini里的load和run
這里也是加載東西的好地方知道了如何運(yùn)行,就可以針對性的清除了。
首先,運(yùn)行regedit,如果這個時候不能運(yùn)行,那就可能是exe文件被關(guān)聯(lián)了,并且關(guān)聯(lián)文件有問題,如果可以運(yùn)行,還好說點(diǎn),這個時候察看進(jìn)程,把可疑的進(jìn)程終止掉,這個順序的用意是,防止關(guān)聯(lián)文件重新啟動程序。
終止掉后,察看上面說的地方,是否有可疑的程序存在,有則刪除之,不能確定的話,有個簡單判斷方法,因為木馬程序為了隱藏自己,一般用了比較隱蔽的圖標(biāo),而這個又暴露了他自己,比如你看到運(yùn)行里的程序,圖標(biāo)居然是個文本文件的圖標(biāo),這肯定不對,因為文本文件圖標(biāo)本身不可能在自動運(yùn)行里面的。
刪除之前紀(jì)錄下文件位置,刪除后,找到文件,刪除之,如果不能刪除,那么就還在運(yùn)行,也就是剛才進(jìn)程里面沒有終止掉,或者沒在進(jìn)程里,看看服務(wù)里有沒有相關(guān)的部分,然后停止或者刪除。如果文件不能刪除,下次啟動到安全模式,把文件刪除。
察看txt和exe等等文件的關(guān)聯(lián),恢復(fù)默認(rèn)設(shè)置,有的是修改dll文件的打開方式的,也修改回去。有的人要問了,這么多文件關(guān)聯(lián),如何看的出來呢?
其實(shí),你刪除文件并且重新啟動后,看看那些刪除掉的東西是否有死灰復(fù)燃了,通過這些,很容易判斷是通過什么方式重新加載的。
察看上面說的其他地方,是否有了變化,因為其他地方變化是很容易看的出來的,修改并且刪除相關(guān)文件。
在執(zhí)行完了這些東西后,我們再重起一次計算機(jī),察看是否還有問題,如果還有,就要進(jìn)一步檢查了。
有的程序比較黑,讓你無法判斷,進(jìn)程里沒什么太大變化,比如你看到運(yùn)行里有c:\windows\system\scanregw.exe,你會怎么辦?其實(shí),這樣的程序如果熟悉,就會知道了,scanregw文件是在windows目錄,而不是system目錄,所以察看的時候,一定要注意目錄是否正確。還有的程序,是把原來程序替換掉,然后自己代替位置,不過一般會把原來程序改名或移動位置的,比如QQ密碼盜賊,就是替換掉了輸入法,這個也是比較容易判斷的,可以察看運(yùn)行里的正常程序的文件時間,文件大小來判斷是否已經(jīng)被替換,可以通過系統(tǒng)文件檢查器來協(xié)助完成。
現(xiàn)在蠕蟲很多通過scripts來調(diào)用,很多是通過系統(tǒng)漏洞,這個可以通過補(bǔ)丁來解決。
現(xiàn)在拿我第一次清除新happy病毒(VBS.KJ)的過程,來介紹一下,因為當(dāng)時它剛出現(xiàn),所以具體癥狀和發(fā)作都沒看資料,所以應(yīng)該會對大家有點(diǎn)幫助吧。
在我察看的時候,首先打開注冊表,查看了進(jìn)程,看到幾個可疑的,終止掉,看到注冊表里運(yùn)行中有kernel.dll,查找到文件,刪除掉,刪除之前我多了個心眼,察看了下這個文件內(nèi)容,是scripts的,可見dll文件關(guān)聯(lián)被修改了,回去找到dllfiles,把里面的東西按照正常的鍵值修改回來。這個程序主要是還生成了很多desktop.ini和folder.htt,取消按web頁查看,防止察看的時候運(yùn)行里面程序,查找文件,并且刪除掉時間比較新的那些。重新啟動,然后察看注冊表里被我修改了的東西,是否有變化,沒有變化,進(jìn)程里也正常,本次查殺過程結(jié)束。
另外一次也很有代表性,系統(tǒng)98,在一次玩游戲的時候,F(xiàn)TP2000看到進(jìn)程里有個qq密碼盜賊1.2版,現(xiàn)在就介紹這個程序的查殺過程。
查看進(jìn)程,注冊表,刪除掉可疑的東西以及文件,基本操作跟上面差不多,重新啟動計算機(jī)后,居然它又出現(xiàn)了,重新上面步驟,重新啟動到安全模式,這次沒有出現(xiàn),察看注冊表,也沒什么可疑的。
這個時候想到是否替換了文件,目光放到了internat.exe文件,也就是輸入法文件。查找文件,居然找到了三個,其中兩個文件大小一樣,另外一個大小不同,時間也不一樣,當(dāng)然,有一個擴(kuò)展名非exe,擴(kuò)展名是什么現(xiàn)在也忘了,不好意思,把這個不是exe的改回exe,其他文件改名備份,修改完后,重新啟動,這個時候,進(jìn)程里沒有了這個文件,說明他就是利用了輸入法這個程序做掩護(hù)來運(yùn)行的,然后把備份的文件刪除,這次查殺結(jié)束。