• Fortify

  • Fortify SCA简介:

    Fortify SCA 是一个静态的、白盒的软件源代码安全测试工具。它通过内置的五大主要分析引擎:数据流、语义、结构、控制流、配置流等对应用软件的源代码进行静态的分析,分析的过程中与它特有的软件安全漏洞规则集进行全面地匹配、查找,从而将源代码中存在的安全漏洞扫描出来,并给予整理报告。扫描的结果中不但包括详细的安全漏洞的信息,还会有相关的安全知识的说明,以及修复意见的提供。

    Fortify SCA 产品组件介绍

    Fortify SCA是一个产品的套件,它是由内置的分析引擎、安全编码规则包、审查工作台、规则自定义编辑器和向导、IDE 插件五部分组件,五个组件配合工作完成对源代码安全漏洞的扫描,分析,查看,审计等工作。简单介绍这五个部分如下:

  • 分析引擎:内置五大分析引擎与规则包配合工作,从五个侧面全面地分析程序源代码中的安全漏洞。

  • 安全编码规则包:由多位顶级的软件安全专家,多年研究出来的数十万条软件安全漏洞特征的集合。目前能查找出来约350多种安全漏洞,内置在SCA中与分析引擎配合工作。

  • 审计工作台:一个用来查看,审计SCA分析出来的漏洞结果的综合平台,它包含大量丰富的软件漏洞信息,如下图2 所示,它包括了漏洞的分级,漏洞产生的全过程,漏洞所在的源代码行数定位,以及漏洞的解释说明和推荐的修复建议等内容,大大提高了用户对SCA的查看,审计等工作的便携性,从而提高工作效率。

  • 规则自定义向导/编辑器:Fortify SCA的规则支持自定义功能,方便用户来扩展SCA对漏洞的分析能力,所以SCA提供了一个用户自定义的向导和编辑器。

  • IDE插件:为了方便用户使用SCA对程序源代码进行安全扫描,它提供了多种IDE工具的插件,如Eclipse, Visual Studio,RAD, WSAD等。

      Fortify SCA 扫描引擎介绍

      Foritfy SCA主要包含的五大分析引擎:

    • 数据流引擎:跟踪、记录并分析程序中的数据传递过程所产生的安全问题。

    • 语义引擎:分析程序中不安全的函数,方法的使用的安全问题。

    • 结构引擎:分析程序上下文环境,结构中的安全问题。

    • 控制流引擎:分析程序特定时间,状态下执行操作指令的安全问题。

    • 配置引擎:分析项目配置文件中的敏感信息和配置缺失的安全问题。

    • 特有的X-Tier™跟踪器:跨跃项目的上下层次,贯穿程序来综合分析问题

      Fortify SCA 的工作原理

      Foritfy SCA 首先通过调用语言的编译器或者解释器把前端的语言代码(如JAVA,C/C++源代码)转换成一种中间媒体文件NST(Normal Syntax Tree)将其源代码之间的调用关系,执行环境,上下文等分析清楚。然后再通过上述的五大分析引擎从五个切面来分析这个NST,匹配所有规则库中的漏洞特征,一旦发现漏洞就抓取出来。形成包含详细漏洞信息的FPR结果文件,用AWB打开查看。

      Fortify SCA 扫描的结果如下

      Fortify SCA 的结果文件为.FPR文件,包括详细的漏洞信息:漏洞分类,漏洞产生的全路径,漏洞所在的源代码行,漏洞的详细说明及修复建议等。如图2

      图1:Fortify SCA 工作原理图

      图2:Foritfy AWB 查看结果图

        Fortify SCA支持的平台
        Fortify SCA支持的编程语言
        Fortify SCA plug-In 支持的有
        Fortify SCA目前能够扫描的安全漏洞种类有

        目前Fortify SCA可以扫描出约350种漏洞,Fortify将所有安全漏洞整理分类,根据开发语言分项目,再细分为8个大类,约350个子类,具体信息可登录Fortify 官方网http://www.fortify.com/vulncat/ 进行查询。

  • WebInspect软件介绍

    WebInspect是一种自动化动态应用安全测试(DAST)工具,可模拟真实的黑客技术和攻击,支持全面动态地分析错综复杂的Web应用和服务。WebInspect提供了Web应用程序和Web服务漏洞评估解决方案,使安全专业人员和规范审计人员可以在自己的环境中快速而轻松地分析众多的Web应用和Web服务。

  • 功能特点

  • 动态和运行时分析:测试运行网络应用和服务的动态行为,识别和优先处理安全漏洞。超越黑盒测试:集成了动态和运行时分析,可更加快速地找到并修复更多漏洞。

  • 简化了技术:优化测试资源。同步爬网等先进技术支持初级安全测试员执行专业级测试。

  • 合规性管理:管理部门可轻松了解有关漏洞、趋势、合规性管理和投资回报的信息。可清楚地向开发部门传达每个漏洞的详细信息及优先顺序。

  • 软件界面