解析 Pass-the-Hash 攻擊:機制與深度防禦

在網路安全領域,我們經常強調密碼強度的重要性。然而對於攻擊者而言,密碼有時只是個「中間人」。如果他們能獲取憑證的雜湊值(Hash),就能直接將其「傳遞」(Pass)以進行身份驗證,完全不需要破解原始密碼。

什麼是 Pass-the-Hash (PtH) 攻擊?

Pass-the-hash 是一種攻擊技術,入侵者擷取使用者憑證的雜湊值,並利用它開啟一個新的驗證工作階段。由於 NTLM 等協議接受雜湊值作為身份證明,攻擊者無需知道明文密碼即可取得存取權限。

攻擊演進過程

PtH 攻擊能將單一台受駭的工作站轉變為企業內部「橫向移動」的跳板:
  • 立足點: 攻擊者透過網路釣魚或未修補的漏洞進入系統。
  • 權限提升: 為了從受保護的記憶體(如 LSASS 進程)中擷取雜湊值,攻擊者必須先取得本地管理員權限。
  • 橫向移動: 利用竊取的雜湊值,攻擊者可以冒充該使用者來存取遠端伺服器或其他工作站。
  • 終極目標: 最終目標是找到曾登入工作站的「網域管理員」(Domain Admin)雜湊值,進而取得整個網域的控制權。

企業緩解策略

有效的防禦取決於阻斷橫向移動的鏈條:
  • 分層管理 (Tiered Administration): 執行嚴格的邊界控制,確保第 0 層(網域管理員)的憑證絕不在第 2 層(一般工作站)上使用。
  • Credential Guard: 利用 Windows 基於虛擬化的安全性技術,將 NTLM 雜湊值隔離在受保護的容器中。
  • 協議限制: 盡可能禁用 NTLM 並遷移至韌性更強的 Kerberos 協議。
  • 實施 LAPS: 使用微軟的「本地管理員密碼解決方案」,確保每台機器都擁有唯一且隨機的本地管理員密碼。

監控重點

安全營運中心 (SOC) 應監控以下 PtH 攻擊跡象:
  • 異常模式: 出現成功的登入事件(Event ID 4624),其驗證套件為 NTLM,但在該事件前並無互動式登入紀錄。
  • 不可能的移動: 單一帳號在短時間內從多個不同的子網進行驗證。
  • 異常服務: 遠端系統突然建立新服務,或使用 PsExec 等工具執行遠端指令。