GLSA-202401-27:Ruby:多个漏洞

critical Nessus 插件 ID 189405

语言:

描述

远程主机受到 GLSA-202401-27 中所述漏洞的影响(Ruby:多个漏洞)

- 在 Ruby 2.5.8 及之前版本、2.6.6 及之前的 2.6.x 以及 2.7.1 及之前的 2.7.x 中发现一个问题。WEBrick 是 Ruby 捆绑的简单 HTTP 服务器,未严格检查传输编码标头值。攻击者可能利用此问题绕过反向代理(同样未严格检查标头),进而可能导致 HTTP 请求走私攻击。(CVE-2020-25613)

- 在 Ruby 2.6.7 及之前版本、2.7.3 及之前的 2.7.x 以及 3.0.1 及之前的 3.x 中发现一个问题。恶意 FTP 服务器可使用 PASV 响应诱骗 Net: : FTP 重新连接指定的 IP 地址和端口。
这可能导致 curl 提取有关本应为私有且未泄露的服务的信息(例如,攻击者可执行端口扫描及服务标题提取)。(CVE-2021-31810)

- 在 Ruby 2.6.7 及之前版本、2.7.3 及之前的 2.7.x 以及 3.0.1 及之前的 3.x 中发现一个问题。Net:: IMAP 未引发异常,这可能允许中间人攻击者利用客户端与注册表之间的网络位置绕过 TLS 保护,从而阻断 StartTLS 命令,即 StartTLS 剥离攻击。(CVE-2021-32066)

- Ruby 的 cgi gem 0.1.0.2 之前版本、0.2.2 之前的 0.2.x 版以及 0.3.5 之前的 0.3.x 版允许拆分 HTTP 响应。这与使用不受信任的用户输入生成 HTTP 响应或创建 CGI: : Cookie 对象的应用程序有关。(CVE-2021-33621)

- 在 2.7.5 之前的 Ruby 和 3.0.3 之前的 Ruby 3.x 的 CGI.escape_html 中,可以通过 size_t 和 long 具有不同字节数的平台(如 Windows)上的长字串引发整数溢出漏洞,并进而造成缓冲区溢出。这也会影响 Ruby 0.3.1 之前版本中的 CGI gem。(CVE-2021-41816)

- 在 Ruby 3.2.0 及之前版本中,date gem 中的 Date.parse 允许通过长字符串进行 ReDoS(正则表达式拒绝服务)。修复后的版本为 3.2.1、3.1.2、3.0.2 和 2.0.1。(CVE-2021-41817)

- CGI:: Cookie.parse(适用于 Ruby 2.6.8 及之前版本)无法正确处理 Cookie 名称中的安全前缀。这也会影响 Ruby 0.3.0 及之前版本中的 CGI gem。(CVE-2021-41819)

- 在 3.0.4 之前的 Ruby 3.x 和 3.1.2 之前的 3.1.x 的 Regexp 编译器中发现双重释放。如果受害者尝试根据不受信任的用户输入创建 Regexp,攻击者可能会写入非预期内存位置。 (CVE-2022-28738)

- 在 2.6.10 之前的 Ruby、 2.7.6 之前的 2.7.x、 3.0.4 之前的 3.x 以及 3.1.2 之前的 3.1.x 中存在缓冲区读取越界。它发生在字符串到浮点数的转换中,包括 Kernel#Float 和 String#to_f。 (CVE-2022-28739)

- 在 Ruby 3.2.1 及其之前所有版本中,在 0.12.0 及其之前所有版本的 URI 组件中发现 ReDoS 问题。URI 解析器错误处理具有特定字符的无效 URL,这会导致将字符串解析为 URI 对象的执行时间增加。修复后的版本为 0.12.1、0.11.1、0.10.2 和 0.10.0.1。(CVE-2023-28755)

- 在 Ruby 3.2.1 及其之前所有版本中,在 0.2.1 及其之前所有版本的 Time 组件中发现 ReDoS 问题。Time 解析器错误处理具有特定字符的无效 URL,这会导致将字符串解析为 Time 对象的执行时间增加。修复后的版本为 0.1.1 和 0.2.2。(CVE-2023-28756)

请注意,Nessus 尚未测试这些问题,而是只依据应用程序自我报告的版本号进行判断。

解决方案

所有 Ruby 用户皆应升级至最新版本:

# emerge --sync # emerge --ask --depclean ruby:2.5 ruby:2.6 ruby:2.7 ruby:3.0 # emerge --ask --oneshot --verbose >=dev-lang/ruby-3.1.4:3.1 # emerge --ask --oneshot --verbose >=dev-lang/ruby-3.2.2:3.2

另见

https://security.gentoo.org/glsa/202401-27

https://bugs.gentoo.org/show_bug.cgi?id=747007

https://bugs.gentoo.org/show_bug.cgi?id=801061

https://bugs.gentoo.org/show_bug.cgi?id=827251

https://bugs.gentoo.org/show_bug.cgi?id=838073

https://bugs.gentoo.org/show_bug.cgi?id=882893

https://bugs.gentoo.org/show_bug.cgi?id=903630

插件详情

严重性: Critical

ID: 189405

文件名: gentoo_GLSA-202401-27.nasl

版本: 1.0

类型: local

发布时间: 2024/1/24

最近更新时间: 2024/1/24

支持的传感器: Nessus

风险信息

VPR

风险因素: Medium

分数: 6.7

CVSS v2

风险因素: High

基本分数: 7.5

时间分数: 5.9

矢量: CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P

CVSS 分数来源: CVE-2022-28738

CVSS v3

风险因素: Critical

基本分数: 9.8

时间分数: 8.8

矢量: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

时间矢量: CVSS:3.0/E:P/RL:O/RC:C

漏洞信息

CPE: p-cpe:/a:gentoo:linux:ruby, cpe:/o:gentoo:linux

必需的 KB 项: Host/local_checks_enabled, Host/Gentoo/release, Host/Gentoo/qpkg-list

可利用: true

易利用性: Exploits are available

补丁发布日期: 2024/1/24

漏洞发布日期: 2020/10/6

参考资料信息

CVE: CVE-2020-25613, CVE-2021-31810, CVE-2021-32066, CVE-2021-33621, CVE-2021-41816, CVE-2021-41817, CVE-2021-41819, CVE-2022-28738, CVE-2022-28739, CVE-2023-28755, CVE-2023-28756