RHEL 9:nodejs (RHSA-2023: 5533)

critical Nessus 插件 ID 182781

简介

远程 Red Hat 主机缺少一个或多个安全更新。

描述

远程 Redhat Enterprise Linux 9 主机上安装的程序包受到 RHSA-2023: 5533 公告提及的漏洞的影响。

- 这会影响 4.1.1 之前版本的程序包 http-cache-semantics。如果服务器使用此库从请求中读取缓存策略,攻击者则可以通过向该服务器发送恶意请求标头来利用此问题。(CVE-2022-25881)

- 在 c-ares 程序包中发现一个缺陷。ares_set_sortlist 缺少关于输入字符串有效性的检查,这可能允许任意长度的堆栈溢出。此问题可能导致拒绝服务,或对机密性和完整性造成有限的影响。(CVE-2022-4904)

- 低於 19.6.1、18.14.1、16.19.1、14.21.3 的 Node.js 版本中存在不受信任的搜索路径漏洞,攻击者可藉此在以提升的权限运行时進行搜索并可能加载 ICU 数据。
(CVE-2023-23920)

- Undici 是 Node.js 的 HTTP/1.1 客户端。2.0.0 至 5.19.1 版的 undici 库未保护“host”HTTP 标头免受 CRLF 注入漏洞影响。Undici v5.19.1 中已修补此问题。变通方案是,审查“headers.host”字符串后再传递给 undici。
(CVE-2023-23936)

- Undici 是 Node.js 的 HTTP/1.1 客户端。在低于 5.19.1 的版本中,当不受信任的值传递到函数中时,“Headers.set()”和“Headers.append()”方法容易受到正则表达式拒绝服务 (ReDoS) 攻击。这是由于用于对“headerValueNormalize()”实用工具函数中的值进行规范化的正则表达式效率低下。v5.19.1 中已修补此漏洞。目前没有已知的变通方案。(CVE-2023-24807)

- 在 process.mainModule.__proto__.require() 中使用 __proto__ 可绕过策略机制,并且需要 policy.json 定义之外的模块。此漏洞会影响在所有以下可用的稳定版本系列中使用实验性策略机制的所有用户:v16、v18 和 v20。请注意,发布此 CVE 时,该策略是 Node.js 的一项实验性功能 (CVE-2023-30581)

- 当使用无效的公钥借助 crypto.X509Certificate() API 创建 x509 证书时,会发生非预期终止,从而使其在攻击者可强制中断应用程序处理时容易受到 DoS 攻击,这是因为该进程会在访问通过用户代码所提供证书的公钥信息时终止。用户的当前环境将不复存在,这将导致 DoS 情况。此漏洞会影响所有可用的 Node.js 版本 v16、v18 和 v20。(CVE-2023-30588)

- 在 Node v20.2.0 中,http 模块中的 llhttp 解析器未严格使用 CRLF 序列来分隔 HTTP 请求。这可导致 HTTP 请求走私 (HRS) 攻击。CR 字符(无 LF)完全可以在 llhttp 解析器中分隔 HTTP 标头字段。根据 RFC7230 第 3 部分,只应使用 CRLF 序列分隔每个标头字段。此漏洞会影响所有可用的 Node.js 版本:v16、v18 和 v20 (CVE-2023-30589)

- crypto.createDiffieHellman() 返回的 generateKeys() API 函数仅生成缺失(或过时)的密钥,即此函数只会在尚未设置任何密钥时生成私钥,但也需要在调用 setPrivateKey() 后使用此函数计算相应的公钥。但是,文档中对此 API 调用的解释是:生成私有和公共 Diffie-Hellman 密钥值。记录的行为与实际行为非常不同,这种差异很容易导致使用这些 API 的应用程序中出现安全问题,这是因为 DiffieHellman 可能会被用作应用程序级安全措施的基础,因此会产生广泛的影响。(CVE-2023-30590)

