Fortify SCA产品组件及功能
Source
Code
Analysis
Engine(源代码分析引擎)
数据流分析引擎-----跟踪,记录并分析程序中的数据传递过程的安全问题
语义分析引擎-----分析程序中不安全的函数,方法的使用的安全问题
结构分析引擎-----分析程序上下文环境,结构中的安全问题
控制流分析引擎-----分析程序特定时间,状态下执行操作指令的安全问题
配置分析引擎
-----分析项目配置文件中的敏感信息和配置缺失的安全问题
特有的X-Tier™跟踪qi-----跨跃项目的上下层次,贯穿程序来综合分析问题
Secure
Coding
Rulepacks
™(安全编码规则包)
Audit
Workbench(审查工作台)
Custom
Rule
Editor
&
Custom
RuleWizard(规则自定义编辑器和向导)
DeveloperDesktop
(IDE
插件)
FortifySCA 分析安全漏洞的标准
OWASP top 2004/2007/2010/2013/2014(开放式Web应用程序安全项目)
2. PCI1.1/1.2/2.0/3.0(国际信用ka资料安全
技术PCI标准)
3. WASC24+2(Web应用安全联合威胁分类)
4. NIST SP800-53Rev.4(美国与技术研究院)
5. FISMA(联邦信息安全管理法案)
6. SANS Top25 2009/2010/2011(IT安全与研究组织)
7. CWE(MITRE公司安全漏洞词典)
Fortify软件
强化静态代码分析器
使软件更快地生产
如何修正HP Fortify SCA报告中的弱点?
常见的静态程序码扫描工具(又称原始码检测,白箱扫描),例如HP Fortify SCA,被许多企业用来提高资讯安全的透明度以及外部的法规遵循。但是拿到报告之后怎么办呢?
对于许多开发者来说,HP Fortify SCA的报告被视为麻烦制造者,因为它们虽然指出了弱点(不论是真的或是误报),但却没有提供任何修正这些弱点的方法。
有没有简单的方法能够修正静态程式码扫描工具找到的弱点呢?
Lucent Sky AVM和静态程序码扫描工具一样会指出弱点,同时提供即时修复 - 一段安全的程式码片段,能够直接插入程式码中来修正跨站脚本(XSS),SQL注入和路径处理这些常见的弱点。
以.NET(C#和VB.NET)和Java应用程式来说,Lucent Sky AVM可以修正多达90%所找到的弱点。
一起使用HP Fortify SCA和Lucent Sky AVM
HP Fortify SCA只会告诉你弱点在哪里,而Lucent Sky AVM会指出它们的位置以及修正方式(并且实际为你修正他们,你喜欢的话)HP Fortify SCA是被设计来供资安人士使用,因此设计理念是找出大量的结果,再依赖资讯安全专家来移除其中的误报.Lucent Sky AVM则是专注于找出会真正影响应用程式安全的弱点,并依照你或你的开发与资讯安全团队的设定来可靠的修正这些弱点。你可以深入了解Lucent Sky AMV的修正流程。
Fortify软件
强化静态代码分析器
使软件更快地生产
强化SCA Eclipse修复插件
惠普企业HPE社区
下载
描述
发布
相似的项目
评测
联系我们
描述
用于Eclipse的HPE Security Fortify修补插件(Eclipse Remediation Plugin)与HPE Security Fortify软件安全中心配合使用,可以从Eclipse IDE向软件安全分析添加补救功能。 Eclipse Remediation Plugin是一个轻量级的插件选项,用于不需要Audit Workbench和Eclipse Complete Plugin的扫描和审核功能的开发人员.Eclipse Remediation Plugin可以帮助开发人员快速轻松地了解所报告的漏洞并实施适当的解决方案。开发人员可以在Eclipse中编写代码时解决安全问题。您的组织可以使用软件安全中心的Eclipse修复插件来管理项目,并向相关开发人员分配具体问题。
Fortify软件
强化静态代码分析器
使软件更快地生产
“将FINDBUGS XML转换为HP FORTIFY SCA FPR | MAIN | CA特权身份管理员安全研究白皮书»
强化针对JSSE API的SCA自定义规则滥用
安全套接字层(SSL / TLS)是使用加密过程提供身份验证,机mi性和完整性的广泛使用的网络安全通信协议。为确保该方的身份,必须交换和验证X.509证书。一方当事人进行身份验证后,协议将提供加密连接。用于SSL加密的算法包括一个安全的散列函数,保证了数据的完整性。
当使用SSL / TLS时,必须执行以下两个步骤,以确保中间没有人篡改通道:
证书链信任验证:X.509证书指ding颁发证书的证书颁发机构(CA)的名称。服务器还向客户端发送中间CA的证书列表到根CA。客户端验证每个证书的签名,到期(以及其他检查范围,例如撤销,基本约束,策略约束等),从下一级到根CA的服务器证书开始。如果算法到达链中的后一个证书,没有违规,则验证成功。
主机名验证:建立信任链后,客户端必须验证X.509证书的主题是否与所请求的服务器的完全限定的DNS名称相匹配。 RFC2818规定使用SubjectAltNames和Common Name进行向后兼容。
当安全地使用SSL / TLS API并且可能导致应用程序通过受攻击的SSL / TLS通道传输敏感信息时,可能会发生以下错误使用情况。
证明所有证书
应用程序实现一个自定义的TrustManager,使其逻辑将信任每个呈现的服务器证书,而不执行信任链验证。
TrustManager [] trustAllCerts = new TrustManager [] {
新的X509TrustManager(){
...
public void checkServerTrusted(X509Certificate [] certs,
String authType){}
}
这种情况通常来自于自签证书被广泛使用的开发环境。根据我们的经验,我们通常会发现开发人员完全禁用证书验证,而不是将证书加载到密钥库中。这导致这种危险的编码模式意外地进入生产版本。
当这种情况发生时,它类似于从烟雾探测器中取出电池:检测器(验证)将仍然存在,提供错误的安全感,因为它不会检测烟雾(不可信方)。实际上,当客户端连接到服务器时,验证例程将乐意接受任何服务器证书。
在GitHub上搜索上述弱势代码可以返回13,823个结果。另外在StackOverflow上,一些问题询问如何忽略证书错误,获取类似于上述易受攻击的代码的回复。这是关于投piao答案建议禁用任何信任管理。