SharpZeroLogon 工具簡介
SharpZeroLogon
是一款用於利用 CVE-2020-1472 漏洞(又稱 ZeroLogon 漏洞)的工具,該漏洞影響 Windows 的 Netlogon 遠程協議(Netlogon Remote Protocol, MS-NRPC)。SharpZeroLogon
是基於 C# 編寫的漏洞利用工具,設計用於在滲透測試或安全研究中進行攻擊模擬。ZeroLogon 漏洞 是一個危險的提權漏洞,允許攻擊者繞過身份驗證,直接將自己偽裝為域控制器,並最終獲得域管理員權限。
ZeroLogon 漏洞(CVE-2020-1472)概述
- 漏洞類型:
- 身份驗證繞過。
- 影響範圍:
- 所有未打補丁的 Windows Server(包括域控制器)。
- 漏洞原因:
- Netlogon 遠程協議在身份驗證過程中允許使用空會話密鑰(全零值),這導致攻擊者可以繞過身份驗證並以高權限執行操作。
- 利用條件:
- 攻擊者需要能夠與目標域控制器進行網絡通信(例如位於內部網絡中)。
- 影響:
- 攻擊者可重置域控制器計算機帳戶的密碼,最終獲得 域管理員(Domain Admin) 權限。
SharpZeroLogon 的核心功能
SharpZeroLogon
借助 CVE-2020-1472 提供以下功能:- 繞過身份驗證:
- 攻擊者可以通過漏洞將自己偽裝為目標域控制器。
- 重置密碼:
- 工具可以重置域控制器計算機帳戶的密碼。
- 獲取域管理員權限:
- 利用被重置的密碼,攻擊者可以通過 Pass-the-Hash 技術或其他方式獲得域管理員權限。
- C# 編寫,易於使用:
- 該工具使用 C# 實現,適合在 Windows 環境中運行,並常用於滲透測試。
使用方法
1. 環境要求
- 需要在內部網絡中執行,確保能與目標域控制器通信。
- 攻擊者需要知道目標域控制器的名稱(NetBIOS 名稱)或 IP 地址。
2. 執行工具
- 編譯或下載
SharpZeroLogon
工具。
- 在目標內部網絡中運行工具。
運行命令如下:
<Target_DC_Name>
:目標域控制器的 NetBIOS 名稱(例如DC01
)。
3. 成功利用後
如果漏洞利用成功,工具會提示成功重置目標域控制器的計算機帳戶密碼。
下一步,攻擊者可以使用被重置的密碼執行以下操作:
- 使用 Pass-the-Hash 技術模擬域控制器的身份。
- 使用
secretsdump.py
工具提取域內所有帳戶的 NTLM 哈希值,進一步橫向移動或提權。
攻擊流程
以下是利用
SharpZeroLogon
的典型攻擊流程:- 枚舉域控制器:
- 確認目標網絡內的域控制器名稱和 IP 地址,例如使用
nslookup
或Nmap
。
- 運行
SharpZeroLogon
: - 使用工具重置目標域控制器的計算機帳戶密碼。
- 使用重置的密碼進行進一步攻擊:
- 使用工具(如
mimikatz
、secretsdump.py
或其他 Pass-the-Hash 工具)模擬域控制器身份。 - 提取域管理員帳戶憑據或直接進行域內橫向移動。
- 恢復密碼(可選):
- 在攻擊結束後,攻擊者可能需要將域控制器的密碼恢復為原始值,以避免被檢測。
防禦措施
為防止 ZeroLogon 漏洞被利用,建議採取以下措施:
1. 安裝補丁
- 微軟已針對 CVE-2020-1472 發布了安全補丁。
- 確保所有域控制器安裝了 2020 年 8 月或之後的累積更新。
2. 啟用加強的 Netlogon 安全
- 微軟在補丁中引入了 Netlogon 安全加強模式,需要在域控制器上啟用。
- 啟用方法:
- 打開組策略管理器,導航到:
- 啟用 "Require secure RPC"。
3. 審計 Netlogon 事件
- 定期檢查 Netlogon 相關的安全日誌,確保沒有可疑的身份驗證繞過活動。
4. 限制域控制器的訪問
- 限制內部網絡中對域控制器的直接訪問,防止未授權用戶進行攻擊。
檢測與響應
1. 檢測跡象
- 在事件日誌中查找與 Netlogon 相關的可疑活動:
- 事件 ID 5805:計算機帳戶失敗。
- 事件 ID 4742:計算機帳戶密碼更改。
2. 響應措施
- 如果懷疑域控制器遭受攻擊,立即執行以下步驟:
- 重置受影響域控制器的密碼。
- 分析事件日誌,排查攻擊來源。
- 審查域內所有高權限帳戶,確保其密碼未被更改。
總結
SharpZeroLogon
是用於模擬 ZeroLogon 漏洞 的強大工具,能夠幫助滲透測試人員和紅隊快速驗證目標域控制器是否存在此漏洞。然而,該漏洞極其危險,攻擊者可以輕鬆提升為域管理員權限,對整個 Active Directory 環境造成嚴重威脅。防禦重點:
- 安裝補丁並啟用 Netlogon 安全加強模式。
- 審計並限制對域控制器的訪問。
- 定期檢測並修復安全漏洞。
相關工具:
- mimikatz:用於提取憑據或執行 Pass-the-Hash 攻擊。
- secretsdump.py(Impacket):用於提取域控制器憑據。
- ZeroLogon PoC:其他語言的漏洞利用工具(如 Python 版本)。