CVE-2026-61500:无需登录即可伪造 HFS 管理... 笔记

CVE-2026-61500:无需登录即可伪造 HFS 管理员会话”

Rejetto HFS 3.0.0 至 3.2.0 版本存在一个严重漏洞,允许未认证的攻击者伪造管理员会话。该利用方式可在服务器上执行任意代码。根本原因在于使用 JavaScript 的 Math.random() 处理安全敏感操作。具体而言,该函数被用于生成 cookie 签名密钥和登录握手标识符,两者在密码学上均存在弱点。V8 引擎中的 Math.random() 是一个确定性的 xorshift128+ 算法。通过观察多次登录握手标识符的输出,攻击者可以逆向推导伪随机数生成器(PRNG)的内部状态。这使得攻击者能够预测所有过去和未来的输出。一旦掌握 PRNG 状态,攻击者即可恢复服务器启动时生成的 cookie 签名密钥。获取签名密钥后,攻击者可伪造管理员会话 cookie。该伪造的 cookie 可访问管理功能,包括 server_code 配置。通过设置恶意的 server_code 代码片段,攻击者即可实现以 root 权限运行的远程代码执行。整个攻击链是通过 HTTP 交互对服务器内部状态进行的黑盒重构。该漏洞由 Horizon3.ai 的 Zach Hanley 发现,利用行为随即开始。修复方案是用 Node.js crypto 模块中的密码学安全原语替换不安全的 Math.random()。这包括使用 randomBytes 生成 cookie 签名密钥,以及使用 randomUUID 生成会话标识符。此案例表明,任何安全关键值,即使看似短暂存在,也必须使用密码学安全的伪随机数生成器。
CdXz5zHNQW_9ASAYflSO7.webp