ADAudit Plus漏洞調(diào)試環(huán)境搭建,你學會了嗎?
0x00 前言
本文記錄從零開始搭建ADAudit Plus漏洞調(diào)試環(huán)境的細節(jié),介紹數(shù)據(jù)庫用戶口令的獲取方法。
0x01 簡介
本文將要介紹以下內(nèi)容:
ADAudit Plus安裝
ADAudit Plus漏洞調(diào)試環(huán)境配置
數(shù)據(jù)庫用戶口令獲取
0x02 ADAudit Plus安裝
1.下載
全版本下載地址:https://archives2.manageengine.com/active-directory-audit/
2.安裝
安裝參考:https://www.manageengine.com/products/active-directory-audit/quick-start-guide-overview.html
3.測試
訪問https://localhost:8081
0x03 ADAudit Plus漏洞調(diào)試環(huán)境配置
方法同Password Manager Pro漏洞調(diào)試環(huán)境配置基本類似
1.開啟調(diào)試功能
(1)定位配置文件
查看java進程的信息,這里分別有兩個java進程,對應兩個不同的父進程wrapper.exe,如下圖
wrapper.exe的進程參數(shù)分別為:
“C:\Program Files\ManageEngine\ADAudit Plus\bin\Wrapper.exe” -c “C:\Program Files\ManageEngine\ADAudit Plus\bin\..\conf\wrapper.conf”
“C:\Program Files\ManageEngine\ADAudit Plus\bin\wrapper.exe” -s “C:\Program Files\ManageEngine\ADAudit Plus\apps\dataengine-xnode\conf\wrapper.conf”
這里需要修改的配置文件為C:\Program Files\ManageEngine\ADAudit Plus\conf\wrapper.conf
(2)修改配置文件添加調(diào)試參數(shù)
找到啟用調(diào)試功能的位置:
【技術(shù)原創(chuàng)】ADAudit Plus漏洞調(diào)試環(huán)境搭建
將其修改為
【技術(shù)原創(chuàng)】ADAudit Plus漏洞調(diào)試環(huán)境搭建
注:
序號需要逐個遞增,此處將wrapper.java.additional.3=-Xdebug修改為wrapper.java.additional.25=-Xdebug
(3)重新啟動相關(guān)進程
關(guān)閉進程wrapper.exe和對應的子進程java.exe
在命令行下執(zhí)行命令:
【技術(shù)原創(chuàng)】ADAudit Plus漏洞調(diào)試環(huán)境搭建
2.常用jar包位置
路徑:C:\Program Files\ManageEngine\ADAudit Plus\lib
web功能的實現(xiàn)文件為AdventNetADAPServer.jar和AdventNetADAPClient.jar
3.IDEA設置
設置為Remote JVM Debug,遠程調(diào)試成功如下圖
【技術(shù)原創(chuàng)】ADAudit Plus漏洞調(diào)試環(huán)境搭建
0x04 數(shù)據(jù)庫用戶口令獲取
默認配置下,ADAudit Plus使用postgresql存儲數(shù)據(jù),默認配置了兩個登錄用戶:adap和postgres
1.用戶adap的口令獲取
配置文件路徑:C:\Program Files\ManageEngine\ADAudit Plus\conf\database_params.conf,內(nèi)容示例:
【技術(shù)原創(chuàng)】ADAudit Plus漏洞調(diào)試環(huán)境搭建
【技術(shù)原創(chuàng)】ADAudit Plus漏洞調(diào)試環(huán)境搭建
其中,password被加密,加解密算法位于:C:\Program Files\ManageEngine\ADAudit Plus\lib\framework-tools.jar中的com.zoho.framework.utils.crypto->CryptoUtil.class
經(jīng)過代碼分析,得出以下解密方法:
密鑰固定保存在C:\Program Files\ManageEngine\ADAudit Plus\conf\customer-config.xml,內(nèi)容示例:
【技術(shù)原創(chuàng)】ADAudit Plus漏洞調(diào)試環(huán)境搭建
得到密鑰:CryptTag為8ElrDgofXtbrMAtNQBqy
根據(jù)以上得到的密文cb26b920b56fed8d085d71f63bdd79c55ea7b98f8794699562c06ea1bedbec52087b394f和密鑰8ElrDgofXtbrMAtNQBqy,編寫解密程序,代碼如下:
【技術(shù)原創(chuàng)】ADAudit Plus漏洞調(diào)試環(huán)境搭建
【技術(shù)原創(chuàng)】ADAudit Plus漏洞調(diào)試環(huán)境搭建
【技術(shù)原創(chuàng)】ADAudit Plus漏洞調(diào)試環(huán)境搭建
【技術(shù)原創(chuàng)】ADAudit Plus漏洞調(diào)試環(huán)境搭建
程序運行后得到解密結(jié)果:Adaudit@123$
拼接出數(shù)據(jù)庫的連接命令:"C:\Program Files\ManageEngine\ADAudit Plus\pgsql\bin\psql" "host=127.0.0.1 port=33307 dbname=adap user=adaudit password=Adaudit@123$"
連接成功,如下圖
【技術(shù)原創(chuàng)】ADAudit Plus漏洞調(diào)試環(huán)境搭建
2.用戶postgres的口令獲取
口令硬編碼于C:\Program Files\ManageEngine\ADAudit Plus\lib\AdventnetADAPServer.jar中的com.adventnet.sym.adsm.common.server.mssql.tools->ChangeDBServer.class->isDBServerRunning(),如下圖
【技術(shù)原創(chuàng)】ADAudit Plus漏洞調(diào)試環(huán)境搭建
得到用戶postgres的口令為Stonebraker
拼接出數(shù)據(jù)庫的連接命令:"C:\Program Files\ManageEngine\ADAudit Plus\pgsql\bin\psql" "host=127.0.0.1 port=33307 dbname=adap user=postgres password=Stonebraker"
連接成功,如下圖
【技術(shù)原創(chuàng)】ADAudit Plus漏洞調(diào)試環(huán)境搭建
一條命令實現(xiàn)連接數(shù)據(jù)庫并執(zhí)行數(shù)據(jù)庫操作的命令示例:"C:\Program Files\ManageEngine\ADAudit Plus\pgsql\bin\psql" --command="SELECT * FROM public.aaapassword ORDER BY password_id ASC;" postgresql://postgres:Stonebraker@127.0.0.1:33307/adap
返回結(jié)果示例:
【技術(shù)原創(chuàng)】ADAudit Plus漏洞調(diào)試環(huán)境搭建
發(fā)現(xiàn)password的數(shù)據(jù)內(nèi)容被加密
0x05 小結(jié)
在我們搭建好ADAudit Plus漏洞調(diào)試環(huán)境后,接下來就可以著手對漏洞進行學習。