静态源代码安全检测工具比较Word文档下载推荐.docx
- 文档编号:21193113
- 上传时间:2023-01-28
- 格式:DOCX
- 页数:6
- 大小:20.62KB
静态源代码安全检测工具比较Word文档下载推荐.docx
《静态源代码安全检测工具比较Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《静态源代码安全检测工具比较Word文档下载推荐.docx(6页珍藏版)》请在冰豆网上搜索。
随着计算机语言的不断演进,源代码分析的技术也在日趋完善,在不同的细分领域,出现了很多不错的源代码分析产品,如KlocworkInsight、RationalSoftwareAnalyzer和Coverity、Parasoft等公司的产品。
而在静态源代码安全分析方面,Fortify公司和OunceLabs公司的静态代码分析器都是超级不错的产品。
对于源代码安全检测领域目前的供给商有很多,这里咱们选择其中的三款具有代表性的进行对比,别离是Fortify公司的FortifySCA,SecurityInnovation公司的CheckmarxSuite和Armorize公司的CodeSecure。
2.工具介绍
.FortifySCA(SourceCodeAnalysis)
FortifySoftware公司是一家总部位于美国硅谷,致力于提供给用软件安全开发工具和管理方案的厂商。
Fortify为应用软件开发组织、安全审计人员和应用安全管理人员提供工具并确立最佳的应用软件安全实践和策略,帮忙他们在软件开发生命周期中花最少的时间和本钱去识别和修复软件源代码中的安全隐患。
FortifySCA是Fortify360产品套装中的一部份,它利用fortify公司特有的X-TierDataflow™analysis技术去检测软件安全问题。
长处:
目前全世界最大静态源代码检测厂商、支持语言最多
缺点:
价钱昂贵、利用不方便
.CheckmarxCxSuite
Checkmarx是以色列的一家高科技软件公司。
它的产品CheckmarxCxSuite专门设计为识别、跟踪和修复软件源代码上的技术和逻辑方面的安全风险。
初创了以查询语言定位代码安全问题,其采用独特的辞汇分析技术和CxQL专利查询技术来扫描和分析源代码中的安全漏洞和弱点。
利用CxQL查询语言自概念规则
输出报告不够美观、语言支持种类不全面
.ArmorizeCodeSecure
阿码科技成立于2021年,总部设立于美国加州圣克拉拉市,研发中心位于台湾的南港软件工业园区。
阿码科技提供全方位网络安全解决方案,捍卫企业免于受到黑客利用Web应用程序的漏洞所发动的解决。
阿码科技CodeSecure可有效地协助企业与开发人员在软件开发进程及项目上线后找出Web应用程序风险,并清楚交代风险的前因后果(如何进入程序,如何造成问题)。
CodeSecure内建语法剖析功能无需依赖编译环境,任何人员都可利用Web操作与集成开发环境双接口,找出存在信息安全问题的源代码,并提供修补建议进行调整。
CodeSecure依托于自行开发的主机进行远程源代码检测,在保证速度稳定的同时方便用户进行Web远程操作。
Web结合硬件,速度快、独具特色的深度分析
支持语言种类较少、价钱不菲
3.对比
FortifySCA简写为SCA,CheckmarxCxSuite简写为CxSuite,ArmonizeCodeSecure简写为CodeSecure。
SCA
CxSuite
CodeSecure
厂商
FortifySoftware
Checkmarx
阿码科技
支持语言
Java,JSP,,C#,,C,C++,COBOL,ColdFusion,Transact-SQL,PL/SQL,JavaScript/Ajax,Classic,ASP,VBScript,VB6,PHP
JAVA、(C#、)、JavaScript、Jscript、C/C++、APEX
(C#、)、ASP、JAVA、PHP
风险种类
400种
300种
参考CWE
风险类型参考来源
CWE、OWASP
XX文库-让每个人平等地提升自我CWE、OWASP
漏报率
最低
低
误报率
稍高
是否支持SaaS
否
是
软硬件类型
纯软件
Web结合硬件设备
运行平台
无限制
Windows
NETFramework
运行速度
取决于电脑配置
速度不定
由主机配置决定
速度恒定
报告格式
PDF、XML、CSV、HTML
Web、PDF
报告内容
完整
按照风险级别不同分为多个文件
核心内容完整
扫描信息等缺失
非常完整
但修改建议放于最后
报价
100万/软件
70万/软件
100万/软硬件
性价比
中
高
从软件支持的源代码语言上来讲,FortifySCA(下文简称SCA)支持多达17种语言,CheckmarxCxSuite(下文简称CxSuite)其次,而ArmonizeCodeSecure(下文简称CodeSecure)在三款软件中支持的最少,仅仅支持几种最多见语言,不过这几种大体涵盖了绝大多数应用中利用的编程语言,大体上可以支持此刻大多数应用的源代码扫描。
从风险的分类来讲,各个厂商都有其自己独特的分类方式和不同的种类数量,不过从实际应用中可以看出,整体上仍为OWASP发布的几类风险,如SQL注入、跨站脚本等,已经可以知足实际中开发人员和测试人员的需求,对于各个厂商不同的部份,一般来讲主要的区别在于理解不同,看问题的角度不同,并无谁错谁对之原则性问题。
从运行平台的角度,CodeSecure这个产品目前看来已经将SaaS的理念很好的融合进来,整个软件的操作界面为Web方式,用户可以通过网页进行操作,B/S的方式可以将操作系统的影响降到最低,只要有一台可以上网的电脑和阅读器,无论什么操作系统都可利用CodeSecure远程进行源代码扫描,CodeSecure依托的是一台Armonize自行研制的主机,利用硬件设备的益处在于可以适用于多种场合,不会因为测试人员或是开发人员的电脑配置影响扫描速度,扫描的速度完全取决于主机的性能。
而SCA和CxSuite主要仍是单机软件,但目前也在不断地向SaaS的方向进行过渡,而且提供了相当全面的贯彻整个软件开发流程(SDLC)的解决方案与服务给用户。
其中CxSuite这个产品标明了利用该软件的硬件配置,为Windows操作系统和.NET框架,这个产品目前应该为利用.NET框架进行开发,所以运行环境有必然的局限性。
同时,SCA和CxSuite因为是单机软件,一方面在利用前需要安装,另一方面其运行速度取决于运行软件的电脑性能,对于利用该软件的电脑配置有必然的要求。
三种产品都利用了各自的技术对于要挟进行检测,SCA利用的是已取得专利的X-Tier™数据流分析器,这三种产品中只有CxSuite宣称可以达到零误报率,因为其对于风险的理解是风险必需在外形上呈现出来才被考虑为实际的风险,这种理解方式可以说是别出心裁,从代码安全的角度来讲,检测的目的是为了发现问题并及时更正,同时要针对于最关键的问题进行更正,这也是这三款软件都包括TOPX的统计的目的,从这一点上讲,CxSuite的风险报告是超级谨慎的。
SCA在以前的利用中发现有必然的误报率,不过换个角度想,误报相较漏报是可以容忍的,规则越严格,误报率就会相应的上升而漏报率就会相应的下降,源代码检测工具目前均为静态的进行代码的扫描,即所有的检测均是依照“规则”来进行,任何一款产品都不可能达到真正的零误报、零漏报。
所以可以说SCA的规则检查稍显简单,CxSuite和CodeSecure的检查比较谨慎。
而从漏报率上来看,谨慎的查找必将会致使漏报率的提升,这一点上SCA和CodeSecure只说明了低漏报率,而CxSuite内部包括了一种类似于C#称为CxQL的查询语言,支持利用这种语言进行查询,方便用户进行特定的查找。
另两款软件利用的都是规则的方式,其本质上应该是相类似的,这一点上规则似乎更容易被用户接收,可是CxQL的方式确实增强了用户的操作性。
从结果输出上来讲,三款软件都支持多种输出方式,而作为报告PDF格式可以说是最书面的一种格式。
在这一点上,三款软件输出格式略有不同。
SCA报告组成如下:
扫描概述、按风险的分类进行详细描述,包括每一个风险的发现位置,代码上下文,风险源和风险输出,和改良方式,各类风险描述以后是依照风险类别的所有风险的统计和依照风险品级的统计图表。
SCA的每种类型的文件生成一个PDF文件,便于用户对于风险严重程度的不同采取不同的策略。
CxSuite报告组成如下:
风险依照不同分类方式的统计图、风险的数据统计情况、风险最高的文件TOP10、依照类别进行风险详述,包括风险的名称、描述、常见危害、在软件开发各阶段的相应处置方式、详细示例,列举每一个风险的传输路径和相应位置代码。
CodeSecure报告组成如下:
目录、重点精华,包括检测信息、弱点密度规范散布趋势、弱点最多的文件TOP5,弱点索引,弱点的详细信息,包括弱点的全程跟踪,最后是弱点信息及修改建议、所有的进入点。
三款软件的报告中以SCA的最有特色,将不同级别的风险分文件显示对于程序员进行修改是极为方便的;
CodeSecure的报告最为规范,整个文档包括目录,结构完整,唯一的不足是将风险的修改建议放在了最后,查阅有些不便;
CxSuite的内容可以说是最概要的,只包括了风险的最关键内容,对于程序员来讲应该是最简练的。
4.总结
这三款静态源代码扫描工具都有其各自特色,SCA支持的语言多达17种,大体上涵盖了绝大多数的应用,具有相当普遍的适用性,但同时也使得其价钱超级昂贵;
CxSuite支持的语言包括常见Web应用的语言,适用范围大体上包括了大部份的应用,其利用独创的语言来自概念规则超级有特色,价钱较之SCA有必然的优势;
CodeSecure支持的语言较少,不过大体上可以适用于当前大多数的B/S结构应用,它是唯一的软硬件结合的产品,在免去用户安装步骤的同时将扫描运行于特定设备之上,有助于提高运行速度,也因为包括硬件的缘故,其价钱不菲。
SCA极广的适用性使其适用于横跨多种语言的开发和测试人员,CxSuite的较高性价比使其适于基于Web的开发人员和测试人员,CodeSecure稳定的速度和B/S的独特结构使得Web开发或测试的多人同时利用变得极为方便。
随着应用的安全性愈来愈受到人们的重视,静态源代码扫描和动态扫描将逐渐融合,未来将会有更多更优秀的源代码扫描工具诞生,让咱们拭目以待吧。
附录A其他静态源代码检测产品
公司
产品
artofdefence
Hypersource
JAVA
Coverity
Prevent
JAVA.NETC/C++
开源
Flawfinder
C/C++
Grammatech
CodeSonar
HP
DevInspect
KlocWork
Insight
JAVA.NETC/C++,C#
OunceLabs
Ounce6
JAVA.NET
Parasoft
JTEST等
SofCheck
InspectorforJAVA
UniversityofMaryland
FindBugs
Veracode
SecurityReview
FindBug
PMD/Lint4
Weblnspect
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 静态 源代码 安全 检测工具 比较