File tree Expand file tree Collapse file tree 2 files changed +93
-0
lines changed Expand file tree Collapse file tree 2 files changed +93
-0
lines changed Original file line number Diff line number Diff line change 1+ ---
2+ layout : news_post
3+ title : " CVE-2024-27280: StringIO 中的缓存过读漏洞"
4+ author : " hsbt"
5+ translator : " GAO Jun"
6+ date : 2024-03-21 4:00:00 +0000
7+ tags : security
8+ lang : zh_cn
9+ ---
10+
11+ 我们发布了包含缓存过读漏洞补丁的 StringIO gem 版本 3.0.1.1 和 3.0.1.2。
12+ 此漏洞的 CVE 编号为 [ CVE-2024 -27280] ( https://www.cve.org/CVERecord?id=CVE-2024-27280 ) .
13+
14+ ## 详情
15+
16+ 在 StringIO 3.0.1 中发现了一个问题,在 Ruby 3.0.x 中影响至 3.0.6,在 3.1.x 中影响至 3.1.4。
17+
18+ StringIO 中的 ` ungetbyte ` 和 ` ungetc ` 方法能够读取超过字符串结尾的内容,如果后续调用 ` StringIO.gets ` 能返回内存数据。
19+
20+ 此漏洞不会影响 StringIO 3.0.3 及之后版本,不会影响 Ruby 3.2.x 及之后版本。
21+
22+ ## 建议操作
23+
24+ 我们建议将 StringIO gem 更新到 3.0.3 或后续版本。 为确保与旧版 Ruby 中的绑定版本兼容,您可以按照下面的方式进行更新:
25+
26+ * Ruby 3.0:更新 ` stringio ` 至 3.0.1.1
27+ * Ruby 3.1:更新 ` stringio ` 至 3.0.1.2
28+
29+ 注意:StringIO 3.0.1.2 不仅包含了本问题的补丁,也包含了 [[ Bug #19389 ]] ( https://github.com/ruby/ruby/commit/1d24a931c458c93463da1d5885f33edef3677cc2 ) 的补丁。
30+
31+ 您可以通过 ` gem update stringio ` 进行更新。如果您使用 bundler,请在您的 ` Gemfile ` 中增加 ` gem "stringio", ">= 3.0.1.2" ` 。
32+
33+ ## 受影响版本
34+
35+ * Ruby 3.0.6 或更低版本
36+ * Ruby 3.1.4 或更低版本
37+ * StringIO gem 3.0.2 或更低版本
38+
39+ ## 致谢
40+
41+ 感谢 [ david_h1] ( https://hackerone.com/david_h1?type=user ) 发现此问题。
42+
43+ ## 历史
44+
45+ * 最初发布于 2024-03-21 4:00:00 (UTC)
Original file line number Diff line number Diff line change 1+ ---
2+ layout : news_post
3+ title : " CVE-2024-27281: RDoc 中 .rdoc_options 的 RCE 漏洞"
4+ author : " hsbt"
5+ translator : " GAO Jun"
6+ date : 2024-03-21 4:00:00 +0000
7+ tags : security
8+ lang : zh_cn
9+ ---
10+
11+ 我们发布了包含 RCE 漏洞补丁的 RDoc gem 版本 6.3.4.1, 6.4.1.1, 6.5.1.1 和 6.6.3.1。
12+ 此漏洞的 CVE 编号为 [ CVE-2024 -27281] ( https://www.cve.org/CVERecord?id=CVE-2024-27281 ) .
13+
14+ ## 详情
15+
16+ 在 RDoc 6.3.3 至 6.6.2 中发现了一个问题,影响了 Ruby 3.x 至 3.3.0。
17+
18+ 当解析 YAML 格式的 ` .rdoc_options ` 文件时(用于 RDoc 配置),由于对恢复的类没有限制,可能导致对象注入和由此产生的远程代码执行。
19+
20+ 当载入文档缓存时,如果存在特制的缓存,对象注入和由此产生的远程代码执行也可能存在。
21+
22+ ## 建议操作
23+
24+ 我们建议将 RDoc gem 更新到 6.6.3.1 或后续版本。 为确保与旧版 Ruby 中的绑定版本兼容,您可以按照下面的方式进行更新:
25+
26+ * Ruby 3.0:更新 ` rdoc ` 至 6.3.4.1
27+ * Ruby 3.1:更新 ` rdoc ` 至 6.4.1.1
28+ * Ruby 3.2:更新 ` rdoc ` 至 6.5.1.1
29+
30+ 您可以通过 ` gem update rdoc ` 进行更新。如果您使用 bundler,请在您的 ` Gemfile ` 中增加 ` gem "rdoc", ">= 6.6.3.1 ` 。
31+
32+ 注意: 6.3.4, 6.4.1, 6.5.1 和 6.6.3 中的补丁不正确。我们建议更新到 6.3.4.1, 6.4.1.1, 6.5.1.1 和 6.6.3.1。
33+
34+ ## 受影响版本
35+
36+ * Ruby 3.0.6 或更低版本
37+ * Ruby 3.1.4 或更低版本
38+ * Ruby 3.2.3 或更低版本
39+ * Ruby 3.3.0
40+ * RDoc gem 6.3.3 或更低版本, 6.4.0 至 6.6.2 (除已修正版本 6.3.4,6.4.1, 6.5.1)
41+
42+ ## 致谢
43+
44+ 感谢 [ ooooooo_q] ( https://hackerone.com/ooooooo_q?type=user ) 发现此问题。
45+
46+ ## 历史
47+
48+ * 最初发布于 2024-03-21 4:00:00 (UTC)
You can’t perform that action at this time.
0 commit comments