FortifySCA与强化SSC之间的差异
Fortify SCA和Fortify SSC有什么区别?这些软件产生的报告是否有差异。我知道Fortify SSC是一个基于网络的应用程序。我可以使用Fortify SCA作为基于Web的应用程序吗?
Fortify SCA以前被称为源代码分析器(在fortify 360中),但现在是静态代码分析器。相同的首字母缩略词,相同的代码,只是名字改变了。
SSC(“软件安全中心”)以前称为Fortify 360 Server。惠普重新命名并进行了其他更改。
SCA是一个命令行程序。您通常使用SCA从静态代码分析角度扫描代码(通过sourceanalyzer或),生成FPR文件,然后使用Audit Workbench打开该文件,或将其上传到SSC,您可以在其中跟踪趋势。
审计工作台与SCA一起安装;它是一个图形应用程序,允许您查看扫描结果,添加审核数据,应用过滤器和运行简单报告。
另一方面,SSC是基于网络的;这是一个可以安装到tomcat或您喜欢的应用程序服务器的java。关于SSC的报告使用不同的技术,更适he运行集中度量。您可以报告特定扫描的结果,或历史记录(当前扫描与之前的扫描之间发生变化)。如果您想要扫描扫描的差异,趋势,历史等,请在上传FPR一段时间后使用SSC进行报告。
没有SSC,基本报告功能允许您将FPR文件(二进制)转换为xml,源代码审计工具fortify价格表,pdf或rtf,但只能给出特定扫描的结果,而不是历史记录(当前扫描和任何早期的)。
关闭主题:还有一个动态分析产品HP WebInspect。该产品还能够导出FPR文件,可以同样导入到SSC中进行报告。如果您希望定期安排动态扫描,北京源代码审计工具fortify,WebInspect Enterprise可以做到这一点。
Fortify软件
强化静态代码分析器
使软件更快地生产
转移景观
语言支持也得到了扩展,完全支持PHP,JavaScript,COBOL以及所有添加到版本5的ASP和Basic的classic-non-.NET版本。Fortify SCA以前一直支持C#,VB.NET,Java和C / C ++,源代码审计工具fortify版本,ColdFusion和存储过程语言,如Microsoft TSQL和Oracle PL / SQL。
“从基于COM的语言到.NET版本的迁移速度并没有像我们以前那样快,”Meftah解释说。 “这些COM语言的安装基础很大,我们从我们的安装基础和其他方面得到了很多查询。”
SANS Institute互联网风暴中心研究员Johannes Ullrich表示,Fortify SCA等代码分析工具对于成长型企业开发商店至关重要。
“我认为[代码分析工具]的部署方式不足,我看到很少使用它们,通常只适用于大型企业项目,”Ullrich说。 “这是一个巨大的时间保护,它没有找到所有的漏洞,但它找到标准的东西,它需要很多繁忙的代码审查。
Fortify SCA旨在与现有工具和IDE集成,包括Microsoft Visual Studio,Eclipse和IBM Rapid Application Developer(RAD)。基于Java的套件运行在各种操作系统上,包括Windows,Linux,Mac OS X和各种各样的Unix。
许可证的基准价格为每位开发人员约1,200美元,另外还需支付维护费用,并订阅更新的代码规则以防止出现的漏洞。
关于作者
迈克尔·德斯蒙德(Michael Desmond)是1105媒体企业计算组织的编辑兼作家。
Fortify软件
强化静态代码分析器
使软件更快地生产
“将FINDBUGS XML转换为HP FORTIFY SCA FPR | MAIN | CA特权身份管理员安全研究白皮书?
强化针对JSSE API的SCA自定义规则滥用
允许所有的行动
应用程序不检查服务器发送的数字证书是否发送到客户端正在连接的URL。
Java安全套接字扩展(JSSE)提供两组API来建立安全通信,一个HttpsURLConnection API和一个低级SSLSocket API。
HttpsURLConnection API默认执行主机名验证,再次可以通过覆盖相应的HostnameVerifier类中的verify()方法来禁用(在GitHub上搜索以下代码时,大约有12,800个结果)。
HostnameVerifier allHostsValid = new HostnameVerifier(){
public boolean verify(String hostname,SSLSession session){
返回真
}
};
SSLSocket API不开箱即可执行主机名验证。以下代码是Java 8片段,仅当端点标识算法与空字符串或NULL值不同时才执行主机名验证。
private void checkTrusted(X509Certificate [] chain,源代码审计工具fortify sca,String authType,SSLEngine engine,boolean isClient)
throws CertificateException {
...
String identityAlg = engine.getSSLParameters()。
getEndpointIdentificationAlgorithm();
if(identityAlg!= null && identityAlg.length()!= 0){
checkIdentity(session,chain [0],identityAlg,isClient,
getRequestedServerNames(发动机));
}
...
}
当SSL / TLS客户端使用原始的SSLSocketFactory而不是HttpsURLConnection包装器时,识别算法设置为NULL,因此主机名验证被默认跳过。因此,如果攻击者在客户端连接到“domain.com”时在网络上具有MITM位置,则应用程序还将接受为“some-evil-domain.com”颁发的有效的服务器证书。
这种记录的行为被掩埋在JSSE参考指南中:
“当使用原始SSLSocket和SSLEngine类时,您应该始终在发送任何数据之前检查对等体的凭据。 SSLSocket和SSLEngine类不会自动验证URL中的主机名与对等体凭
华克斯-北京源代码审计工具fortify由苏州华克斯信息科技有限公司提供。苏州华克斯信息科技有限公司在行业软件这一领域倾注了诸多的热忱和热情,华克斯一直以客户为中心、为客户创造价值的理念、以品质、服务来赢得市场,衷心希望能与社会各界合作,共创成功,共创辉煌。相关业务欢迎垂询,联系人:华克斯。