什么是 Fortify SCA,如何安装?
已发表: 2023-01-13Fortify 静态代码分析器 (SCA) 分析源代码并查明安全漏洞的根本原因。
Fortify 扫描会优先处理最严重的问题,并指导开发人员应如何解决这些问题。
Fortify 静态代码分析器
Fortify Static Code Analyzer 具有各种漏洞分析器,例如 Buffer、Content、Control Flow、Dataflow、Semantic、Configuration 和 Structural。 这些分析器中的每一个都接受一种不同类型的规则,这些规则被定制以提供所执行分析类型所需的信息。

Fortify 静态代码分析器具有以下组件;
- 强化扫描向导。 它是一种工具,提供在分析之后或之前运行脚本的选项。
- 审计工作台。 它是一个基于 GUI 的应用程序,用于组织和管理分析的结果。
- 自定义规则编辑器。 它是一种允许开发人员创建和编辑用于分析的自定义规则的工具。
- 用于 IntelliJ 和 Android Studio 的插件。 该插件在 IDE 中提供分析结果。
- Eclipse 插件。 该工具与 Eclipse 集成并在 IDE 中显示结果。
- 竹插件。 它是一个从运行分析的 Bamboo Job 收集结果的插件。
- 詹金斯插件。 这个插件从 Jenkins Job 收集分析结果。
Fortify SCA 的特点

#1。 支持多种语言
Fortify SCA 支持的一些语言是: ABAP/BSP、ActionScript、ASP(带 VBScript)、COBOL、ColdFusion、Apex、ASP.NET、C# (.NET)、C/C++、Classic、VB.NET、VBScript、CFML、Go、HTML、Java(包括 Android )、JavaScript/AJAX、JSP、Kotlin、Visual Basic、MXML (Flex)、Objective C/C++、PHP、PL/SQL、Python、Ruby、Swift、T-SQL 和 XML。
#2。 灵活的部署选项
- Fortify On-Prem允许组织完全控制 Fortify SCA 的所有方面。
- Fortify On Demand使开发人员能够在软件即服务环境中工作。
- Fortify Hosted允许开发人员通过具有完全数据控制的隔离虚拟环境享受两个世界(按需和本地)。
#3。 与 CI/CD 工具轻松集成
- 开发人员可以轻松地将 Fortify SCA 与主要的 IDE(如 Visual Studio 和 Eclipse)集成。
- 开发人员可以控制各种操作,因为该工具与 Sonatype、WhiteSource、Snyk 和 BlackDuck 等开源工具集成。
- 您还可以将 Fortify SCA 与远程代码存储库(例如 Bitbucket 和 GitHub)集成。 因此,该工具可以检查推送到此类平台的代码是否存在漏洞并发送报告。
#4。 实时警报
您不必等到完成编码后再进行测试,因为 Fortify SCA 会在您编码时提供实时更新。 该工具具有专为提高速度和效率而构建的配置和结构分析器,可帮助您生成安全的应用程序。
#5。 由机器学习提供支持的审计助理
使用使用机器学习算法的 Audit Assistant 可以快速审计系统。 助手识别所有漏洞并根据置信度对它们进行优先级排序。 由于该工具生成报告,因此组织可以节省审计成本。
#6。 灵活性
用户可以根据需要选择他们想要进行的扫描类型。 例如,如果您想要准确和详细的扫描,您可以选择全面扫描选项。 如果开发人员只想检测到主要威胁,他们还可以选择快速扫描选项。
Fortify SCA 有什么作用?

Fortify SCA 在典型的开发生态系统中扮演着多种角色。 以下是一些角色;
静态测试有助于构建更好的代码
静态应用程序安全测试 (SAST) 有助于在早期开发阶段识别安全漏洞。 幸运的是,大多数这些安全漏洞的修复成本都不高。
这种方法降低了应用程序中的安全风险,因为测试会针对开发期间引入代码的问题提供即时反馈。
开发人员还通过静态应用程序安全测试了解安全性,因此他们可以开始生产安全软件。
Fortify SCA 使用广泛的安全编码规则知识库和多种算法来分析软件应用程序的源代码以查找安全漏洞。 该方法分析数据和执行可以遵循的任何可行路径,以识别漏洞并提供补救措施。
及早发现安全问题
Fortify SCA 模仿编译器。 在 Fortify 扫描之后,此工具读取源代码文件并将它们转换为增强的中间结构以进行安全分析。
所有的安全漏洞都很容易在中间格式中定位。 该工具附带一个由多个专用分析器组成的分析引擎,这些分析器将使用安全编码规则来分析代码是否违反了任何安全编码实践规则。
如果您想扩展静态分析功能并包含自定义规则,Fortify SCA 还附带一个规则生成器。 可以根据任务和受众以不同的格式查看此类设置中的结果。
Fortify 软件安全中心 (SSC) 帮助管理结果
Fortify Software Security Center (SSC) 是一个集中式管理存储库,可提供对组织的整个应用程序安全程序的可见性。 通过 SSC,用户可以在发现安全威胁时审核、审查、确定优先级和管理补救措施。

