CVE-2026-5477 是wolfSSL库中wolfCrypt CMAC实现的一个整数溢出漏洞。该漏洞允许攻击者伪造CMAC标签,可能导致安全风险。该漏洞影响wolfSSL 0.0.0到5.9.0版本之间的所有版本。该漏洞已在5.11.0版本中修复。
CVE-2026-5477 影响 wolfSSL 中的 CMAC (Cipher-based Message Authentication Code) 实现。具体而言,wc_CmacUpdate 函数中的整数溢出允许攻击者伪造 CMAC 标签。该函数的逻辑旨在优化第一个块的处理,使用 if (cmac->totalSz != 0) 检查来跳过不必要的 XOR 运算。但是,totalSz 是一个 32 位整数,在处理完 4 GiB 的数据后会重置为零。这导致检查错误失败,丢弃了活动的 CBC-MAC 链状态。因此,共享超过 4 GiB 共同后缀的两个消息将生成相同的 CMAC 标签,从而允许标签伪造。
利用此漏洞需要攻击者能够控制通过 wolfCrypt 中的 wc_CmacUpdate 函数处理的消息。这可能发生在将 wolfSSL 用于消息身份验证的应用程序中,例如安全通信协议或存储系统。攻击者可以创建两个不同的消息,这些消息共享超过 4 GiB 的共同后缀。由于整数溢出,系统将为这两个消息生成相同的 CMAC 标签,允许攻击者用相同标签替换合法的消息,从而欺骗接收方将其接受为有效。利用难度取决于攻击者影响 wolfSSL 处理的数据的能力。
Applications and systems relying on wolfSSL for CMAC-based authentication or data integrity protection are at risk. This includes embedded devices, IoT devices, and server-side applications utilizing wolfSSL's cryptographic functions. Systems that process large files or streams using CMAC are particularly vulnerable.
• linux / server:
find /usr/local/lib /usr/lib -name 'libwolfssl.so*' -print0 | xargs -0 strings | grep -i 'wc_cmacupdate'• c / supply-chain: Review source code for usage of wc_CmacUpdate and related CMAC functions. Look for potential scenarios where message sizes could exceed 4 GiB.
• generic web: Monitor network traffic for CMAC-protected data. Analyze CMAC tag patterns for anomalies or repeated values, which could indicate a forgery attempt.
disclosure
漏洞利用状态
EPSS
0.06% (17% 百分位)
CISA SSVC
CVE-2026-5477 的缓解措施是升级到 wolfSSL 版本 5.11.0 或更高版本。此版本修复了 wc_CmacUpdate 函数中的整数溢出,确保即使在处理大量数据后也能正确处理 CBC-MAC 链状态。建议尽快应用此更新,以保护使用 wolfSSL 的系统免受潜在的 CMAC 伪造攻击。安装后验证更新的完整性。此外,请审查安全配置,以确保 CMAC 以安全的方式使用,并且处理的数据不超过指定的限制。
Actualice a la versión 5.11.0 o posterior de wolfSSL para mitigar la vulnerabilidad. La actualización corrige el desbordamiento de enteros en la implementación de CMAC, evitando la falsificación de etiquetas CMAC y garantizando la integridad de los datos.
漏洞分析和关键警报直接发送到您的邮箱。
CMAC 是一种基于密码的消息身份验证码算法,为数据提供完整性和真实性。对于保护通信和防止数据篡改至关重要。
整数溢出发生在算术运算的结果超过用于存储结果的数据类型的最大容量时。在本例中,totalSz 重置为零,导致不正确的行为。
使用 wolfSSL 及其内部 wolfCrypt 中的 CMAC 实现的任何系统,如果未升级到 5.11.0 或更高版本,都可能容易受到攻击。
检查您使用的 wolfSSL 版本。如果版本低于 5.11.0,则容易受到攻击。您还可以进行渗透测试以识别潜在的入口点。
如果无法立即更新,请考虑将 wolfSSL 处理的消息大小限制为小于 4 GiB,以避免整数溢出。但是,这可能并非在所有情况下都可行,也不是完整的解决方案。