
Empire和BloodHound這兩個(gè)Github項(xiàng)目極大程度地簡(jiǎn)化了針對(duì)活動(dòng)目錄(AD)的滲透測(cè)試過程,至少在我當(dāng)前所遇到的95%的環(huán)境中是這樣的。隨著年月的積累,我發(fā)現(xiàn)很多事情都是自己一直在重復(fù)地做著,因此我打算將它們通過自動(dòng)化的方式來實(shí)現(xiàn)。畢竟,通過“即發(fā)即棄”的腳本來自動(dòng)化獲取域管理員權(quán)限(Domain Admin)是大家都想實(shí)現(xiàn)的一個(gè)目標(biāo),沒錯(cuò)吧?
幸運(yùn)的是,前人已經(jīng)幫我們完成了很多非常困難的任務(wù)。除此之外,Empire不久之前還引入了一個(gè)RESTful API,因此開發(fā)者可以輕而易舉地創(chuàng)建一個(gè)第三方腳本并與之進(jìn)行交互。
但在我開始之前我還想提醒一下各位,拿到域管理員權(quán)限并不是你滲透測(cè)試的唯一目標(biāo),如果你是這樣想的話,那你就大錯(cuò)特錯(cuò)了。你應(yīng)該把重點(diǎn)放在Post-Exploitation(發(fā)現(xiàn)漏洞并利用)上,并嘗試查找機(jī)密數(shù)據(jù)和文檔等敏感信息。你的目標(biāo)是要找出任何能夠證明組織管理漏洞的證據(jù),你要能夠證明當(dāng)網(wǎng)絡(luò)攻擊真正發(fā)生時(shí),這些東西會(huì)讓組織陷入困境。不過當(dāng)你拿到域管理權(quán)限之后,一切都會(huì)變得簡(jiǎn)單。
項(xiàng)目目標(biāo)與實(shí)現(xiàn)
我本來只是想開發(fā)一款能夠解析BloodHound輸出,并將其轉(zhuǎn)發(fā)給Empire的工具。但是,原版的BloodHound并不適用于使用了GPP密碼的域權(quán)限。因此我需要一個(gè)帶有蠕蟲特性的“激進(jìn)版”BloodHound。除此之外,Empire幾乎擁有BloodHound絕大多數(shù)的核心功能,但相對(duì)來說跟Empire的模塊進(jìn)行交互還是比較難的。因此,我打算通過RESTful API和Empire來實(shí)現(xiàn)整個(gè)過程的自動(dòng)化,這樣一來我就可以根據(jù)自己的需要來解析模塊的輸出結(jié)果了。
DeathStar的運(yùn)行機(jī)制
下面這張圖片可以很好地解釋DeathStar的運(yùn)行機(jī)制:

如果你曾經(jīng)對(duì)活動(dòng)目錄進(jìn)行過滲透測(cè)試的話,那么你應(yīng)該對(duì)這張圖片不會(huì)感到陌生。
工具安裝與配置
為了讓DeathStar正常工作,目前你還需要單獨(dú)安裝Empire,其中包含一些API和后端數(shù)據(jù)庫,并且相關(guān)的腳本都經(jīng)過了優(yōu)化以方便我們與RESTful API交互。
DeathStar- 【傳送門】
Empire- 【傳送門】
下載并安裝Empire庫,然后通過下列命令運(yùn)行:
pythonempire --rest --username username --password password
這行命令將會(huì)啟動(dòng)Empire的命令控制臺(tái)以及RESTful API服務(wù)器。
安裝并運(yùn)行DeathStar:
gitclone https://github.com/byt3bl33d3r/DeathStar
#Death Star is written in Python 3
pip3install -r requirements.txt
#Supply the username and password you started Empire's RESTful API with
./DeathStar.py-u username -p password
如果一切進(jìn)展順利的話,DeathStar將會(huì)創(chuàng)建一個(gè)http監(jiān)聽器,此時(shí)你將會(huì)看到“Polling for Agents”狀態(tài):這意味著你已經(jīng)被授權(quán)訪問RESTful API了,而DeathStar正在等待代理客戶端。
現(xiàn)在你需要的就是一個(gè)來自目標(biāo)域設(shè)備的代理,具體如何實(shí)現(xiàn)并非本文所要討論的范疇,不過我建議你使用CrackMapExec。
工具使用
在下面的演示視頻中,我們?cè)趦煞N不同的場(chǎng)景下演示了如何使用DeathStar來獲取域管理權(quán)限。
視頻地址1:https://youtu.be/PTpg_9IgxB0
視頻地址2:https://youtu.be/1ZCkC8FXSzs
需要注意的是,這兩個(gè)視頻采取了不同的方法來利用憑證,但我們還可以使用本地管理員權(quán)限和PSInject來更加輕松地獲取域管理權(quán)限,而且這樣不需要使用到憑證數(shù)據(jù)。
總結(jié)
DeathStar這個(gè)項(xiàng)目足以證明,我們可以通過現(xiàn)存的開源工具集合來自動(dòng)化獲取活動(dòng)目錄環(huán)境下的域管理權(quán)限。我總共花了3-4天的時(shí)間來將這些組件組合起來,而那些比我更加聰明的人可能會(huì)做得比我更好。因此就我個(gè)人而言,我希望能夠在將來看到更多類似的工具出現(xiàn)。
|