Fortify 软件安全中心(SSC)
Micro Focus Fortify 软件安全中心(SSC)是一个集中的管理存储库,为企业的整个应用安全程序提供可视性,以帮助解决整个软件组合的安全漏洞。
用户可以评估、审计、优先级排序和管理修复工作,安全测试活动,并通过管理仪表板和报告来衡量改进,以优化静态和动态应用安全测试结果。因为 Fortify SSC 服务器位于中心位置,可以接收来自不同应用的安全性测试结果(包括静态、动态和实时分析等),有助于准确描述整体企业应用安全态势。
Fortify SSC 可以对扫描结果和评估结果实现关联跟踪,并通过 Fortify Audit Workbench 或 IDE 插件(如 Fortify Plugin for Eclipse, Fortify Extension for Visual Studio)向开发人员提供这些信息。用户还可以手动或自动地将问题推送到缺陷跟踪系统中,包括 ALM Octane、JIRA、TFS/VSTS 和 Bugzilla 等。
Fortify扫描Qt项目
Fortify对于C++类型的代码扫描需要结合编译指令实现,但Fortify支持的C++指令并不多,所以有些类似使用Qt工具开发的项目就需要做一定调整来适配Foritfy的扫描。使用gcc或者cl级别的命令来实现会很麻烦,因为需要对于Qt的qmake工具运行逻辑有一定深入分析,熟知其生成的Makefile以来的环境和make工具,难度较大,所以更建议以Visual Studio的Fortify插件为入口,先将Qt项目转成Visual Studio项目,再使用插件扫描,这样就会容易很多。
我们简单介绍一下流程:
1、在Visual Studio中安装Qt Visual Studio Tools插件和Fortify插件。
2、在Qt插件的Qt Opt选项中配置编译套件,该套件位置可以在Qt对应版本下面,比如Qt\Qt5.12.8\5.12.8\msvc2017。
3、使用Qt插件的Open Qt Project File (.pro)...打开对应的Qt项目,并使用插件的Convert custom build steps to Qt/MSBuild选项,将项目转成vs项目,并生成对应的.vcsproj文件。
测试能成功运行后,就可以使用Fortify进行扫描了。步骤类似与上面的Android项目,即可生成对应的fpr文件。另外,如果想要使用命令来自动化的进行项目扫描,但不知道一个类型的项目如何进行适配,可以解压使用插件生成的fpr文件。查看其中audit.fvdl文件中的sun.mand属性内容,里面包含了该项目生成扫描中间文件的指令参数,可以参考了解如何配置自动化的扫描平台。
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扫描的华克斯于2025/3/28 12:31:03发布
转载请注明来源:http://szhou.mf1288.com/hksxxkj-2851563886.html