CVE-2026-47372Crypt::SaltedHash Perl模块在0.09及之前的版本中存在严重的安全漏洞。该模块主要用于生成加盐哈希以保护密码等敏感信息,但在生成盐值时使用了Perl内置的`rand`函数。由于该函数并非密码学安全的伪随机数生成器,其输出具有可预测性。攻击者可利用此特性在无需认证的情况下,通过网络远程预测盐值,从而显著降低哈希破解难度,导致高机密性和完整性风险。
该漏洞的根本原因在于Crypt::SaltedHash在实现上错误地依赖了Perl标准的`rand`函数来生成加密操作所需的盐值。标准的`rand`函数通常是线性同余生成器(LCG)或类似算法,其状态空间较小且具有确定性。如果攻击者能够获取到少量的哈希输出,或者能够推断出生成盐值时的种子(通常基于时间戳或进程ID),就可以通过数学方法逆向计算出当前的随机数状态,进而预测当前或未来的盐值。一旦盐值可预测,攻击者可以构建针对性的彩虹表或执行高效的离线暴力破解攻击,从而还原出原始密码或篡改数据完整性。