Oracle Linux 8:nodejs:20 (ELSA-2024-1687)

high Nessus 插件 ID 193028

简介

远程 Oracle Linux 主机缺少一个或多个安全更新。

描述

远程 Oracle Linux 8 主机上安装的程序包受到 ELSA-2024-1687 公告中提及的多个漏洞的影响。

- 在 Linux 上,当进程以提升的权限运行时,如果非特权用户可能已设置了某些环境变量,Node.js 就会忽略这些变量,而 CAP_NET_BIND_SERVICE 是唯一的例外。由于此异常实现中存在一个缺陷,即使设置了某些其他功能,Node.js 也会错误应用此异常。这允许非特权用户注入继承了进程提升的权限的代码。(CVE-2024-21892)

- 如果 setuid() 在调用 setuid() 之前实现初始化,则不会影响 libuv 的内部 io_uring 操作。
这使得进程能够执行特权操作,尽管可能已经丢失了通过调用 setuid() 提供的此类特权。此漏洞会影响所有使用版本高于或等于 Node.js 18.18.0、Node.js 20.4.0 和 Node.js 21 的用户。(CVE-2024-22017)

- Node.js 权限模型未在文档中阐明通配符应仅作为文件路径的最后一个字符使用。例如:```--allow-fs-read=/home/node/.ssh/*.pub``` 将忽略 `pub` 并授予对 `.ssh/` 之后所有内容的访问权限。此误导性文档会影响使用 Node.js 20 和 Node.js 21 中的实验性权限模型的所有用户。请注意,发布此 CVE 时,该权限模块是 Node.js 的一项实验性功能。(CVE-2024-21890)

- crypto 库的 privateDecrypt() API 中存在一个漏洞,攻击者可利用此漏洞,在 PKCS#1 v1.5 填充错误处理期间隐蔽时序边信道。该漏洞揭示了对有效和无效密文进行解密时的重大时间性差异。这会造成严重威胁,因为攻击者可远程利用此漏洞来解密捕获的 RSA 密文或伪造签名,特别是在涉及 API 端点处理 Json Web Encryption 消息的情况下。影响:感谢 hkario 报告此漏洞,同时感谢 Michael Dawson 修复此漏洞。(CVE-2023-46809)

- Node.js HTTP 服务器中存在一个漏洞,攻击者可利用此漏洞,发送特别构建、具有分块编码的 HTTP 请求,从而发起资源耗尽和拒绝服务 (DoS) 攻击。服务器会从单个连接读取无限数量的字节,利用区块扩展字节限制的缺陷。此问题可造成 CPU 和网络带宽耗尽,进而绕过超时和正文大小限制等标准防护措施。(CVE-2024-22019)

- Node.js 依赖多个内置实用函数来规范化提供给 node:fs 函数的路径,其可被用户定义的实现覆盖,导致通过路径遍历攻击造成文件系统权限模型绕过。此漏洞会影响使用 Node.js 20 和 Node.js 21 中的实验性权限模型的所有用户。请注意,发布此 CVE 时,该权限模块是 Node.js 的一项实验性功能。(CVE-2024-21891)

- 权限模型通过对用户提供的任何路径调用 path.resolve() 来防范路径遍历攻击。如果要将路径视为 Buffer,则该实现会使用 Buffer.from() 从 path.resolve() 的结果中获取 Buffer。通过 monkey-patching Buffer 内部构件,即 Buffer.prototype.utf8Write,应用程序可以修改 path.resolve() 的结果,从而导致路径遍历漏洞。此漏洞会影响使用 Node.js 20 和 Node.js 21 中的实验性权限模型的所有用户。请注意,发布此 CVE 时,该权限模块是 Node.js 的一项实验性功能。(CVE-2024-21896)

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

解决方案

更新受影响的程序包。

另见

https://linux.oracle.com/errata/ELSA-2024-1687.html

插件详情

严重性: High

ID: 193028

文件名: oraclelinux_ELSA-2024-1687.nasl

版本: 1.0

类型: local

代理: unix

发布时间: 2024/4/8

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

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

风险信息

VPR

风险因素: Critical

分数: 9.0

CVSS v2

风险因素: High

基本分数: 8.5

时间分数: 6.3

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

CVSS 分数来源: CVE-2024-21892

CVSS v3

风险因素: High

基本分数: 7.9

时间分数: 6.9

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

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

CVSS 分数来源: CVE-2024-21896

漏洞信息

CPE: cpe:/a:oracle:linux:8::appstream, cpe:/o:oracle:linux:8, p-cpe:/a:oracle:linux:nodejs, p-cpe:/a:oracle:linux:nodejs-devel, p-cpe:/a:oracle:linux:nodejs-docs, p-cpe:/a:oracle:linux:nodejs-full-i18n, p-cpe:/a:oracle:linux:nodejs-nodemon, p-cpe:/a:oracle:linux:nodejs-packaging, p-cpe:/a:oracle:linux:nodejs-packaging-bundler, p-cpe:/a:oracle:linux:npm

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

易利用性: No known exploits are available

补丁发布日期: 2024/4/8

漏洞发布日期: 2024/2/14

参考资料信息

CVE: CVE-2023-46809, CVE-2024-21890, CVE-2024-21891, CVE-2024-21892, CVE-2024-21896, CVE-2024-22017, CVE-2024-22019