据Security affairs网站消息,4月21日,安全研究人员Khaled Nassar在Github上公开了Java 中新披露的数字签名绕过漏洞的PoC代码,该漏洞被追踪为CVE-2022-21449(CVSS 分数:7.5)。
漏洞的影响范围主要涉及 Java SE 和 Oracle GraalVM 企业版的以下版本 :
Oracle Java SE:7u331、8u321、11.0.14、17.0.2、18 Oracle GraalVM 企业版:20.3.5、21.3.1、22.0.0.2
该漏洞被称为 Psychic Signatures,与Java 对椭圆曲线数字签名算法 ( ECDSA )实现有关,这是一种加密机制,用于对消息和数据进行数字签名,以验证内容的真实性和完整性。但Psychic Signatures导致的加密错误,能够允许呈现一个易受攻击的完全空白的签名,攻击者可以此利用伪造签名并绕过身份验证措施。
Nassar 证明,设置恶意 TLS 服务器可以欺骗客户端接受来自服务器的无效签名,从而有效地允许 TLS 握手的其余部分继续进行。
据悉,漏洞在去年11月就由 ForgeRock 研究员 Neil Madden 发现,并于当天就通报给了甲骨文(Oracle),Madden表示,这个漏洞的严重性再怎么强调都不为过。
目前,甲骨文已在4月19日最新发布的4月补丁中修复了该漏洞,但由于PoC代码的公布,建议在其环境中使用 Java 15、Java 16、Java 17 或 Java 18 的系统组织尽快修复。
参考来源
https://securityaffairs.co/wordpress/130522/security/poc-java-vulnerability-cve-2022-21449.html