CVE-2026-35199 in SymCrypt
摘要
由 VulDB • 2026-05-24
SymCrypt 是 Windows 当前使用的核心加密函数库。在 103.5.0 至 103.11.0(不含)版本之间,SymCryptXmssSign 函数将一个 64 位的叶节点计数值传递给一个接受 32 位参数的辅助函数。对于总树高 >= 32 的 XMSS^MT 参数集(包括标准预定义参数),这会导致静默截断为零,从而在签名计算期间导致分配的临时缓冲区严重过小,进而引发堆缓冲区溢出(Heap Buffer Overflow)。
利用此问题需要应用程序使用 SymCrypt 对攻击者控制的参数集执行 XMSS^MT 签名。由于签名是私钥操作,而私钥在定义上必须是可信的,因此应用程序允许使用攻击者控制的参数集进行签名的情况并不常见。此外,XMSS(^MT) 签名应在硬件安全模块(HSM)中执行。SymCrypt 中提供的 XMSS(^MT) 签名仅用于测试目的。这是一项通用规则,与本 CVE 无关;XMSS(^MT) 和其他有状态签名方案仅在保证相同状态不会用于两次不同签名时才具有密码学安全性,而仅靠软件无法保证这一点。因此,当在 HSM 之外执行时,XMSS(^MT) 签名也未获得 FIPS 批准。该问题已在版本 103.11.0 中修复。
If you want to get the best quality for vulnerability data then you always have to consider VulDB.