使用 Static Analyzer 指令行公用程式
Static Analyzer 指令行公用程式 (SAClientUtil
) 用於產生可在 AppScan on Cloud 或 AppScan 360° 中掃描的 IRX。支援 appscan prepare
指令與 AppScan 360° 靜態分析 搭配使用。
什麼是 IRX 檔案?
IRX 是一個安全且加密的 zip 封存檔,其中包含執行程式完整靜態分析的必要資訊。在建立後待用及傳輸至雲端期間(透過 SSL)會進行加密。
IRX 封存檔在內部包含這些檔案和構件:
- 針對可部署的程式構件的專有及模糊呈現,這是從您已部署的原始碼(例如,Java 位元組碼或 .Net MSIL)所建置。如果要瞭解靜態分析掃描支援哪些語言,請參閱 靜態分析的系統需求。
- 所有與程式一同部署的執行時期 Script 檔都可加以分析以找出安全漏洞(例如 .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