SonarQube和Fortify的区别对比

admin 2023年6月21日11:11:17评论62 views字数 1549阅读5分9秒阅读模式
一直以来,有很多用户在问,SoanrQube和Fortify都是白盒的源代码扫描工具,这两个产品有什么不一样的地方呢?
苏州华克斯信息科技有限公司做为SonarQube和Fortify这两个产品在中国的核心合作伙伴,希望下边的内容能解答您的疑惑。

SonarQube是一个代码质量分析平台,便于管理代码的质量,可检查出项目代码的漏洞和潜在的逻辑问题。同时,它提供了丰富的插件,支持多种语言的检测。
主要的核心价值体现在如下几个方面:
Ø检查代码是否遵循编程标准:如命名规范,编写的规范等。
Ø检查设计存在的潜在缺陷:SonarQube通过插件Findbugs等工具检测代码存在的缺陷。
Ø检测代码的重复代码量:SonarQube可以展示项目中存在大量复制粘贴的代码。
Ø检测代码中注释的程度:源码注释过多或者太少都不好,影响程序的可读可理解性。
Ø检测代码中包类之间的关系:分析类之间的关系是否合理,复杂度情况。
  Fortify SCA是一个静态的、白盒的软件源代码安全测试工具。它通过内置的五大主要分析引擎:数据流、语义、结构、控制流、配置流等对应用软件的源代码进行静态的分析,分析的过程中与它特有的软件安全漏洞规则集进行全面地匹配、查找,从而将源代码中存在的安全漏洞扫描出来,并给予整理报告。
对比分析
使用WebGoat做为测试用例来分析一下两个产品的差异
1、使用工具:
ØFortify SCA 
ØSonarQube 
2、使用默认规则,不做规则调优。
3扫描后直接导出报告,不做审计。
         
、扫描问题总览
Fortify SCA扫描结果报告:
         SonarQube和Fortify的区别对比 SonarQube和Fortify的区别对比
  
SonarQube扫描结果总览
SonarQube和Fortify的区别对比 SonarQube和Fortify的区别对比
         
SonarQube和Fortify的区别对比
         
上边可以看出
Fortify扫描出CriticalHigh级别的漏洞共计757条
SonarQube扫描出阻断和严重级别的漏洞为28条,关于软件质量问题有2K+
         
Fortify扫描内容分析
SonarQube和Fortify的区别对比 SonarQube和Fortify的区别对比 SonarQube和Fortify的区别对比 SonarQube和Fortify的区别对比
Fortify扫描出来的内容,基本上都是和安全相关的信息。
例如
ØPrivacy Violation
ØCross-Site Scripting: Reflected
ØCross-Site Scripting: Persistent
ØSQL Injection

、SonarQube扫描内容分析
SonarQube和Fortify的区别对比 SonarQube和Fortify的区别对比
SonarQube和Fortify的区别对比
SonarQube扫描出来的内容,基本上都代码质量相关联
如:
ØModifiers should be declared in the correct order
ØSections of code should not be commented out
ØConstructors should not be used to instantiate "String", "BigInteger", "BigDecimal" and primitive-wrapper classes
ØString function use should be optimized for single characters
ØString literals should not be duplicated      
SonarQube从七个维度分析代码质量问题:
可靠性
SonarQube和Fortify的区别对比
安全性
SonarQube和Fortify的区别对比
可维护性
SonarQube和Fortify的区别对比
覆盖率
SonarQube和Fortify的区别对比
重复
SonarQube和Fortify的区别对比
大小
SonarQube和Fortify的区别对比
复杂度
SonarQube和Fortify的区别对比
问题
SonarQube和Fortify的区别对比
         
单论代码分析能力,拿SonarJava举例,对于大多数最佳实践类型的问题,比如不该使用MD5,不要用主线程sleep等,都还是查的不错。但是真正严重的安全漏洞,比如SQL注入之类的污点传播类问题,一般涉及跨文件,函数,以及涉及对虚函数、数组、容器的处理,还要识别通过框架等配置的数据处理逻辑,那就比Fortify差太多了。。
这也是SonarQube分析器跟Fortify工具的差距所在
         
SonarQube和Fortify的区别对比

原文始发于微信公众号(华克斯):SonarQube和Fortify的区别对比

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年6月21日11:11:17
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   SonarQube和Fortify的区别对比http://cn-sec.com/archives/1821354.html

发表评论

匿名网友 填写信息