- 使用“Module._load()”可绕过策略机制,并且需要给定模块的 policy.json 定义之外的模块。此漏洞会影响在所有以下可用的稳定版本系列中使用实验性策略机制的所有用户:16.x、18.x 和 20.x。请注意,发布此 CVE 时,该策略是 Node.js 的一项实验性功能。(CVE-2023-32002)

- 使用“module.constructor.createRequire()”可绕过策略机制,并且需要给定模块的 policy.json 定义之外的模块。此漏洞会影响在所有以下可用的稳定版本系列中使用实验性策略机制的所有用户:16.x、18.x 和 20.x。请注意,发布此 CVE 时,该策略是 Node.js 的一项实验性功能。(CVE-2023-32006)

- 所有活跃发布线的实验性策略机制中都存在权限提升漏洞:16.x、18.x 和 20.x。使用已弃用的 API“process.binding()”可通过要求内部模块绕过策略机制,并最终利用“process.binding('spawn_sync')”运行“policy.json”文件中定义的限制之外的任意代码。请注意,发布此 CVE 时,该策略是 Node.js 的一项实验性功能。(CVE-2023-32559)

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

解决方案

更新受影响的程序包。

另见

http://www.nessus.org/u?9105a674

https://access.redhat.com/security/updates/classification/#important

https://bugzilla.redhat.com/show_bug.cgi?id=2165824

https://bugzilla.redhat.com/show_bug.cgi?id=2168631

https://bugzilla.redhat.com/show_bug.cgi?id=2172190

https://bugzilla.redhat.com/show_bug.cgi?id=2172204

https://bugzilla.redhat.com/show_bug.cgi?id=2172217

https://bugzilla.redhat.com/show_bug.cgi?id=2178078

https://bugzilla.redhat.com/show_bug.cgi?id=2219824

https://bugzilla.redhat.com/show_bug.cgi?id=2219838

https://bugzilla.redhat.com/show_bug.cgi?id=2219841

https://bugzilla.redhat.com/show_bug.cgi?id=2219842

https://bugzilla.redhat.com/show_bug.cgi?id=2223335

https://bugzilla.redhat.com/show_bug.cgi?id=2230948

https://bugzilla.redhat.com/show_bug.cgi?id=2230955

https://bugzilla.redhat.com/show_bug.cgi?id=2230956

https://bugzilla.redhat.com/show_bug.cgi?id=2236435

https://access.redhat.com/errata/RHSA-2023:5533

插件详情

严重性: Critical

ID: 182781

文件名: redhat-RHSA-2023-5533.nasl

版本: 1.2

类型: local

代理: unix

发布时间: 2023/10/9

最近更新时间: 2024/4/28

支持的传感器: Agentless Assessment, Frictionless Assessment Agent, Frictionless Assessment AWS, Frictionless Assessment Azure, Nessus Agent, Nessus

风险信息

VPR

风险因素: Medium

分数: 6.7

CVSS v2

风险因素: Critical

基本分数: 10

时间分数: 7.8

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

CVSS 分数来源: CVE-2023-32002

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: cpe:/o:redhat:rhel_eus:9.0, p-cpe:/a:redhat:enterprise_linux:nodejs, p-cpe:/a:redhat:enterprise_linux:nodejs-docs, p-cpe:/a:redhat:enterprise_linux:nodejs-full-i18n, p-cpe:/a:redhat:enterprise_linux:nodejs-libs, p-cpe:/a:redhat:enterprise_linux:npm

必需的 KB 项: Host/local_checks_enabled, Host/RedHat/release, Host/RedHat/rpm-list, Host/cpu

可利用: true

易利用性: Exploits are available

补丁发布日期: 2023/10/9

漏洞发布日期: 2023/1/31

参考资料信息

CVE: CVE-2022-25881, CVE-2022-4904, CVE-2023-23920, CVE-2023-23936, CVE-2023-24807, CVE-2023-30581, CVE-2023-30588, CVE-2023-30589, CVE-2023-30590, CVE-2023-32002, CVE-2023-32006, CVE-2023-32559

CWE: 119, 1268, 1333, 213, 426, 93, 94

RHSA: 2023:5533