力香: 守护!自在! 读书!

导航

Fortify

sourceanalyzer -b my_buildid -scan -f xxx.fpr

-b  取一个build的ID号,通常以这个项目名称加扫描时间为buildID
-Xmx 指定JVM使用的最大内存数,这个SCA的JVM使用得
-clean 清除之前的转换的NST, 一般于-b一起使用,在项目转换之前。
-show -files 在完成转换之后, 展示这次转换的文件,多用于检查转换是否成功、完整。
-exclude 指定转换所排除的文件类型或者文件夹。
-cp  指定项目所依赖的classpath, 主要用于JAVA项目
-jdk 指定项目所用的JDK版本

-encoding 指定转换时遇到非英文的字符时的编码方式, 如UTF-8, JBK
Touchless 指定于构建工具集成, 如makefile, ant 等
-nc 指定转换不需要编译,用于 c/C++项目,编译器不支持时。
-c 指定转换所用的编译器,主要在扫描C/C++项目时使用。
-libdirs 指定.net 项目所用的JDK版本。

-vsversion 指定VS的版本,VS2003, 2005, 2008, 2010, 分别为7.1, 8.0, 9.0, 10.0
-append 指定本次扫描的结果追加到另一个FPR结果中,一般用于大项目分为多个部分扫描,生成一个FPR的情况。

-bin 指定C、C++项目编译后的.o.exe文件
-f 指定生成扫描结果文件的名字和路径
-filter 指定一个过滤文件来屏蔽一些不想扫描出来的问题,如误报。

-scan 指定本次操作为SCA的扫描分析阶段
-show-build-ids 显示本机器上共有多少个buildID
-show-build-tree 显示每一个文件在转换时所依赖的文件
-show-build-waring 显示在转换过程或者扫描过程时的warning 信息
-disable-source-rendering 关闭在扫描过程中对源代码的加载。

 

http://findbugs.sourceforge.net/

http://iis.hk/code-audit/about-fortify-sca.html

 

http://hao.jobbole.com/static_code_analysis_tool_list_opensource_enterprise/

 

 


HP Fortify SCA采用专利的X-Tier数据流程分析技术,完整分析各种程序语言之执行流程、数据输入/输出及程序语法,即使同一个应用系统中包含了不同语言的源代码,也可以完整分析及串接。透过HP Fortify SCA持续更新的检查规则(Rulepack),让最新的弱点可以被发现并修补,使用者也可以自行定义审计规则,针对特殊程序编写规则或要求进行检查。
1.Fortify SCA 扫描引擎介绍:

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

数据流引擎:跟踪,记录并分析程序中的数据传递过程所产生的安全问题。
语义引擎:分析程序中不安全的函数,方法的使用的安全问题。
结构引擎:分析程序上下文环境,结构中的安全问题。
控制流引擎:分析程序特定时间,状态下执行操作指令的安全问题。
配置引擎:分析项目配置文件中的敏感信息和配置缺失的安全问题。
特有的X-Tier™跟踪器:跨跃项目的上下层次,贯穿程序来综合分析问题。


1.翻译阶段(Translation Phase)
将各类不同的程序语言转译成分析引擎可以分析的中继语言(Metaleangeage)。
2.分析阶段(Analysis Phase)
依据内置或自行定义的检查规则分析中继语言中是否有符合条件的安全漏洞或质量睱疵。
3.审计阶段(Audit Phase)
展现审计后的结果,让审计人员或开发人员可以很容易地了解所发现的问题,并确认是否应进行修补。


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


4.Fortify SCA支持的编程语言:

•ABAP/BSP

•ActionScript/MXML (Flex)

•ASP.NET, VB.NET, C# (.NET)

•C/C++

•Classic ASP (w/VBScript)

•COBOL

•ColdFusion CFML

•HTML

•Java (including Android)

•JavaScript/AJAX

•JSP

•Objective-C

•PHP

•PL/SQL

•Python

•T-SQL

•Ruby

•Swift

•Visual Basic

•VBScript

 

posted on 2016-03-28 16:29  力香  阅读(2129)  评论(0编辑  收藏  举报