CVE-2021-28965:REXML 中的 XML 往返漏洞

Ruby 捆绑的 REXML gem 中存在 XML 往返漏洞。此漏洞已被分配 CVE 标识符 CVE-2021-28965。我们强烈建议升级 REXML gem。

详细信息

当解析和序列化精心构造的 XML 文档时,REXML gem(包括 Ruby 捆绑的那个)会创建错误的 XML 文档,其结构与原始文档不同。此问题的影响很大程度上取决于上下文,但它可能会导致某些使用 REXML 的程序中出现漏洞。

请将 REXML gem 更新到 3.2.5 或更高版本。

如果您正在使用 Ruby 2.6 或更高版本

  • 请使用 Ruby 2.6.7、2.7.3 或 3.0.1。
  • 或者,您可以使用 gem update rexml 来更新它。如果您正在使用 bundler,请将 gem "rexml", ">= 3.2.5" 添加到您的 Gemfile

如果您正在使用 Ruby 2.5.8 或更早版本

  • 请使用 Ruby 2.5.9。
  • 您不能对 Ruby 2.5.8 或更早版本使用 gem update rexml
  • 请注意,Ruby 2.5 系列现已 EOL,因此请尽快考虑将 Ruby 升级到 2.6.7 或更高版本。

受影响的版本

  • Ruby 2.5.8 或更早版本(您不能对此版本使用 gem update rexml。)
  • Ruby 2.6.6 或更早版本
  • Ruby 2.7.2 或更早版本
  • Ruby 3.0.0
  • REXML gem 3.2.4 或更早版本

鸣谢

感谢 Juho Nurminen 发现了这个问题。

历史

  • 最初发布于 2021-04-05 12:00:00 (UTC)