[資安工具] 004 Mimikatz 初學者指南:Windows 資安評估與滲透測試入門

Mimikatz 是一款功能強大的 Windows 平台下資安評估及滲透測試工具,常用於評估系統的安全性,也常被不法人士用於惡意行為。以下將針對初學者簡要介紹 Mimikatz 的基本概念、使用情境、操作方法及注意事項。


1. 什麼是 Mimikatz

Mimikatz 由法國安全專家 Benjamin Delpy 開發,最初用於研究 Windows 系統的驗證與憑證儲存方式,隨後因其可提取明文密碼與金鑰等功能而聞名。簡單來說,Mimikatz 能協助資安人員和滲透測試人員:
– 讀取系統或網域內的使用者憑證(如明文密碼、雜湊值、Kerberos 票證等)
– 測試與驗證 Windows 中的相關安全性機制


2. 什麼時候使用 Mimikatz

在以下情況下,資安或滲透測試人員可能會考慮使用 Mimikatz:

  • 內部網路滲透測試:測試企業或組織網路中的權限提升與側向移動風險。
  • 驗證系統安全性:檢查 Windows 系統是否能夠取得明文憑證、測試安全性設定是否存在弱點。
  • 事件調查與分析:用於調查可能發生的內部不當存取、憑證外洩事件,藉此了解攻擊者可能獲取了哪些憑證。

3. 該如何使用 (情境)

  1. 下載並安裝:到 官方 GitHub 或其他可信來源取得 Mimikatz 執行檔。
  2. 在管理員權限下執行:由於 Mimikatz 會操作高權限的系統資源,務必在「以系統管理員身份執行」的命令提示字元(CMD)或 PowerShell 中運行。
  3. 載入模組與執行命令:Mimikatz 內建許多模組與指令,執行對應的模組或指令來讀取或轉儲(dump)憑證與票證。
  4. 分析輸出結果:將取得的憑證或資訊進行分析,並評估可能的風險與弱點。

4. 使用的時候需要注意什麼

  • 合法性與合約範圍:使用 Mimikatz 進行滲透測試或系統檢測時,需確保已取得合法授權與合約範圍內的測試許可。
  • 權限管控:避免在生產環境或未經授權的系統上執行,並且確保完成檢測後及時撤銷或清除相關的權限和工具。
  • 工具防偵測:許多防毒軟體和 EDR (Endpoint Detection & Response) 會標記 Mimikatz 為威脅程式,執行前需瞭解可能被阻擋或產生警報。
  • 安全管理:Mimikatz 取得的憑證或密碼極度敏感,請注意保存與銷毀方式,避免二度洩漏。

基本使用

在已提權的命令提示字元或 PowerShell 下,直接執行:

mimikatz.exe

進入 Mimikatz 互動介面後,即可輸入各類指令。


常見指令序列

privilege::debug           # 提升權限
sekurlsa::logonpasswords   # 讀取登入憑證
  1. privilege::debug:嘗試讓目前執行的 Mimikatz 進程取得 Debug 權限,以便可以讀取或操作系統的相關資訊。
  2. sekurlsa::logonpasswords:顯示目前系統中使用者的登入資訊及其明文/雜湊憑證。

其他常用功能

sekurlsa::tickets   # 列出 Kerberos 票證
lsadump::sam        # 導出 SAM (Security Account Manager) 資料庫
lsadump::cache      # 顯示緩存的憑證 (Credential Caching)
  • sekurlsa::tickets:可列出目前記憶體中可用的 Kerberos 票證,供進一步分析或橫向移動。
  • lsadump::sam:將本機 SAM 資料庫導出,以分析或測試弱密碼情況。
  • lsadump::cache:顯示系統中暫存的使用者憑證資訊,用於檢查 Credential Caching 的風險。

小結

Mimikatz 是一把「雙面刃」,在資安領域與惡意攻擊之間存在著微妙的平衡。透過正確且合規的使用,資安人員可以深度檢測系統中的安全弱點,並加以防範。然而,也必須謹慎管控 Mimikatz 取得的關鍵資訊,避免在檢測過程或之後造成額外的資安風險。建議初學者在實際操作前,先充分了解原理並於合法授權與測試環境中進行練習。

繼續深入:Mimikatz 進階觀念與防範

在前面部分,我們針對初學者介紹了 Mimikatz 的基本使用方法與常見指令。以下內容將再進一步補充進階的使用情境與常見防範建議,協助讀者更全面地理解 Mimikatz 在資安領域的應用與風險。


進階使用情境

1. Pass-the-Hash (PtH)

  • 原理:利用抓取 Windows 使用者雜湊(NTLM Hash),並以此直接進行身份驗證,而無需明文密碼。
  • 使用方式:在 Mimikatz 中讀取 NTLM Hash 後,可使用 sekurlsa::pth 指令注入該雜湊,並模擬該使用者登入其他系統或服務。
  • 應用場景:若目標系統啟用了單一登入或互信機制,攻擊者只需取得一組有效的 NTLM 雜湊,即可橫向移動到更多系統。

