使用 Static Analyzer 指令行公用程式
Static Analyzer 指令行公用程式 (SAClientUtil) 用於產生可在 AppScan on Cloud 或 AppScan 360° 中掃描的 IRX。支援 appscan prepare 指令與 AppScan 360° 靜態分析 搭配使用。
什麼是 IRX 檔案?
IRX 是一個安全且加密的 zip 保存檔,其中包含執行程式完整靜態分析的必要資訊。它會在建立後靜態加密。
IRX 保存檔在內部包含這些檔案和構件:
- 針對可部署的程式構件的專有及模糊呈現,這是從您已部署的原始碼(例如,Java 位元組碼或 .Net MSIL)所建置。如果要瞭解靜態分析掃描支援哪些語言,請參閱 靜態分析的系統需求。
- 所有與程式一同部署的執行時期指令碼檔案都可加以分析以找出安全漏洞(例如 .js (Javascript) 或 .rb (Ruby) 檔案)。
- Static Analyzer 配置檔,其中說明應用程式或專案階層以及程式的關係或相依關係。這可在應用程式內跨越專案界限進行精確且完整的安全分析。
- 在建立保存檔期間所產生的 Static Analyzer 日誌檔(用於診斷和支援)。
正在產生 IRX 檔案
使用 appscan prepare 或 appscan.sh prepare 產生 IRX。
語法:
appscan.sh prepare -c <configuration_file> -d <save_path> -jdk <jdk_path> -l <log_path> -n <file_name> -v, -X,--debug
說明:
產生 IRX 檔。
可選旗標/設定:
-acceptssl:接受使用不受信任的憑證。註: 此設定可與所有SAClientUtil指令搭配使用。-
-c:此選項用於配置掃描。 -
-d:指定-d <save_path>,其中<save_path>是您想要儲存 IRX 檔案的目錄。 -
-dr, --dryrun:指定-dr or --dryrun以探索和驗證掃描目標,但是不產生.irx檔案。 -
-jdk:指定-jdk <jdk_path>以指出要用來代替預設 JDK 11 的 JDK 安裝的路徑。如果使用配置檔 (-c <configuration_file>),且使用jdk_path屬性,則會優先使用配置檔中指定的值。 -
-l:指定-l <log_path>,其中<log_path>是您想要儲存日誌檔案的目錄。 -
-n:指定-n <file_name>,其中<file_name>是 IRX 檔名。指定檔名時不一定要有 .irx 副檔名。如果您指定的檔案名稱沒有副檔名,系統會在產生檔案時自動為您新增副檔名。 -
-s:指定-s <value>以指示掃描速度和深度,其中<value>為simple、balanced、deep或thorough。simple掃描會執行檔案的表面層次分析,為您識別最需要補救的緊迫問題。此類掃描完成所需的時間最短。
-
balanced掃描提供中等層次的安全問題分析和識別,完成所需的時間比「簡易」掃描稍微久一點。 -
deep掃描會對您的檔案執行更完整的分析,以識別漏洞,通常需要較久的時間才能完成。 -
thorough掃描會執行全面性的分析,識別最全面的漏洞清單,因此完成所需的時間最久。註: 掃描速度與在程式碼中找到的漏洞數目不一定相關。例如,thorough分析可能會排除simple掃描報告中的誤判,因此報告的漏洞較少。註: 此選用參數區分大小寫。未指定掃描速度時,「用戶端公用程式」會執行deep掃描作為預設值。
-
-sco, --sourceCodeOnly:指定-sco或--sourceCodeOnly以只掃描原始碼檔案。此設定會停用掃描其他支援的檔案類型,例如.dll、.exe、.jar、.war、.sln,還有其他檔案類型。原始碼掃描只有在您只有原始碼的存取權、想要執行更快速的掃描,或您相較於掃描深度更重視速度時有用。如果您只有建置輸出的存取權,或您相較於掃描速度偏好深度,請選擇替代掃描選項。
註: 如需包含僅限原始碼檔案類型的清單,請參閱靜態分析語言支援。
-
-t, --thirdParty:依預設,在 IRX 檔案產生的期間,不會掃描第三方 Java 和 .NET 程式碼。您可以遵循管理第三方 Java 和 .NET 排除中的指示來修改第三方程式碼排除設定。若要包括第三方程式碼,請在發出prepare指令時,指定-t或--thirdParty選項。如果您是通常會在掃描中排除第三方程式碼的開發人員,則應使用此設定來包含第三方程式碼。
-
-v,--verbose:指定-v或--verbose,以在 IRX 檔案產生期間顯示更多參考資訊輸出。 -
-X,--debug:指定-X或--debug,以除錯模式執行整個指令。在除錯模式下執行時,會產生較多日誌檔以便進行疑難排解。
範例:
若要產生使用此配置檔 c:\my_config_files\my_config.xml 的 IRX 檔案,並將 IRX 檔案儲存至 c:\my_irx_files\my_scan.irx,請發出下列指令:
appscan.sh prepare -c c:\my_config_files\my_config.xml -d c:\my_irx_files -n my_scan.irx