查看單個文章
舊 2007-10-19, 01:14 PM   #2 (permalink)
yoyo007
中文化 作者
榮譽勳章
UID - 261912
在線等級: 級別:8 | 在線時長:105小時 | 升級還需:12小時級別:8 | 在線時長:105小時 | 升級還需:12小時級別:8 | 在線時長:105小時 | 升級還需:12小時
註冊日期: 2007-02-07
文章: 438
精華: 0
現金: 10684 金幣
資產: 16404 金幣
預設

文章轉自:偉大的網際網路...
編輯整理:
http://www.centurys.net/index.php

手動清除 Ntdll32.dll 木馬病毒 W32.Fujacks!html


一、病毒類型:W32.Fujacks!html Win32.troj.agent.s.412671

二、載入方式:利用驅動,凌駕於所有應用程式之上。(包括 COM)

Windows\system32\Ntdll32.dll 感染了 [Win32.troj.agent.s.412671] 病毒,卻無法刪除;就算在安全模式中進入登錄檔想刪除相關機碼也不行。

該木馬病毒執行後,會向系統加入一個名為 Internet Connection Manager (管理 Internet 網路連線) 的自啟動系統服務 (用於實現遠端監控),來源檔為 Windows\system32\internet.exe,並對 IE 瀏覽器裝上一個名為 [IEHELPER.DLL] 的外掛,以上就是這個程式的最終目的。

到此為止,這都只是個很普通的木馬程式做的事情,剩下的就是它為了保證這兩項能在系統中常駐所花的心思了,而它厲害的地方也在於此。

程式執行時,會在 Windows\system32\driver 資料夾下加入一個名為 [mspcidrv.sys] 的系統驅動,並在 HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows\Appinit_Dlls 下寫入一個 NTDLL32.DLL 機碼 (注意,這個大有用處);同時也向 HKLM\Software\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects 寫入了該機碼 (啟動瀏覽器時自動啟動 NTDLL32.DLL);向 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 加入了兩處啟動項,分別都指向 Windows\system32.internet.exe。

驅動 [mspcidrv.sys] 載入後會改寫三個系統服務描述表,分別為 NtDeleteKey、NtDeleteValueKey、NtSetValueKey,並 HOOK,使得針對那兩個最終目的的登錄機碼的 [刪除登錄機碼]、[刪除登錄值]、[變更登錄值] 這三個功能失去作用,這是為了保護 Internet Connection Manager 系統服務和 IEHELPER.DLL 外掛的登錄機碼不被清除。

而 HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows\Appinit_Dlls 下的這個 NTDLL32.DLL 機碼,就是實現記憶體恢復的關鍵。實際上這是一個插入系統處理序的 DLL 檔案,在程式啟動時,它就作為一個系統緒程插入 explorer 處理序中,並對登錄機碼進行監視,它分別檢測上述兩個最終目的的兩處機碼,發現它們被刪除就立即重寫,這一招的作用是:

在驅動還在的情況下,如果登錄機碼被刪除 (透過某些工具軟體如:Rootkit Unhooker),就立刻重寫;保證兩個最終功能的完整,是因為這個緒程自己本身也是要靠驅動保護的,所以在驅動失效,而它自己的登錄機碼又已被清除的情況下,它也只能維持在驅動被清除之前的那一次處理序插入,以在保證下次開機時,兩個最終目的的啟動項完整。

三、清除方法:

第一種方法:用 Rootkit Unhooker 清除。

1. 進入 Windows 工作管理員 (同時按 Ctrl+Alt+Del),到 [處理程序] 分頁中
  找到並結束 [explorer] 處理序;
  切換到 [應用程式] 分頁按右鍵 → [新工作 (執行...) ] 選取並執行您安裝
  的 Rootkit Unhooker 程式。

註:綠化版直接執行 [RKUnhooker.exe] 即可。

2. 切換到 Rootkit Unhooker 程式介面的分頁 [SSDT] 按 [掛鉤] 排序
  找 [模組] 欄位中的值:mspcidrv.sys ← 在所有包含此值的行上按
  右鍵 → [解開選定的掛鉤]。

3. 切換到 [處理序] 分頁找 [處理序名稱] 欄位內所有有關:
  internet.exe 、mspcidrv.sys、Ntdll32.dll 和 IEHELPER.DLL
  按右鍵 → [中止處理序]。

註:蒐集的教程採用的是 RkU 舊版,我重新編輯對應到此 RkU 新版;
  新舊版本在介面上的顯示略有差異,請視程式介面自行切換分頁並
  找出上述提到的相關檔案。


4. 開啟登錄編輯程式刪除登錄的服務 (執行 → regedit.exe)
  在 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services 找到
  有關 internet.exe 和 mspcidrv.sys 的兩個服務並將之刪除;
  然後到 HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows
  將 Appinit_Dlls 裡的值去掉,並在登錄機碼中搜尋所有有關:
  internet.exe 、mspcidrv.sys、Ntdll32.dll、IEHELPER.DLL 的值
 ↑將他們刪除。

5. 主要有以下病毒檔案:

  %systemroot%\system32\NTDLL32.DLL
  %systemroot%\system32\IEhelper.dll
  %systemroot%\system32\IEShell32.dll
  %systemroot%\system32\internet.exe
  %systemroot%\system32\drivers\mspcidrv.sys

  但這時因為還有其它檔案在呼叫這幾個檔案,您可能在正常模式下刪除不掉,
  可以開啟工作管理員按 [關機] 選擇 [重新開機] 後,進入安全模式中刪除。

6. OK,整個世界清淨多了。

第二種方法:在控制台下也可以停用驅動和服務。

1. 先安裝控制台:開始 → 執行 → [X:\i386\winnt32.exe /cmdcons]
  X: 為您的 I386 所在路徑,依照提示安裝就行了,重開機後可看見多重系統
  開機選單下多了一個 Microsoft Windows XP Recovery Console 控制台。
  進入控制台,輸入數字選定您要進入的系統,輸入管理員密碼登入。

2. 進入控制台,輸入 Listsvc 指令後按 Enter,在螢幕上會出現目前系統中
  已有的所有服務和驅動程式,以及其狀態說明。找到要停用的可疑服務或驅動
  程式,輸入指令 disable 要停用的程式或服務,按 Enter 後螢幕上會顯示出
  該服務以前的狀態和完成後的狀態;
  如果想僱用某個程式或服務,則需輸入Enable 要停用的程式或服務,
  按 Enter 後即可。控制台說明指令:help 可查閱所有可使用的指令。
yoyo007 目前離線  
送花文章: 318, 收花文章: 331 篇, 收花: 1201 次
回覆時引用此帖
向 yoyo007 送花的會員:
mini (2007-10-19)
感謝您發表一篇好文章