点击上方蓝字关注我们吧~
OpenSSL项目公布了一个严重漏洞(CVE-2024-12797),影响广泛使用的加密库的3.2、3.3和3.4版本。
该漏洞是由苹果公司在2024年12月发现的,它能允许针对TLS和DTLS连接的中间人(MitM)攻击,这些连接依赖原始公钥(rpk)进行服务器身份验证。
只有当TLS客户端显式启用服务器使用RPK,并且服务器同样启用发送RPK而不是X.509证书链时,这个问题才会出现。
OpenSSL脆弱性
该漏洞源于使用RFC7250原始公钥时,握手时服务器认证失败的处理不当。
具体来说,使用 SSL_VERIFY_PEER
验证模式的客户端可能无法检测到服务器是未验证的,因为握手没有按预期中止。这样,当RPK验证失败时,连接就容易受到中间人攻击。
RPK在默认情况下在TLS客户端和服务器中都是禁用的,这意味着此问题只影响由双方明确启用RPK功能的系统。这个问题是在OpenSSL 3.2最初实现对RPK的支持时引入的。
“启用服务器端原始公钥的客户端仍然可以通过调用SSL_get_verify_result()发现原始公钥验证失败,而那些启用了原始公钥并采取适当措施的客户端不受影响。”OpenSSL顾问声明。
在认证失败不易察觉的情况下,攻击者可以利用该漏洞截获或操纵客户端和服务器之间的通信。
然而,显式调用 SSL_get_verify_result()
来检查验证状态并采取适当行动的客户端不会受到影响。
-
OpenSSL 3.4(3.4.1之前版本)
-
OpenSSL 3.3(3.3.2之前版本)
-
OpenSSL 3.2(3.2.4之前版本)
旧版本的OpenSSL(1.1.1, 1.0.2)和3.0到3.4的FIPS模块不受这个问题的影响。
“受影响的客户端是那些在服务器的RPK无法匹配预期公钥时依赖握手失败的客户端,将验证模式设置为SSL_VERIFY_PEER。”
缓解和修复
OpenSSL项目已经发布了补丁来解决这个漏洞:
-
OpenSSL 3.4的用户应该升级到3.4.1版本。
-
OpenSSL 3.3的用户应该升级到3.3.2版本。
-
OpenSSL 3.2的用户应该升级到3.2.4版本。
免责声明:
本公众号所载文章为本公众号原创或根据网络搜索下载编辑整理,文章版权归原作者所有,仅供读者学习、参考,禁止用于商业用途。因转载众多,无法找到真正来源,如标错来源,或对于文中所使用的图片、文字、链接中所包含的软件/资料等,如有侵权,请跟我们联系删除,谢谢!
原文始发于微信公众号(网安百色):OpenSSL高危安全漏洞 CVE-2024-12797
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论