使用 Static Analyzer Command Line Utility
Static Analyzer Command Line Utility (SAClientUtil
) 用于生成可在 AppScan on Cloud 或 AppScan 360° 中扫描的 IRX。支持将 appscan prepare
命令与 AppScan 360° Static Analysis 一起使用。
什么是 IRX 文件?
IRX 是一种安全且加密的 zip 存档,其中包含运行程序的完整静态分析所需的信息。它在创建期间以及(通过 SSL)传输到云期间进行加密。
在内部,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 文件保存到 c:\my_irx_files\my_scan.irx 的 IRX 文件,请发出以下命令:
appscan.sh prepare -c c:\my_config_files\my_config.xml -d c:\my_irx_files -n my_scan.irx