Fortify SAST 新增语言支持
提供27种以上的主要语言及其框架的准确支持和敏捷更新。之后将添加更多新的语言版本,从根本上改进、简化工作方式。以下语言更新已添加到 Fortify Static 代码分析器:
.NET
增加对 .NET 5.0、C# 9、 Blazor 语言和框架的支持。
MSBuild Support Update
增加对16.8和16.9版本的支持。
Go
增加对1.15和1.16版本的支持;增加对 GOPROXY 环境变量的支持。
Java
更新 JSP 翻译以减少误报;改进字节码分析。
JavaScript
增加对 TypeScript 4.1及Angular 10、11语言和框架的支持。
Kotlin
增加对 Kotlin 1.4.20版本的支持。
PHP
增加对 PHP 7.2、7.3、7.4及8.0版本的支持。
Python
增加对Python 3.9、Django 3.1语言和框架的支持。
Swift/Obj-C
增加对 Xcode 12.4版本的支持。
Operating Systems (Linux)
增加对以下 Linux 服务器的支持:1. SUSE Linux Enterprise Server 15
2. Red Hat Enterprise Linux 8.2
3. CentOS Linux 7.6-1810 and 8.2-2004
4. Ubuntu 20.04.1 LTS
Micro Focus Visual COBOL (Technology Preview)
增加对 Micro Focus Visual COBOL 6.0.版本的支持。
C/C++ (Technology Preview)
使用新的基于 Clang 的翻译改进对 C++11 结构的支持。
Fortify常见问题解决方法
.Net环境匹配问题
由于Fortify SCA版本对于支持.Net环境的版本有限,比如蕞大支持到Microsoft SDK 7.0A
版本的SDK,如下脚本:
1、echo Searching VS Version....
2、reg QUERY "HKLM\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v7.0A" 2>NUL >NUL
3、IF %ERRORLEVEL%==0 (
4、set LAUNCHERSWITCHES=-vsversion 10.0 %LAUNCHERSWITCHES%
5、echo Found .NET 4.0 setting to VS version 10.0
6、GOTO VSSELECTED
通过Windows注册表中的SDK信息设置扫描依赖版本;
而且,由于Windows版本和.Net Framework版本的差异,环境上往往需要自己增加许多配置项,蕞常见的配置如下:
(1)SDK版本设置:
比如是8.1版本的,我们可以修改脚本文件:
reg QUERY "HKLM\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v8.1A" 2>NUL >NUL
(2)ildasm路径设置
Unable to locate ildasm是一个常见问题,在转换中没有寻找到ildasm程序,可以通过以下方法设置:
1、fortify-perties文件增加一行com.a.IldasmPath=C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools\ildasm(一定是双斜杠)
Fortify审计界面概述
下图显示了“Auditing(审计)”界面中的 Webgoat FPR 文件示例。
Audit Workbench 界面:
Audit Workbench 界面由以下几个面板组成:
“Issues(问题)”面板
“Analysis Trace(分析跟踪)”面板
“Project Summary(项目摘要)”面板
“Source Code Viewer(源代码查看器)”面板
“Function(函数)”面板
“Issue Auditing(问题审计)”面板
“Issues(问题)”面板
使用 Issues(问题)面板,您可以对希望审计的问题进行分组和选择。该面板由下列元素组成:
“Filter Set(过滤器组)”下拉列表
“Folders(文件夹)”选项卡
Group by(分组方式)
“Search(搜索)”框
Fortify SCA规则定义
Fortify sca主要对中间代码进行了数据流分析、控制流分析、代码结构分析、内容和配置文件分析。1.新建规则这里以fortify安装目录下自带的php示例代码(Samples\basic\php)为例:
我们在缺陷代码基础上增加了validate函数去做安全净化处理,fortify sca不能识别这个函数的作用。
再次扫描后我们发现fortify sca已经可以识别我们自定义的validate函数
另外新建规则还可以使用fortify自带的自定义用户规则向导,可以通过图形化方式配置40多种规则类型。当然如果还有更高的规则定制要求,就在向导生成的xml基础上进一步更新吧。
以上信息由专业从事源代码扫描工具fortify规则库的华克斯于2025/8/18 15:39:13发布
转载请注明来源:http://zhongqing.mf1288.com/hksxxkj-2882101294.html