查看單個文章
舊 2006-01-21, 03:03 PM   #1
psac
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設 木馬辨認和如何排除

看目前網路上最猖獗的病毒估計非木馬程序莫數了,
特別是在過去的2004年木馬程序的攻擊性也有了很大的加強,
在工作隱藏方面,做了較大的改動,
不再採用獨立的EXE可執行文件形式,而是改為內核嵌入方式、
遠端執行緒插入技術、掛接PSAPI等,這些木馬也是目前最難對付的。
本期就教你搜尋和清除執行緒插入式木馬。

操作步驟:

1.通過自動執行機制查木馬
一說到搜尋木馬,許多人馬上就會想到通過木馬的啟動項來尋找
「蛛絲馬跡」,具體的地方一般有以下幾處:

1)註冊表啟動項:
在「開始/執行」中輸入「regedit」開啟註冊表編輯器,
依次展開[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\],
檢視下面所有以"Run"開頭的項,
其下是否有新增的和可疑的鍵值,也可以通過鍵值所指向的文件路徑
來判斷,是新安裝的軟體還是木馬程序。
另外[HKEY LOCAL MACHINE\Software\classes\exefile\shell\open\command\]
鍵值也可能用
來載入木馬,
比如把鍵值修改為「X:\windows\system\ABC "%1"%」。

2)系統服務
有些木馬是通過增加服務項來實現自啟動的,
大家可以開啟註冊表編輯器,在[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\
CurrentVersion\Runservices]下搜尋可疑鍵值,
並在[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\]
下檢視的可疑主鍵。
然後禁用或移除木馬增加的服務項:在「執行」
中輸入「Services.msc」開啟服務設定視窗,
裡面顯示了系統中所有的服務項及其狀態、啟動檔案類型和登入性質等訊息。
找到木馬所啟動的服務,
雙按開啟它,把啟動檔案類型改為「已禁用」,確定後結束。
也可以通過註冊表進行修改,
依次展開「HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\
服務顯示名稱」鍵,
在右邊視窗中找到二進制值「Start」,修改它的數值數,
「2」表示自動,「3」表示手動,而「4」表示已禁用。
當然最好直接移除整個主鍵,平時可以通過註冊表匯出功能,
制作備份這些鍵值以便隨時對照。

   3)開始選單啟動組
   現在的木馬大多不再通過啟動表單進行隨機啟動,
但是也不可掉以輕心。
如果發現在「開始/程序/啟動」中有新增的項,
可以右擊它選項「搜尋目標」到文件的目錄下檢視一下,
如果文件路徑為系統目錄就要多加小心了。也可以在註冊表中直接檢視,
它的位置為[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders],
鍵名為Startup。

4)系統INI文件Win.ini和System.ini
系統INI文件Win.ini和System.ini裡也是木馬喜歡隱蔽的場所。
選項「開始/執行」,輸入「msconfig」彈出系統組態實用程序,
檢查Win.ini的[Windows]小節下的load和run字段後面有沒有什麼可疑
程序,
一般情況下「=」後面是空白的;還有在System.ini的[boot]
小節中的Shell=Explorer後面也要進行檢查。

5)批次處理文件
如果你使用的是WIN 9X系統,C碟根目錄下「AUTOEXEC.BAT」
和WINDOWS目錄下的「WinStart.bat」兩個批次處理文件也要看一下,
裡面的指令一般由安裝的軟體自動產生,在系統預設會將它們自動載入。
在批次處理文件語句前加上「echo off」,啟動時就只顯示指令的執行結果,而不顯示指令的本身;
如果再在前面加一個「@」字元就不會出現任何提示,
以前的很多木馬都通過此方法執行。

2.通過文件對比查木馬

最近新出現的一種木馬。它的主程序成功載入後,
會將自身做為執行緒插入到系統工作SPOOLSV中,
然後移除系統目錄中的病毒文件和病毒在註冊表中的啟動項,
以使反病毒軟體和用戶難以查覺,
然後它會監視用戶是否在進行關機和重啟等操作,如果有,
它就在系統關閉之前重新新增病毒文件和註冊表啟動項。
下面的幾招可以讓它現出原形(下面均以Win XP系統為例):

1)對照制作備份的常用工作
大家平時可以先制作備份一份工作列表,以便隨時進行對比搜尋可疑工作。
方法如下:開機後在進行其他操作之前即開始制作備份,
這樣可以防止其他程序載入工作。
在執行中輸入「cmd」,然後輸入「tasklist /svc 》X:\processlist.txt」
(提示:不包括引號,參數前要留空格,後面為文件儲存路徑)Enter鍵。
這個指令可以顯示應用程式和本機或遠端系統上執行的相關的工作/
工作的列表。輸入「tasklist /?」可以顯示該指令的其它參數。

2)對照制作備份的系統DLL文件列表
對於沒有獨立工作的DLL木馬怎麼辦嗎?
既然木馬打的是DLL文件的主意,
我們可以從這些文件下手,一般系統DLL文件都儲存在system32資料夾下,
我們可以對該目錄下的DLL檔案名等訊息作一個列表,
開啟指令行視窗,
利用CD指令進入system32目錄,然後輸入「dir *.dll》X:\listdll.txt」敲Enter鍵,
這樣所有的DLL檔案名都被記錄到listdll.txt文件中。
日後如果懷疑有木馬侵入,
可以再利用上面的方法制作備份一份文件列表「listdll2.txt」,
然後利用「UltraEdit」等文本編輯工具進行對比;
或者在指令行視窗進入文件儲存目錄,輸入「fc listdll.txt listdll2.txt」,
這樣就可以輕鬆發現那些發生更改和新增的DLL文件,
進而判斷是否為木馬文件。

3)對照已載入模組
頻繁安裝軟體會使system32目錄中的文件發生較大變化,
這時可以利用對照已載入模組的方法來縮小搜尋範圍。
在「開始/執行」中輸入「msinfo32」開啟 「系統資訊」,
展開「軟體環境/載入的模組」,
然後選項「文件/匯出」把它制作備份成文本文件,
需要時再制作備份一個進行對比即可。

4)檢視可疑連接阜
所有的木馬只要進行連接,接收/傳送資料則必然會開啟連接阜,
DLL木馬也不例外,
這裡我們使用netstat指令檢視開啟的連接阜。我們在指令行視窗中輸入
「netstat -an」顯示出顯示所有的連接和偵聽連接阜。
Proto是指連接使用的傳輸協定名稱,Local Address是本機電腦的IP位址和連接正在使用的連接阜號,
Foreign Address是連接該連接阜的遠端電腦的IP位址和連接阜號,
State則是表明TCP連接的狀態。
Windows XP所帶的netstat指令比以前的版本多了一個-O參數,
使用這個參數就可以把連接阜與工作對應起來。
輸入「netstat /?」可以顯示該指令的其它參數。

接著我們可以通過份析所開啟的連接阜,將範圍縮小到具體的工作上,
然後使用工作分析軟體,
例如《WINDOWS最佳化大師》目錄下的WinProcess程序,
來搜尋嵌入其中的木馬程序。
有些木馬會通過連接阜劫持或者連接阜重用的方法來進行通信的,
一般它們會選項139、80等常用連接阜,
所以大家分析時要多加注意。也可以利用網路嗅探軟體
(如:Commview)來瞭解開啟的連接阜到底在傳輸些什麼資料.
__________________
http://bbsimg.qianlong.com/upload/01/08/29/68/1082968_1136014649812.gif
psac 目前離線  
送花文章: 3, 收花文章: 1631 篇, 收花: 3205 次