将 Fortify 集成到构建过程中

Integrating Fortify into a Build Process

我正在尝试查看是否可以将 Fortify 扫描集成到我的构建过程中。我做了一些研究,但似乎无法从 Fortify 的审计 workbench 中找到 提取 脚本。这是可能吗?我应该只构建一个批处理文件来完成这个吗?

构建您自己的批处理文件是最好的方法。

您可以从 HPE Security Fortify Static Code Analyzer User Guide 和命令行 sourceanalyzer -h

的帮助文件中获取有关扫描项目的信息

这真的是一个三步过程

  1. 清洁
  2. 翻译
  3. 扫描

帮助文件顶部有示例。

如果需要,您也可以使用扫描向导工具,但我个人不喜欢长期使用它进行构建集成。它创建了一个复杂的批处理文件,它专门指定了文件(因此如果随着时间的推移添加了新文件,它将不会拾取它们)。

如果您想知道 Audit workbench 是如何执行扫描的,您可以添加以下命令选项: “-详细” “-调试” “-日志文件” "c:\temp\translate.log" 或 "c:\temp\scan.log"

然后您可以查看 "Args:" 行的日志文件 这将包含传递给 [=44 的命令行参数的参数列表(在引号中并以逗号分隔) =].

根据此信息,您可以创建批处理文件 运行 并执行扫描。 (确保批处理文件包含我之前提到的所有三个步骤)。

GUI 只是 sourceanalyzer.exe

的前端

是的,使用批处理脚本来执行此操作。

与其尝试从审计 Workbench 复制命令,不如使用扫描向导。就是专门解决这个问题的工具。您将它指向您的项目,回答一些问题,然后它会创建一个脚本。选中一个框,它也会上传到 SSC。

扫描向导位于 /bin。它也可能在您的“开始”菜单中,在审计 Workbench 旁边。

注意:有时我不得不修改脚本。但是,如果您能够使用 Visual Studio 中的 Fortify 按钮进行扫描,那么默认脚本通常可以正常工作。

您可以使用HP SCA 的maven 插件。它将作为 HP SCA 安装的一部分(在插件文件夹下)捆绑在一起,并且需要安装在您的 Maven 中。请注意,SCA 插件未列出 maven 存储库,因此需要安装到本地存储库。