萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 網路安全 >  >> 資訊安全防護

非法進程識別與清除實戰:從任務管理器到註冊表的完整鏈路

進程是系統運行的縮影,準確識別非法進程是手動查殺木馬/病毒的核心技能。本文提供從可視化工具到註冊表/服務/安全模式的完整清除鏈路。

一、進程可視化與基線建立

  • 打開方式:Ctrl+Shift+Esc (任務管理器) / Win+R → resmon (資源監視器) / Process Explorer (Sysinternals,推薦)。
  • 建立乾淨系統基線:全新安裝/確認乾淨系統上,導出進程清單 (名稱、PID、路徑、命令列、簽名者、父進程、網絡連接、DLL 加載) → 保存為 CSV/JSON,作為後續比對基準。
  • 常見合法系統進程:
    System (PID 4)、smss.exe、csrss.exe、wininit.exe、services.exe、lsass.exe、winlogon.exe、explorer.exe、svchost.exe (多實例)、spoolsv.exe、taskhostw.exe、dwm.exe、fontdrvhost.exe、SearchIndexer.exe 等。

二、非法進程識別五大紅旗

紅旗指標說明驗證方法
路徑異常不在 C:\Windows\System32/SysWOW64/Program Files 等標準目錄Process Explorer → Image 道 → Verify Signatures / Properties → Image Path
無數位簽名/簽名無效/自簽名合法微軟/知名廠商程式均有有效 EV 代碼簽名Process Explorer → Verify Signatures (綠色=受信任,紅色=無效/無簽名)
命令列參數異常包含編碼腳本、下載命令、反彈 Shell 特徵 (powershell -enc、cmd /c、wscript //E:jscript)Process Explorer → Image 道 → Command Line
父進程異常如 winword.exe 產生 cmd.exe/powershell.exe、svchost.exe 非 services.exe 啟動Process Explorer → Tree View / Parent Process
網絡行為異常非業務端口、連接惡意 IP/域名、大量出站流量、周期性心跳Process Explorer → TCP/IP 道 / TCPView / netstat -ano

三、三種清除路徑(由易到深)

路徑 1:註冊表啟動項清理(最常見持久化點)

  1. Win+R → regedit (管理員)。
  2. 檢查並刪除可疑鍵值:
    • HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
    • HKLM\...\RunOnce
    • HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
    • HKCU\...\RunOnce
    • HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Run (32 位程式)
    • HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices (舊版)
  3. 同步檢查 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run、HKCU\...\Policies\Explorer\Run。

路徑 2:服務管理器 (services.msc) 清理惡意服務

  1. Win+R → services.msc。
  2. 關注「啟動類型 = 自動」且「登入身份 = Local System/Network Service」的非標準服務。
  3. 查看「恢復」頁籤:若設置「重新啟動電腦」極可能為惡意服務防殺機制。
  4. 停用服務 → 啟動類型改「已禁用」。
  5. 徹底刪除:Win+R → regedit → HKLM\SYSTEM\CurrentControlSet\Services\服務名 → 刪除整個鍵 → 重啟。

路徑 3:安全模式/WinPE 環境下物理刪除文件(終極清除)

  1. 重啟進入安全模式 (F8/Shift+重啟) 或啟動 WinPE/U盤 PE。
  2. 在乾淨環境下,病毒進程不運行、文件鎖定釋放。
  3. 根據前兩步定位的文件路徑,永久刪除 (Shift+Del) 可疑文件。
  4. 清理殘留註冊表/計劃任務/啟動文件夾/Winlogon/Userinit/映像劫持/側載 DLL 等持久化點。
  5. 重啟進入正常模式,再次掃描驗證。

四、進階對抗:偽裝 SYSTEM 權限的惡意進程

  • 錯覺:「病毒無法獲得 SYSTEM 權限」。錯誤! 服務安裝、計劃任務 (SYSTEM 權限)、提權漏洞 (CVE-2021-40444、PrintNightmare 等)、DLL 劫持、Token 竊取/偽造均可獲取 SYSTEM。
  • 辨別:路徑 + 簽名 + 命令列 + 父進程 + 網絡行為 綜合判斷,單一指標不可信。
  • 工具:Process Hacker 2/3 (顯示 Token 權限/完整性等級/句柄/線程/內存區域)、Autoruns (全啟動項掃描)。

五、自動化腳本:PowerShell 快速審計可疑啟動項

$runPaths = @(
    'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run',
    'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce',
    'HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run',
    'HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce',
    'HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Run',
    'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices'
)
foreach ($path in $runPaths) {
    if (Test-Path $path) {
        Get-ItemProperty $path | ForEach-Object {
            $_.PSObject.Properties | Where-Object { $_.Name -notmatch '^PS' } | ForEach-Object {
                $val = $_.Value
                if ($val -and ($val -match '^[^:]*[\\/][^\\/]*\.(exe|bat|cmd|vbs|ps1|js|jse|wsf|scr|msi|dll)$' -or $val -match '(Temp|AppData|Public|ProgramData)' -or $val -match '^\s*[a-z]{1,8}\.exe\s*$')) {
                    Write-Warning "Suspicious: $path \ $($_.Name) = $val"
                }
            }
        }
    }
}

掌握進程分析方法論,配合正確工具鏈與自動化腳本,非法進程無處遁形。**持續練習、建立基線、保持好奇**,是安全分析師的核心素養。

copyright © 萬盛學電腦網 all rights reserved