配置指令 Linux 及 macOS

使用配置指令來準備檔案以進行掃描。

appscan.sh prepare

語法:

appscan.sh prepare -c <configuration_file> -d <save_path> -es, --enableSecrets -jdk <jdk_path> -l <log_path> -n <file_name>   -s <value> -sco,--sourceCodeOnly -so, --secretsOnly -t,--thirdParty -v,--verbose -X,--debug

說明:

產生 IRX 檔案。

註: 掃描程式碼或產生 IRX 檔案時,您可能會接收到關於更新至最新 Static Analyzer 指令行公用程式 的訊息。請參閱指令行公用程式 (CLI) 支援

可選旗標/設定:

  • -c:此選項用於配置掃描。
  • -d:指定 -d <save_path>,其中 <save_path> 是您想要儲存 IRX 檔案的目錄。
  • -dr、--dryrun:指定 -dr 或 --dryrun 以探索和驗證掃描目標,但是不產生 .irx 檔案。
  • -es, --enableSecrets:指定 -es--enableSecrets 以啟用機密掃描。依預設,密碼掃描已停用。
  • -jdk:指定 -jdk <jdk_path> 以指出要用來代替預設 JDK 17 的 JDK 安裝的路徑。如果使用配置檔 (-c <configuration_file>),且使用 jdk_path 屬性,則會優先使用配置檔中指定的值。
  • -l:指定 -l <log_path>,其中 <log_path> 是您想要儲存日誌檔的目錄。
  • -n:指定 -n <file_name>,其中 <file_name>IRX 檔案名稱。指定檔名時不一定要有 .irx 副檔名。如果您指定的檔案名稱沒有副檔名,系統會在產生檔案時自動為您新增副檔名。
  • -s:指定 -s <value> 以指示掃描速度和深度,其中 <value> 可以是 simplebalanceddeepthorough。透過指令行指定的掃描速度,會對應至可以在 AppScan Go! 中選擇的掃描速度。
    • simple 掃描會執行檔案的表面層次分析,為您識別最需要補救的緊迫問題。此類掃描完成所需的時間最短。
    • balanced 掃描提供中等層次的安全問題分析和識別,完成所需的時間比「簡易」掃描稍微久一點。
    • deep 掃描會對您的檔案執行更完整的分析,以識別漏洞,通常需要較久的時間才能完成。
    • thorough 掃描會執行綜合性的分析,識別最全面的漏洞清單,因此完成所需的時間最久。
      註: 掃描速度與在程式碼中找到的漏洞數目不一定相關。例如,thorough 分析可能會排除 simple 掃描報告中的誤判,因此報告的漏洞較少。
    註: 此選用參數區分大小寫。未指定掃描速度時,「用戶端公用程式」會執行 deep 掃描作為預設值。
  • -sao:指定 -sao,只執行靜態分析。
  • -sco、--sourceCodeOnly:指定 -sco--sourceCodeOnly掃描原始碼檔案。此設定會停用對其他支援檔案類型的掃描,例如 .dll.exe.jar.war 等檔案類型。

    原始碼掃描只有在您只有原始碼的存取權、想要執行更快速的掃描,或您相較於掃描深度偏好速度時有用。如果您只有建置輸出的存取權,或您相較於掃描速度偏好深度,請選擇替代掃描選項。

    註: 如需包含僅限原始碼檔案類型的清單,請參閱靜態分析語言支援
  • -so, --secretsOnly:指定 -so--secretsOnly 以只掃描原始碼中的機密。依預設,密碼掃描已停用。
  • -t、--thirdParty依預設,在 IRX 檔案產生的期間,不會掃描第三方 Java 和 .NET 程式碼。您可以遵循管理第三方 Java 和 .NET 排除中的指示來修改第三方程式碼排除設定。若要包括第三方程式碼,請在發出 prepare 指令時,指定 -t--thirdParty 選項。

    如果您是通常會在掃描中排除第三方程式碼的開發人員,則應使用此設定來包含第三方程式碼。

  • -v、--verbose:指定 -v--verbose,以在 IRX 檔案產生期間顯示更多參考資訊輸出。
  • -X、--debug:指定 -X--debug,以除錯模式執行整個指令。在除錯模式下執行時,會產生較多日誌檔以便進行疑難排解。
提示: 針對所有指令,可以依任意順序使用選項。

範例:

若要產生使用此配置檔的 IRX 檔案,/root/Desktop/my_config_files/my_config.xml - 並將 IRX 檔案儲存至 /root/Desktop/my_irx_files -n my_scan.irx,請發出下列指令:

appscan.sh prepare -c /root/Desktop/my_config_files/my_config.xml -d /root/Desktop/my_irx_files -n my_scan.irx

appscan.sh package

語法:

appscan.sh package -d <save_path> -f <assessment_file> -n <file_name>

說明:

產生 IRX 檔案,其中包含在 IBM AppScan Source 9.0 版或更新版本產品中建立的評量 (.ozasmt) 檔案。

註: 掃描程式碼或產生 IRX 檔案時,您可能會接收到關於更新至最新 Static Analyzer 指令行公用程式 的訊息。請參閱指令行公用程式 (CLI) 支援

可選旗標/設定:

  • -d:指定 -d <save_path>,其中 <save_path> 是您想要儲存 IRX 檔案的目錄。
  • -n:指定 -n <file_name>,其中 <file_name>IRX 檔案名稱。指定檔名時不一定要有 .irx 副檔名。如果您指定的檔案名稱沒有副檔名,系統會在產生檔案時自動為您新增副檔名。
提示: 針對所有指令,可以依任意順序使用選項。

範例:

/root/Desktop/my_irx_files 目錄中時,您可以發出下列指令來產生 IRX 檔案(其中包含此評量檔案 /root/Desktop/my_assessment_files/my_assessment.ozasmt):

appscan.sh package -f /root/Desktop/my_assessment_files/my_assessment.ozasmt

產生的 IRX 檔案將會儲存在 /root/Desktop/my_irx_files 中。

appscan.sh get_pubkey

語法:

appscan.sh get_pubkey -d <save_path>

說明:

下載公開加密金鑰以便用於未連接網際網路的電腦。

如果您要從連接網際網路的電腦產生 IRX 檔案,則不需要這個指令,因為在您發出 prepare 指令時會自動下載加密金鑰。如果電腦上已有加密金鑰,當您發出 prepare 指令時,系統會視需要將其更新。

然而,如果您要從未連接網際網路的電腦產生 IRX 檔案,則您可以使用這個指令下載加密金鑰。接著您可以將加密金鑰複製到未連接網際網路的電腦,以便用於產生 IRX 檔案。若要在該電腦上使用加密金鑰,您必須保留 rsa.pub 檔名,並將檔案放在解壓縮之 SAClientUtil_<version>_<os>.zip 檔案的 config 目錄中(其中 <version> 是「指令行公用程式」的現行版本)。

註: 必須使用最新的加密金鑰。如果使用過時的加密金鑰產生 IRX 檔案,則在上傳 IRX 檔案時會遭到拒絕。如果您的電腦已連接網際網路,請重新發出 prepare 指令,以便自動更新加密金鑰。如果您的電腦未連接網際網路,則需要使用 get_pubkey 指令。

可選旗標/設定:

  • -d:指定 -d <save_path>,其中 <save_path> 是您想要儲存加密金鑰的目錄。如果未指定這個選項,金鑰將會儲存到解壓縮 SAClientUtil_<version>_<os>.zip 檔案的 config 目錄。