任何病毒和木馬存在於系統中,都無法徹底和進程脫離關系,即使采用了隱藏技術,也還是能夠從進程中找到蛛絲馬跡,因此,查看系統中活動的進程成為我們檢測病毒木馬最直接的方法。但是系統中同時運行的進程那麼多,哪些是正常的系統進程,哪些是木馬的進程,而經常被病毒木馬假冒的系統進程在系統中又扮演著什麼角色呢?請看本文。
病毒進程隱藏三法
當我們確認系統中存在病毒,但是通過“任務治理器”查看系統中的進程時又找不出異樣的進程,這說明病毒采用了一些隱藏措施,總結出來有三法:
1.以假亂真
系統中的正常進程有:svchost.exe、explorer.exe、iexplore.exe、winlogon.exe等,可能你發現過系統中存在這樣的進程:svch0st.exe、explore.exe、iexplorer.exe、winlogin.exe。對比一下,發現區別了麼?這是病毒經常使用的伎倆,目的就是迷惑用戶的眼睛。通常它們會將系統中正常進程名的o改為0,l改為i,i改為j,然後成為自己的進程名,僅僅一字之差,意義卻完全不同。又或者多一個字母或少一個字母,例如explorer.exe和iexplore.exe本來就輕易搞混,再出現個iexplorer.exe就更加混亂了。假如用戶不仔細,一般就忽略了,病毒的進程就逃過了一劫。
2.偷梁換柱
假如用戶比較心細,那麼上面這招就沒用了,病毒會被就地正法。於是乎,病毒也學聰明了,懂得了偷梁換柱這一招。假如一個進程的名字為svchost.exe,和正常的系統進程名分毫不差。那麼這個進程是不是就安全了呢?非也,其實它只是利用了“任務治理器”無法查看進程對應可執行文件這一缺陷。我們知道svchost.exe進程對應的可執行文件位於“C:WINDOWSsystem32”目錄下(Windows2000則是C:WINNTsystem32目錄),假如病毒將自身復制到“C:WINDOWS”中,並改名為svchost.exe,運行後,我們在“任務治理器”中看到的也是svchost.exe,和正常的系統進程無異。你能辨別出其中哪一個是病毒的進程嗎?
3.借屍還魂
除了上文中的兩種方法外,病毒還有一招終極大法——借屍還魂。所謂的借屍還魂就是病毒采用了進程插入技術,將病毒運行所需的dll文件插入正常的系統進程中,表面上看無任何可疑情況,實質上系統進程已經被病毒控制了,除非我們借助專業的進程檢測工具,如卡卡助手中的功能,否則要想發現隱藏在其中的病毒是很困難的。
系統進程解惑
上文中提到了很多系統進程,這些系統進程到底有何作用,其運行原理又是什麼?下面我們將對這些系統進程進行逐一講解,相信在熟知這些系統進程後,就能成功破解病毒的“以假亂真”和“偷梁換柱”了。
svchost.exe
常被病毒冒充的進程名有:svch0st.exe、schvost.exe、scvhost.exe。隨著Windows系統服務不斷增多,為了節省系統資源,微軟把很多服務做成共享方式,交由svchost.exe進程來啟動。而系統服務是以動態鏈接庫(DLL)形式實現的,它們把可執行程序指向scvhost,由cvhost調用相應服務的動態鏈接庫來啟動服務。我們可以打開“控制面板”→“治理工具”→服務,雙擊其中“ClipBook”服務,在其屬性面板中可以發現對應的可執行文件路徑為“C:WINDOWSsystem32clipsrv.exe”。再雙擊“Alerter”服務,可以發現其可執行文件路徑為“C:WINDOWSsystem32svchost.exe -k LocalService”,而“Server”服務的可執行文件路徑為“C:WINDOWSsystem32svchost.exe -k netsvcs”。正是通過這種調用,可以省下不少系統資源,因此系統中出現多個svchost.exe,其實只是系統的服務而已。
在Windows2000系統中一般存在2個svchost.exe進程,一個是RPCSS(RemoteProcedureCall)服務進程,另外一個則是由很多服務共享的一個svchost.exe;而在WindowsXP中,則一般有4個以上的svchost.exe服務進程。假如svchost.exe進程的數量多於5個,就要小心了,很可能是病毒假冒的,檢測方法也很簡單,使用一些進程治理工具,例如Windows優化大師的進程治理功能,查看svchost.exe的可執行文件路徑,假如在“C:WINDOWSsystem32”目錄外,那麼就可以判定是病毒了。
explorer.exe
常被病毒冒充的進程名有:iexplorer.exe、expiorer.exe、explore.exe。explorer.exe就是我們經常會用到的“資源治理器”。假如在“任務治理器”中將explorer.exe進程結束,那麼包括任務欄、桌面、以及打開的文件都會統統消失,單擊“任務治理器”→“文件”→“新建任務”,輸入“explorer.exe”後,消失的東西又重新回來了。explorer.exe進程的作用就是讓我們治理計算機中的資源。
explorer.exe進程默認是和系統一起啟動的,其對應可執行文件的路徑為“C:Windows”目錄,除此之外則為病毒。
iexplore.exe
常被病毒冒充的進程名有:iexplorer.exe、iexploer.exeiexplorer.exe進程和上文中的explorer.exe進程名很相像,因此比較輕易搞混,其實iexplorer.exe是Microsoft Internet Explorer所產生的進程,也就是我們平時使用的IE浏覽器。知道作用後辨認起來應該就比較輕易了,iexplorer.exe進程名的開頭為“ie”,就是IE浏覽器的意思。
iexplore.exe進程對應的可執行程序位於C:ProgramFilesInternetExplorer目錄中,存在於其他目錄則為病毒,除非你將該文件夾進行了轉移。此外,有時我們會發現沒有打開IE浏覽器的情況下,系統中仍然存在iexplore.exe進程,這要分兩種情況:
1.病毒假冒iexplore.exe進程名。
2.病毒偷偷在後台通過iexplore.exe干壞事。因此出現這種情況還是趕緊用殺毒軟件進行查殺吧。
rundll32.exe
常被病毒冒充的進程名有:rundl132.exe、rundl32.exe。rundll32.exe在系統中的作用是執行DLL文件中的內部函數,系統中存在多少個Rundll32.exe進程,就表示Rundll32.exe啟動了多少個的DLL文件。其實rundll32.exe我們是會經常用到的,他可以控制系統中的一些dll文件,舉個例子,在“命令提示符”中輸入“rundll32.exe user32.dll,LockWorkStation”,回車後,系統就會快速切換到登錄界面了。rundll32.exe的路徑為“C:Windowssystem32”,在別的目錄則可以判定是病毒。
spoolsv.exe
常被病毒冒充的進程名有:spoo1sv.exe、spolsv.exe。spoolsv.exe是系統服務“Print Spooler”所對應的可執行程序,其作用是治理所有本地和網絡打印隊列及控制所有打印工作。假如此服務被停用,計算機上的打印將不可用,同時spoolsv.exe進程也會從計算機上消失。假如你不存在打印機設備,那麼就把這項服務關閉吧,可以節省系統資源。停止並關閉服務後,假如系統中還存在spoolsv.exe進程,這就一定是病毒偽裝的了。
限於篇幅,關於常見進程的介紹就到這裡,我們平時在檢查進程的時候假如發現有可疑,只要根據兩點來判定:1.仔細檢查進程的文件名;2.檢查其路徑。通過這兩點,一般的病毒進程肯定會露出馬腳。