從程序中巧妙判斷出病毒與木馬

2021-08-25 16:18:43 字數 3864 閱讀 8742

任何病毒和木馬存在於系統中,都無法徹底和程序脫離關係,即使採用了隱藏技術,也還是能夠從程序中找到蛛絲馬跡,因此,檢視系統中活動的程序成為我們檢測病毒木馬最直接的方法。

但是系統中同時執行的程序那麼多,哪些是正常的系統程序,哪些是木馬的程序中判斷出病毒,而經常被病毒木馬假冒的系統程序在系統中又扮演著什麼角色呢?請看本文。

病毒程序隱藏三法

當我們確認系統中存在病毒,但是通過「任務管理器」檢視系統中的程序時又找不出異樣的程序,這說明病毒採用了一些隱藏措施,總結出來有三法:

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是microsoftinternetexplorer所產生的程序,也就是我們平時使用的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.檢查其路徑。通過這兩點,一般的病毒程序肯定會露出馬腳。

找個管理程序的好幫手

系統內建的「任務管理器」功能太弱,肯定不適合查殺病毒。因此我們可以使用專業的程序管理工具,例如procexp。procexp可以區分系統程序和一般程序,並且以不同的顏色進行區分,讓假冒系統程序的病毒程序中判斷出病毒無處可藏。

執行procexp後,程序會被分為兩大塊,「system idle process」下屬的程序屬於系統程序,

explorer.exe」下屬的程序屬於一般程序。我們介紹過的系統程序svchost.exe、winlogon.exe等都隸屬於「system idle process」,如果你在「explorer.exe」中發現了svchost.exe,那麼不用說,肯定是病毒冒充的。

至於病毒採用的「借屍還魂」**——dll插入技術,我們曾講解過破解方法,通過檢視其dll檔案的簽名即可,這點同樣可以在procexp中做到,在此不再闡述。

從程序中巧妙判斷出病毒與木馬

任何病毒和木馬存在於系統中,都無法徹底和程序脫離關係,即使採用了隱藏技術,也還是能夠從程序中找到蛛絲馬跡,因此,檢視系統中活動的程序成為我們檢測病毒木馬最直接的方法。但是系統中同時執行的程序那麼多,哪些是正常的系統程序,哪些是木馬的程序中判斷出病毒,而經常被病毒木馬假冒的系統程序在系統中又扮演著什麼...

從程序中巧妙判斷出病毒與木馬

任何病毒和木馬存在於系統中,都無法徹底和程序脫離關係,即使採用了隱藏技術,也還是能夠從程序中找到蛛絲馬跡,因此,檢視系統中活動的程序成為我們檢測病毒木馬最直接的方法。但是系統中同時執行的程序那麼多,哪些是正常的系統程序,哪些是木馬的程序中判斷出病毒,而經常被病毒木馬假冒的系統程序在系統中又扮演著什麼...

從程序中巧妙判斷出病毒與木馬

任何病毒和木馬存在於系統中,都無法徹底和程序脫離關係,即使採用了隱藏技術,也還是能夠從程序中找到蛛絲馬跡,因此,檢視系統中活動的程序成為我們檢測病毒木馬最直接的方法。但是系統中同時執行的程序那麼多,哪些是正常的系統程序,哪些是木馬的程序中判斷出病毒,而經常被病毒木馬假冒的系統程序在系統中又扮演著什麼...