CVE-2020-10663:JSON 中不安全的对象创建漏洞(附加修复)

Ruby 捆绑的 json gem 中存在不安全的对象创建漏洞。此漏洞已被分配 CVE 标识符 CVE-2020-10663。我们强烈建议升级 json gem。

详情

当解析某些 JSON 文档时,json gem(包括与 Ruby 捆绑的那个)可能会被强制在目标系统中创建任意对象。

这与 CVE-2013-0269 中的问题相同。之前的修复不完整,它解决了 JSON.parse(user_input),但没有解决其他一些 JSON 解析方式,包括 JSON(user_input)JSON.parse(user_input, nil)

请详细参阅 CVE-2013-0269。请注意,该问题可被利用来通过创建许多不可回收的 Symbol 对象来导致拒绝服务,但这种攻击不再有效,因为 Symbol 对象现在是可垃圾回收的。然而,创建任意对象可能会根据应用程序代码导致严重的安全性后果。

请将 json gem 更新到 2.3.0 或更高版本。您可以使用 gem update json 来更新它。如果您正在使用 bundler,请将 gem "json", ">= 2.3.0" 添加到您的 Gemfile 中。

受影响的版本

  • JSON gem 2.2.0 或更早版本

鸣谢

感谢 Jeremy Evans 发现了这个问题。

历史

  • 最初发布于 2020-03-19 13:00:00 (UTC)