Skip to content

Commit 789c441

Browse files
Gao-Junhsbt
authored andcommitted
Translate CVE-2024-27280, CVE-2024-27281 (zh_cn)
1 parent fcf0d50 commit 789c441

File tree

2 files changed

+93
-0
lines changed

2 files changed

+93
-0
lines changed
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
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)
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
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)

0 commit comments

Comments
 (0)