CVE-2021-41819: CGI::Cookie.parse 中的 Cookie Prefix 欺骗漏洞
由 mame 发布于 2021年11月24日
在 CGI::Cookie.parse 中发现了一个 cookie 前缀欺骗漏洞。该漏洞已分配 CVE 标识符 CVE-2021-41819。我们强烈建议升级 Ruby。
详情
旧版本的 CGI::Cookie.parse 会对 cookie 名称进行 URL 解码。攻击者可以利用此漏洞在 cookie 名称中伪造安全前缀,从而可能欺骗易受攻击的应用程序。
通过此修复,CGI::Cookie.parse 不再解码 cookie 名称。请注意,如果您的 cookie 名称包含 URL 编码的非字母数字字符,则这可能是一个不兼容的更改。
这是 CVE-2020-8184 的同一问题。
如果您正在使用 Ruby 2.7 或 3.0
- 请将 cgi gem 更新至 0.3.1、0.2.1 和 0.1.1 或更高版本。您可以使用
gem update cgi进行更新。如果您正在使用 bundler,请将gem "cgi", ">= 0.3.1"添加到您的Gemfile中。 - 或者,请将 Ruby 更新至 2.7.5 或 3.0.3。
如果您正在使用 Ruby 2.6
- 请将 Ruby 更新至 2.6.9。您无法为 Ruby 2.6 或更早版本使用
gem update cgi。
受影响的版本
- ruby 2.6.8 或更早版本(您不能为该版本使用
gem update cgi。) - cgi gem 0.1.0 或更早版本(这些是 Ruby 2.7.5 之前的 Ruby 2.7 系列的捆绑版本)
- cgi gem 0.2.0 或更早版本(这些是 Ruby 3.0.3 之前的 Ruby 3.0 系列的捆绑版本)
- cgi gem 0.3.0 或更早版本
致谢
感谢 ooooooo_q 发现此问题。
历史
- 最初发布于 2021-11-24 12:00:00 (UTC)
近期新闻
Ruby 4.0.0 发布
我们很高兴地宣布 Ruby 4.0.0 的发布。Ruby 4.0 引入了“Ruby Box”和“ZJIT”,并增加了许多改进。
由 naruse 发布于 2025 年 12 月 25 日
Ruby 文档的全新外观
继 ruby-lang.org 重新设计之后,我们还有更多好消息来庆祝 Ruby 成立 30 周年:docs.ruby-lang.org 采用了 Aliki——RDoc 的新默认主题,焕然一新。
由 Stan Lo 发布于 2025 年 12 月 23 日
重新设计我们的网站标识
我们很高兴地宣布对我们的网站进行全面重新设计。此次更新的设计由 Akatsuka Taeko 创作。
由 Hiroshi SHIBATA 发布于 2025 年 12 月 22 日
Ruby 4.0.0 preview3 发布
我们很高兴地宣布 Ruby 4.0.0-preview3 的发布。Ruby 4.0 引入了 Ruby::Box 和“ZJIT”,并增加了许多改进。
由 naruse 发布于 2025 年 12 月 18 日