首页 网络安全 正文
  • 本文约753字,阅读需4分钟
  • 24
  • 0

SCRAM身份验证中零日漏洞CVE-2025-59432

摘要

栋科技漏洞库关注到在3.2版本之前,SCRAM Java实现中存在零日漏洞,该漏洞现在已经被追踪为CVE-2025-59432,CVSS 3.X评分7.5。

SCRAM(Salted Challenge Response Authentication Mechanism)是基于加盐哈希和HMAC摘要用于客户端和服务器间的用户认证机制。

SCRAM是简单身份验证和安全层(SASL,RFC 4422)身份验证机制家族的一部分,该机制可通过一个挑战-响应协议来验证用户的身份。

一、基本情况

SCRAM是基于密码的挑战-响应认证机制,通过随机挑战和加盐哈希实现客户端与服务器之间的身份验证,广泛用于MongoDB、Kafka等。

SCRAM身份验证中零日漏洞CVE-2025-59432

SCRAM 是基于密码的认证协议,支持SHA-256或SHA-512哈希算法,有效防止密码泄露和重放攻击,可有效防止中间人攻击和重放攻击。

栋科技漏洞库关注到在3.2版本之前,SCRAM Java实现中存在零日漏洞,该漏洞现在已经被追踪为CVE-2025-59432,CVSS 3.X评分7.5。

二、漏洞分析

CVE-2025-59432漏洞是存在于3.2版本之前,SCRAM Java实现中的一个定时攻击漏洞,所有依赖SCRAM身份验证的用户都会受到影响。

源于Arrays.equals用于比较客户端证明和服务器签名等秘密值,Arrays.equals执行短路比较,执行时间会根据匹配的前导字节数而变化。

这种行为可能允许攻击者执行定时侧信道攻击,并可能推断出敏感的身份验证材料,用户应升级到SCRAM 3.2或更高版本以缓解此问题。

具体来说,SCRAM在3.1版本中,通过将Arrays.equals替换为MessageDigest.isEqual,修复这个安全漏洞,从而确保了恒定的时间比较。

由于攻击需要高精度和反复尝试,风险是有限的,但唯一可靠的缓解措施是升级到补丁版本(3.2或更高版本)。

三、影响范围

SCRAM <= 3.1

四、修复建议

SCRAM >= 3.2

五、参考链接

管理员已设置登录后刷新可查看



扫描二维码,在手机上阅读
评论
更换验证码
友情链接