2004 年後木馬攻擊性大增,棄用獨立 EXE,改用核心嵌入、遠程線程插入、掛接 PSAPI 等隱藏技術,成為最難對付的威脅。本文提供系統性排查與清除指南。
regedit 檢查:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run*HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run*HKEY_LOCAL_MACHINE\Software\Classes\exefile\shell\open\command(可能被改為 X:\windows\system\ABC.exe "%1"%)檢查 RunServices 及 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ 可疑主鍵。透過 services.msc 禁用/刪除服務,或修改登錄 Start=4(禁用)。平時備份鍵值以便對照。
「開始/程式/啟動」新增項目 → 右鍵「尋找目標」檢查路徑。登錄位置:HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Startup。
msconfig 檢查 Win.ini[Windows] load/run、System.ini[boot] Shell=Explorer.exe 後是否有附加程式。
Win9x:C:\AUTOEXEC.BAT、Windows\WinStart.bat。@echo off 隱藏指令,木馬常用此法隱蔽運行。
新型木馬:主程式載入後將自身作為線程插入 SPOOLSV.EXE,刪除自身檔案與登錄啟動項,監視關機/重啟前重建。四招讓其現形:
開機前無其他操作時備份:tasklist /svc > X:\processlist.txt。懷疑中毒時再備份一份對比。
cd %systemroot%\system32 & dir *.dll > X:\listdll.txt。事後產生 listdll2.txt,用 fc 或 UltraEdit 對比,發現新增/變更的 DLL。
msinfo32.exe →「軟體環境/已載入模組」→ 匯出文字檔備份,需要時再產生一份對比。
netstat -an 顯示所有連線/監聽端口。XP 新增 -o 參數可關聯 PID。分析端口縮小至具體進程,用 WinProcess.exe(Windows 優化大師)查找嵌入木馬。注意端口劫持/重用(常用 139、80),亦可用 Commview 等嗅探工具分析傳輸內容。
建立基線、多維對比、端口關聯,三管齊下,線程插入式木馬無所遁形。