2. Pass-the-Ticket (PtT)

  • 原理:針對 Kerberos 驗證機制,攻擊者可直接使用取得的 Ticket(例如 TGT/TGS)進行伺服器存取。
  • 使用方式:在 sekurlsa::tickets 中提取 Kerberos 票證後,透過 kerberos::ptt 指令來注入該票證。
  • 應用場景:在 Active Directory 環境中,若能取得 Domain Admin 的 Kerberos 票證,就能迅速存取整個網域資源。

3. Golden Ticket / Silver Ticket

  • Golden Ticket:指的是利用 Domain Key (KRBTGT 帳號的雜湊) 生成的有效 TGT。取得 Golden Ticket 後,幾乎可以在整個網域內擁有無限制的存取權。
  • Silver Ticket:攻擊者僅需取得某服務帳號的雜湊(如服務主體名稱 SPN),即可在該服務中偽造 TGS,而不需要 Domain Key。

防範與檢測建議

雖然 Mimikatz 功能強大,但企業與組織仍可透過加強系統設定與監控手段,來降低遭受此類工具攻擊的風險。

1. 強化帳號管理與密碼策略

  • 採用複雜密碼:設定最少長度與複雜度,減少弱密碼被破解或暴力猜測的機會。
  • 定期更新密碼:包含本機系統管理員帳號與網域管理員帳號,避免長期不變的密碼被長期利用。
  • 分權管理:減少 Domain Admin 帳號的使用頻率,僅在需要的情境下以高權限操作。

2. 最小化高權限存取

  • 最小權限原則:確保使用者只擁有其工作內容所需的最低權限,避免攻擊者取得一般使用者權限後仍能輕易橫向移動。
  • 隔離重要服務:將關鍵系統(如 Domain Controller)與一般工作站分離,使用網段隔離與防火牆規則進行保護。

3. 加強 Event Log 與監控

  • 啟用並收集 Windows 事件記錄:如「Security」記錄中有關登錄、登入失敗、權限變更等事件。
  • 行為基線檢測:利用 SIEM (Security Information and Event Management) 或 EDR (Endpoint Detection & Response) 追蹤異常行為(如短時間內大量的認證失敗)。
  • 及時回應警示:若發現可疑程序嘗試存取 LSASS(Local Security Authority Subsystem Service)或注入高權限,應立即追查原因。

4. 降低 Credential 存留風險

  • 禁用 WDigest 明文儲存:在新版本 Windows 中已預設停用,可確保明文密碼不輕易被抓取。
  • LSA Protection:啟用 LSA Protection,使部分敏感程序在受保護模式執行,讓 Mimikatz 無法直接讀取記憶體資訊。
  • 定期檢查域控上的 KRBTGT:定期更新 KRBTGT 帳號密碼,以防止攻擊者長期利用 Golden Ticket。

Mimikatz 的常見誤解

  1. 只要部署防毒就能防堵 Mimikatz:防毒與 EDR 雖能發現並阻擋大部分已知的 Mimikatz 執行檔,但仍可能被修改版或記憶體層級的攻擊手法繞過。
  2. Mimikatz 只用於惡意行為:實際上,Mimikatz 在合法且合規的滲透測試與資安評估中扮演重要角色,也是一種驗證企業/組織防禦能力的重要工具。

建議的練習方法

若你是資安領域的初學者,建議在合法且受控的「實驗室環境」中進行 Mimikatz 操作練習:

  1. 虛擬機器環境:使用 VirtualBox 或 VMware 模擬多台 Windows 主機,包含一台模擬 Domain Controller 與幾台工作站。
  2. 設定不同層級的帳號:從一般使用者、Power User 到 Domain Admin,模擬真實企業網路的權限配置。
  3. 實際使用常見指令:嘗試 sekurlsa::logonpasswordslsadump::samsekurlsa::tickets 等,觀察系統回傳的資訊。
  4. 評估防禦成效:搭配防毒軟體或 EDR,記錄是否能偵測或阻擋 Mimikatz,了解安全產品的覆蓋程度與限制。

結語

Mimikatz 是資安領域裡不可或缺的滲透測試與研究工具,藉由深入了解並掌握其原理及運作方式,不僅能幫助我們在合法授權的情境下挖掘更多安全漏洞,也能促使我們更加謹慎地部署與管理 Windows 環境。面對可能的高階攻擊手法,落實帳號管理、權限控管及事件日誌分析,才能持續維護企業與組織的資訊安全。


延伸閱讀與參考資源

提醒:請在合法授權與合約範圍內使用本工具,切勿於未經許可的系統上進行任何操作。違法滲透與情報竊取將有可能觸犯相關法律規範。

飛飛
飛飛