Fortify SSC 提供了组织中应用程序安全状况的准确范围和图片。 SSC 驻留在中央服务器中,但会接收来自实时、动态和静态分析等不同应用程序安全测试活动的结果。
Fortify SCA 可以进行哪些类型的代码分析?

在进行代码分析时,强化扫描借鉴了有害王国的体系结构。 这些是 Fortify SCA 所做的分析类型;
- 输入验证和表示 -与输入验证和表示相关的问题来自替代编码、数字表示和元字符。 此类问题的示例是“缓冲区溢出”、“跨站点脚本”攻击和“SQL 注入”,这些问题在用户信任输入时出现。
- API 滥用。 调用者未能遵守合同的结束是最常见的 API 滥用类型。
- 安全功能。 该测试区分软件安全和安全软件。 分析将侧重于身份验证、特权管理、访问控制、机密性和密码学问题。
- 时间和状态。 计算机可以非常快速地在不同任务之间切换。 时间和状态分析搜索由线程、信息、进程和时间之间的意外交互引起的缺陷。
- 错误。 Fortify SCA 将检查错误是否向潜在攻击者提供过多信息。
- 代码质量。 糟糕的代码质量通常会导致不可预测的行为。 但是,如果攻击者遇到编写不当的代码,他们就有机会操纵应用程序以谋取利益。
- 封装。 这是划定界限的过程。 这种分析可能意味着区分经过验证和未经验证的数据。
下载并安装 Fortify SCA
在开始安装过程之前,您必须;
- 从官方文档中查看系统要求
- 获取 Fortify 许可证文件。 从 Microfocus 下载页面选择您的包。 搜索 Fortify Static Code Analyzer,创建您的帐户,并获取 Fortify 许可证文件。

- 确保您已安装 Visual Studio Code 或其他受支持的代码编辑器
如何在 Windows 上安装
- 运行安装程序文件
Fortify_SCA_and_Apps_<version>_windows_x64.exe
注意:<version> 是软件发布版本
- 接受许可协议后点击下一步。
- 选择安装 Fortify 静态代码分析器的位置,然后单击下一步。
- 选择要安装的组件,然后单击“下一步”。
- 如果要安装 Visual Studio 2015 或 2017 的扩展,请指定用户。
- 指定
fortify.license
文件的路径后单击下一步。 - 指定更新安全内容所需的设置。 您可以通过将 URL 指定为 https://update.fortify.com 来使用 Fortify Rulepack 更新服务器。 单击下一步。
- 指定是否要安装示例源代码。 单击下一步。
- 单击下一步安装 Fortify SCA 和应用程序。
- 安装后单击更新安全内容,然后在安装完成后单击完成。
如何在 Linux 上安装
您可以按照相同的步骤在基于 Linux 的系统上安装 Fortify SCA。 但是,在第一步中,将其作为安装程序文件运行;
Fortify_SCA_and_Apps__linux_x64.run
您也可以使用命令行提示符安装 Fortify SCA。
打开你的终端并运行这个命令
./Fortify_SCA_and_Apps__linux_x64.run --mode text
按照命令行上的指示执行所有提示,直到完成安装过程。
如何运行强化扫描

安装完成后,就可以设置安全分析工具了。
- 转到安装目录并使用命令提示符导航到 bin 文件夹。
-
scapostinstall.
然后您可以键入 s 以显示设置。 - 使用这些命令设置语言环境;
键入 2 以选择设置。
键入 1 以选择常规。
键入 1 以选择区域设置
对于语言,键入English: en以将语言设置为英语。
- 配置安全内容更新。 键入 2 以选择设置,然后再次键入 2 以选择 Fortify 更新。 您现在可以通过将 URL 指定为 https://update.fortify.com 来使用 Fortify Rulepack 更新服务器。
- 键入
sourceanalyzer
以检查该工具是否已完全安装。
Fortify SCA 现在将在后台运行并检查所有代码是否存在安全漏洞。
包起来
在这个互联网时代,系统被黑客入侵和数据被泄露的案例已经变得十分猖獗。 幸运的是,我们现在拥有 Fortify Static Code Analyzer 等工具,可以在编写代码时检测安全威胁、发送警报并提供处理此类威胁的建议。 与其他工具一起使用时,Fortify SCA 可以提高生产力并降低运营成本。
您还可以探索软件组合分析 (SCA) 来提高应用程序的安全性。