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