CVE-2026-33210Ruby JSON库在2.14.0至多个修复版本之间存在严重的格式字符串注入漏洞。当应用程序使用`allow_duplicate_key: false`选项解析不可信用户提供的JSON文档时,攻击者可构造包含特定格式说明符的恶意数据。成功利用该漏洞可导致目标服务拒绝服务或敏感信息泄露。鉴于其CVSS评分高达9.1且无需认证即可利用,建议受影响用户立即采取修复措施。
该漏洞的核心在于Ruby JSON库处理重复键检查时的逻辑缺陷。当开发者启用`allow_duplicate_key: false`选项时,解析器在遍历JSON键以检测重复项的过程中,错误地将键名直接传递给了底层的格式化函数,且未对其进行适当的转义或安全检查。攻击者可以通过精心构造JSON数据,在键名中插入恶意的格式化字符串(如`%x`、`%s`或`%n`),从而利用这一漏洞操纵程序的堆栈或读取内存内容。由于攻击向量为网络,且无需用户交互及认证,远程攻击者只需向目标应用发送特制的HTTP请求即可触发漏洞。利用该漏洞不仅可能导致应用程序异常崩溃,造成拒绝服务攻击,还可能利用格式化字符串读取内存中的敏感指针或数据,对系统安全构成严重威胁。