静态代码分析器SCA(Static Code Analyzer):包含多种语言的安全相关的规则,而对于这些规则相关的违反状况则是SCA重点确认的内容。SCA可以做到快速准确定位修正场所,同时还可以定制安全规则。
在使用上SCA主要按照如下步骤进行:
- 步骤1: 单独运行SCA或者将SCA与构建工具进行集成
- 步骤2: 将代码转换为临时的中间格式
- 步骤3: 对转换的中间格式的代码进行扫描,生成安全合规性的报告
- 步骤4: 对结果进行审计,一般通过使用Fortify Audit Workbench打开FPR(Fortify Project Results)文件或者将结果上传至SSC(Fortify Software Security Center)来进行分析,从而直接看到最终的结果信息
解析器(Analyzers)
Fortify SCA对于脆弱性的检测是通过如下八个解析器来实现的:
- Buffer(缓冲区):缓冲区可能是堆类型的缓冲区也可以是栈类型的缓冲区,此解析器主要用于检测对于产生缓冲区溢出的状况进行检测和分析,并将其报告给使用者。
- Configuration(配置):此解析器用于检测和应用部署配置文件相关的一些错误或者不安全的设定,比如会分析和检查Web应用的用户会话的超时设定是否合理。
- Content(内容):此解析器用于检查静态HTML页面一确认是否包含安全上脆弱性相关的内容,除了静态HTML页面,此解析器还可以检查动态页面的文件比如PHP/JSP等。
- Control Flow(