由 hsbt 发表于 2024-03-21
翻译: GAO Jun
我们发布了包含缓存过读漏洞补丁的 StringIO gem 版本 3.0.1.1 和 3.0.1.2。 此漏洞的 CVE 编号为 CVE-2024-27280.
详情
在 StringIO 3.0.1 中发现了一个问题,在 Ruby 3.0.x 中影响至 3.0.6,在 3.1.x 中影响至 3.1.4。
StringIO 中的 ungetbyte
和 ungetc
方法能够读取超过字符串结尾的内容,如果后续调用 StringIO.gets
能返回内存数据。
此漏洞不会影响 StringIO 3.0.3 及之后版本,不会影响 Ruby 3.2.x 及之后版本。
建议操作
我们建议将 StringIO gem 更新到 3.0.3 或后续版本。 为确保与旧版 Ruby 中的绑定版本兼容,您可以按照下面的方式进行更新:
- Ruby 3.0:更新
stringio
至 3.0.1.1 - Ruby 3.1:更新
stringio
至 3.0.1.2
注意:StringIO 3.0.1.2 不仅包含了本问题的补丁,也包含了 [Bug #19389] 的补丁。
您可以通过 gem update stringio
进行更新。如果您使用 bundler,请在您的 Gemfile
中增加 gem "stringio", ">= 3.0.1.2"
。
受影响版本
- Ruby 3.0.6 或更低版本
- Ruby 3.1.4 或更低版本
- StringIO gem 3.0.2 或更低版本
致谢
感谢 david_h1 发现此问题。
历史
- 最初发布于 2024-03-21 4:00:00 (UTC)