如何對 DongTai-agent-java 進行 Debug

一、編譯打包

Fork [DongTai-agent-java][0] 專案到自己的github倉庫

如何對 DongTai-agent-java 進行 Debug

2。將專案 clone 到本地

如何對 DongTai-agent-java 進行 Debug

3。更改配置檔案“iast-agent/src/main/resources/iast。properties”。將 iast。server。url 改為

https://iast。huoxian。cn

,iast。server。token改為

洞態IAST

使用者token。

如何對 DongTai-agent-java 進行 Debug

iast。server。url=https://iast。huoxian。cn iast。server。token=

進入專案根目錄,使用 maven 進行打包

& mvn clean package -Dmaven。test。skip=true

注:jdk 版本為1.8。

打包結束後項目根目錄下會生成資料夾 release,其目錄結構:

release├── iast-agent。jar└── lib ├── dongtai-servlet。jar ├── iast-core。jar └── iast-inject。jar

將 dongtai-servlet。jar、iast-core。jar、iast-inject。jar 三個 jar 包複製到系統臨時目錄。獲取系統臨時目錄可執行以下 Java 程式碼:

System。getProperty(“java。io。tmpdir”);

二、配置測試專案的執行引數

使用 IDEA 開啟測試專案,並且配置專案的執行引數

如何對 DongTai-agent-java 進行 Debug

VM引數詳細:

(只需更改 -javaagent 和 -Dproject。name)

-javaagent:/path/to/agent。jar // agent目錄,官網下載-Diast。server。mode=local // 引擎啟動模式(local/remote)-Diast。engine。delay。time=1 // 引擎延時啟動時間(秒)-Dproject。name=projectName // 專案名-Dlog。level=info // 日誌列印等級-Ddebug=true // debug-Diast。dump。class。enable=false // 是否檢視新生成的位元組碼檔案

2。將 dongtai-servlet。jar、iast-core。jar、iast-inject。jar 三個 jar 包匯入專案依賴

如何對 DongTai-agent-java 進行 Debug

如何對 DongTai-agent-java 進行 Debug

三、Debug

在剛剛依賴的三個 jar 包中打斷點,以 com。secnium。iast。core。report。ReportSender。send() 為例,此方法用來向雲端傳送請求。

如何對 DongTai-agent-java 進行 Debug

2。Debug 模式啟動測試專案,可以看到斷點已經生效了

如何對 DongTai-agent-java 進行 Debug

四、自定義 agent

根據您的需求提交 issue

更改 [DongTai-agent-java][0] 的程式碼

重複以上步驟, Debug 可用於功能測試

提交程式碼