部署 Java IAST 代理程式
您可以在支援 Java、.NET、Node.js 或 PHP 型應用程式的應用程式伺服器上,部署 IAST 代理程式。本節說明如何在 Web 伺服器上建立 Java 代理程式類型。
開始之前
最簡單有效的 IAST 使用方式是將它部署做為
WAR 檔案 Servlet,部署在您的 Web 伺服器。無法執行時(例如在 Quarkus 架構上執行 IAST 時),可改為使用 JAR 檔,將 IAST 代理程式安裝為 Java 代理程式。支援: 僅支援執行 JRE/JDK 1.8 或更高版本的 Web 應用程式伺服器。
- 如果執行 IAST 的伺服器位於 Proxy 後方:
- 如為透通 Proxy,執行伺服器時請使用下列 Java 內容其中任何一個:
- 標準 Java 內容:
-Dhttps.proxyHost={proxy_ip} -Dhttps.proxyPort={proxy_port} - 自訂 Java 內容:
-DIast.proxyHost={proxy_ip} -DIast.proxyPort={proxy_port} - 環境變數:
IAST_PROXY_HOST={proxy_ip} IAST_PROXY_PORT={proxy_port}
- 標準 Java 內容:
- 如果與外部通訊(例如,傳遞透通 Proxy)需要憑證,請提供有效的憑證,並執行下列指令,將它匯入金鑰儲存庫:註: 如果您使用預設設定安裝 JRE,則金鑰儲存庫名稱會是
cacerts,且會使用密碼changeit.保護。否則,請將-storepass、-keystore和-file以您自己的值取代。keytool.exe -import -storepass "changeit" -keystore "C:\Program Files (x86)\Java\jre1.8.0_144\lib\security\cacerts" -alias certificate.cer -file "C:\certificate.cer" -noprompt
- 如為透通 Proxy,執行伺服器時請使用下列 Java 內容其中任何一個:
- 適用於 1.14.2 之前的 IAST 代理程式版本:如果編譯時間和執行時間 Java 版本兩者均為第 9 版或更高版本,請將下列旗標新增到 java 執行指令:
–Djava.lang.invoke.stringConcat=BC_SB
程序
-
下載 ASoC Java IAST 代理程式:
- 依照此處提供的說明下載代理程式。
-
解壓縮 ZIP 檔案:
- 解壓縮已下載的檔案以存取其內容。
-
部署 IAST 代理程式:
選項 A:部署為 WAR Servlet:
- 找到 WAR 檔案:
- 在解壓縮的 ZIP 檔案根目錄中找出
Secagent.war。
- 在解壓縮的 ZIP 檔案根目錄中找出
- 部署至您的伺服器:
- Tomcat 伺服器/Jetty 伺服器:複製 Secagent.war 至您的
webapps資料夾,或像部署其他任何 WAR servlet 一樣部署該檔案。 - WebSphere 伺服器:將 Secagent.war 部署為 Web 應用程式,而不是企業應用程式。確保環境定義根目錄設定為
/Secagent。 - WebSphere Liberty 伺服器/Open Liberty 伺服器:將 Secagent.war 複製到
dropins資料夾,或依一般方式進行部署。 - JBoss/WildFly 伺服器/JBoss EAP 伺服器:複製 Secagent.war 至 deployments 資料夾,或像部署其他任何 WAR servlet 一樣部署該檔案。
- Weblogic:部署 Secagent.war,就像部署其他 WAR Servlet 一樣部署該檔案。
- Tomcat 伺服器/Jetty 伺服器:複製 Secagent.war 至您的
- 驗證部署:
- 開啟 Web 瀏覽器,並導覽至
http://<server address>/Secagent。 - 如果 Secagent 頁面隨即開啟,即表示代理程式已成功部署。
- IAST 代理程式會在您使用或測試應用程式時監視要求,並回報安全問題(執行功能測試、執行動態掃描,或手動探索應用程式)。
- 開啟 Web 瀏覽器,並導覽至
如果無法將 IAST 代理程式以 WAR 檔案形式部署(例如使用 Quarkus 架構時),請使用此方法。
- 找到 JAR 檔案:
- 在
jar_deployment資料夾中找到secagent.jar。
- 在
- 將 Java 代理程式新增至您的應用程式:
- 指令行選項:請將下列旗標新增至應用程式的指令行:
-Djavaagent:<path to secagent.jar>
- 環境變數選項:設定 JAVA_TOOL_OPTIONS 環境變數:
set JAVA_TOOL_OPTIONS=-javaagent:<path to secagent.jar>
- 指令行選項:請將下列旗標新增至應用程式的指令行:
- 驗證部署:
- 檢查
stdout是否出現以 "[IAST Secagent]" 開頭的訊息。 - 如果出現這類訊息,表示代理程式已成功安裝。
- IAST 代理程式會在您使用或測試應用程式時監視要求,並回報安全問題(執行功能測試、執行動態掃描,或手動探索應用程式)。
- 檢查
- 找到 WAR 檔案:
使用安全管理程式執行 Java 代理程式
執行這項作業的原因和時機
您可以使用安全管理程式執行 Java 代理程式:
- 作為 Tomcat 上的 war 檔案,或
- 作為 Tomcat 以外伺服器上的 Jar 檔案。請聯絡 AppScan 支援團隊以取得指引。
若要在 Tomcat 上使用安全管理程式執行 Java 代理程式:
程序
-
找到 catalina.policy 檔。
catalina.policy 檔通常位於 Tomcat 安裝配置目錄中。確切路徑可能會因作業系統和 Tomcat 版本而異。
- 在文字編輯器中開啟 catalina.policy 檔。
-
找到「授予」區塊。
尋找開頭為關鍵字「授予」的區塊,然後是一或多個「許可權」聲明。
-
新增所需許可權如下:
- 儲存 catalina.policy 檔。
- 重新啟動 Tomcat 伺服器以套用變更。