在 Windows 系統安全防禦中,「隱藏帳戶」向來是駭客留置長期後門的經典手法。不同於一般的惡意程式,這類後門不依賴外部檔案,而是直接操作註冊表,將普通帳戶「克隆」為擁有系統最高權限的隱形管理員。因為它不出現在「使用者管理」介面,甚至 `net user` 指令也查不到,極難被發現,危害性極大。本文將深入解析其操作流程、核心原理,並提供檢測與防護建議,僅供安全研究與防禦參考。
開啟「命令提示字元」(cmd),輸入以下指令即可建立一個名為 `test$` 的帳戶(帳號尾碼加 `$` 即為隱藏帳戶慣例):
net user test$ /add net localgroup administrators test$ /add
第一行建立帳戶,第二行將其加入「管理員」群組,賦予最高權限。此時帳戶已具備管理員身分,但仍可在使用者清單中被發現。
要徹底隱藏,必須深入註冊表操作 SAM (Security Account Manager) 資料庫:
克隆的本質是將 Administrator 的權限鍵值(`000001F4` 下的 `F` 值)覆寫到隱藏帳戶的鍵值(`00000404` 的 `F` 值)中。
此步驟完成後,`test$` 在註冊表層面已擁有與 Administrator 完全一致的權限標識。
執行 `net user test$ /del` 刪除帳戶「空殼」(僅移除 SAM 的 Names 索引),隨後雙擊匯入修改後的 `test$.reg` 及 `user.reg`。註冊表重建索引時,會讀取已植入的管理員權限鍵值,一個完美隱形、擁有最高權限的後門帳戶就此誕生。
定期匯出 `HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users` 下所有 `00000xxx` 項的 `F` 值,建立基線資料庫。比對異動,特別關注 `F` 值被竄改為 `000001F4` (Administrator) 特徵值的項目。
預設 SAM 需本機 SYSTEM 權限才能讀寫。確保防火牆封鎖 445 埠,關閉不必要的遠端註冊表服務,防止遠端惡意操作。
工具如 Get-ADUser (PowerShell)、lsadump::sam (Mimikatz 需高權限) 可枚舉所有帳戶含隱藏帳。定期執行 `wmic useraccount get name,sid,status` 對比圖形介面清單。
隱藏帳戶克隆利用的是 Windows 權限模型的設計特性,而非漏洞。理解其原理,才能建立有效的檢測機制。企業環境建議結合「最小權限原則」、「註冊表完整性監控 (FIM)」與「行為分析 (EDR)」,將此類隱形後門的存活時間壓縮至最低。安全無絕對,持續審計才是王道。