FortifySCA扫描分析功能要求
·
跟踪可yi的输入数据,直到该数据被不安全使用的全过程中,分析数据使用中的安全隐患。
发现易于遭受攻击的语言函数或者过程,并理解它们使用的上下文环境,识别出使用特定函数或者过程带来的软件安全的隐患。
jing确地跟踪业务操作的先后顺序,发现因代码构造不合理而带来的软件安全隐患。
自动分析软件的配置和代码的关系,发现在软件配置和代码之间,由于配置丢失或者不一致而带来的安全隐患。
FortifySCA介绍
支持对测试结果进行分类或划分,并分发给不同的人进行确认和修复。
对工具和安全代码规则可以进行集中配置和管理,使分散在不同地点的测试机统一更新,提高了效率,保证了版本的一致性。
支持将测试结果在企业内部进行发布,使开发人员,测试人员,安全人员和管理人员可以通过WEB浏览器进行查看和审计。实现多个部门之间的协同工作,加强对问题的快速反应,提高管理能力,提高工作效率。
能够按用户和角色的不同来进行权限的划分,方便企业内各个团队的交流和沟通,同时保证了测试结果的保密性。
Fortify软件
Fortify logo.jpg
类型
前独立软件厂商
行业计算机软件
类型软件***
公司成立2003
Kleiner创始人Ted Schlein,Perkins,Caufield&Byers,Mike Armistead,Brian Chess,Arthur Do,Roger Thornton
总部圣马特奥,加利福尼亚州,美国
关键人物
约翰·杰克(前***执行官),雅各布·西(安全研究小组组长),布莱恩·国际象棋(前***科学家),亚瑟·杜(前总裁)
业主Hewlett Packard Company
网站
HP软件安全网页和
HP Fortify软件安全中心服务器
Fortify软件,后来被称为Fortify Inc.,是一家位于加利福尼亚州的软件安全供应商,成立于2003年,由惠普在2010年收购[1],成为惠普企业安全产品的一部分[2] [3]
2010年9月7日,HPE***执行官梅格·惠特曼(Meg Whitman)宣布,包括Fortify在内的Hewlett Packard Enterprise的软件资产将与Micro Focus合并,以创建一个独立的公司,惠普企业股东将保留多数所有权。l针对每一个已经识别漏洞的报告,包括所发现漏洞的概述、影响和严重性以及再现该漏洞的步骤和可用于修复该漏洞缺限的补救措施建议。微焦点***执行官凯文·洛西莫尔(Kevin Loosemore)称这项交易“完全符合我们既定的收购策略,并将重点放在成熟基础设施产品的有效管理上”,并表示Micro Focus旨在“为成熟资产带来***盈利空间 - 约80百分之一 - 从今天的百分之二十一微科技在三年内现有的46%的水平。“[4]
技术咨询weiyuanhui
Fortify的技术咨询weiyuanhui由Avi Rubin,Bill Joy,David A. Wagner,Fred Schneider,Gary McGraw,Greg Morrisett,Li Gong,Marcus Ranum,Matt Bishop,William Pugh和John Viega组成。Twitter上的HPESecurityLinkedIn上的HPESecurity与***联系,并讨论混合环境中新威胁和风险的***xin信息。
安全研究
除了Fortify的分析软件的安全规则外,Fortify还创建了一个维护Java Open Review项目[5]和Vulncat安全漏洞分类的安全研究小组。jpgDevOps的安全状态应用安全和DevOps报告2016。[6]小组成员写了这本书,安全编码与静态分析,并发表了研究,包括JavaScript劫持,[7]攻击构建:交叉构建注入,[8]观察你写的:通过观察程序输出来防止跨站点脚本[9]和动态趋势传播:找不到攻击的脆弱性[10]
强化静态代码分析器
使软件更快地生产
“将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,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,因此主机名验证被默认跳过。软件安全中心和FortifyonDemand从一个界面提供企业级安全管理功能。因此,如果攻击者在客户端连接到“domain.com”时在网络上具有MITM位置,则应用程序还将接受为“some-evil-domain.com”颁发的有效的服务器证书。
这种记录的行为被掩埋在JSSE参考指南中:
“当使用原始SSLSocket和SSLEngine类时,您应该始终在发送任何数据之前检查对等体的凭据。 SSLSocket和SSLEngine类不会自动验证URL中的主机名与对等体凭
版权所有©2024 天助网