Node.js 14.x < 14.20.1 / 16.x < 16.17.1 / 18.x < 18.9.1 多个漏洞(2022 年 9 月 23 日安全版本)

critical Nessus 插件 ID 165633

简介

Node.js - JavaScript 运行环境受到多个漏洞的影响。

描述

远程主机上安装的 Node.js 版本低于 14.20.1、16.17.1、18.9.1。因此,它受到 2022 年 9 月 23 日安全版本公告中提及的多个漏洞的影响。

- 针对 CVE-2022-32212 的补丁涵盖了可路由 IP 地址的情况,但在处理 http://0.0.0.0 URL 时,macOS 设备上存在的特定行为允许受攻击者控制的 DNS 服务器通过解析 .local 域中的主机来绕过 DNS 重新绑定保护。受攻击者控制的 DNS 服务器可将 <Computer Name>.local 解析为任意 IP 地址,从而造成受害者的浏览器在 http://0.0.0.0 加载任意内容。攻击者可借此绕过 DNS 重新绑定保护。感谢 Zeyu Zhang (@zeyu2001) 报告此漏洞,同时感谢 Rafael Gonzaga 修复此漏洞。影响:(CVE-2022-32212)

- 由于对 CVE-2022-32215 的修复不完整,Node.js v16.16.0 和 18.7.0 中 http 模块的 llhttp 解析器无法正确处理多行 Transfer-Encoding 标头,这可导致 HTTP 请求走私 (HRS) 攻击。感谢 JFrog CSO 团队的 Liav Gutman 报告此漏洞,并感谢 Paolo Insogna 修复此漏洞。影响:(CVE-2022-32215)

- 使用 Node.js HTTP 解析器支持的 obs-fold 可绕过针对 CVE-2022-32213 的补丁。如果将 Node.js HTTP 模块用作代理服务器,则它会在折叠标头时错误地将 transfer-encoding 标头解析为表示分块请求,并因此将并非有效 Transfer-Encoding 标头的 Transfer-Encoding: chunked abc 转发到下游服务器。因此,如 CVE-2022-32213 所示,这可能导致 HTTP 请求走私攻击。感谢 Haxatron 报告此漏洞。
影响:(CVE-2022-32213)

- Node.js v18.7.0 中 http 模块的 llhttp 解析器未正确处理非以 CLRF 结尾的标头字段,这可能会导致 HTTP 请求走私攻击。感谢 VVX7 报告此漏洞。影响:(CVE-2022-35256)

- 在 MacOS 系统上启动 Node.js 18 和更高版本时,进程会尝试读取通常不存在的 /home/iojs/build/ws/out/Release/obj.target/deps/openssl/openssl.cnf。攻击者可以通过自行选择的用户名 (iojs) 访问共享的 MacOS 主机,进而影响其他用户的 OpenSSF 配置。感谢 Michael Dawson 报告(并修复)此漏洞。影响:(CVE-2022-32222)

- Node.js 会调用 src/crypto/crypto_keygen.cc 中 SecureKeyGenTraits: : DoKeyGen() 的 EntropySource(),
但是不检查返回值,而是假设 EntropySource() 始终成功,但实际上它可能(有时)会失败。感谢 Ben Noordhuis 报告(并修复)此漏洞。影响:
(CVE-2022-35255)

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

解决方案

升级到 Node.js 14.20.1 / 16.17.1 / 18.9.1 或更高版本。

另见

http://www.nessus.org/u?7b6fbe18

插件详情

严重性: Critical

ID: 165633

文件名: nodejs_2022_sep.nasl

版本: 1.9

类型: local

代理: windows, macosx, unix

系列: Misc.

发布时间: 2022/10/3

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

配置: 启用全面检查

支持的传感器: Nessus Agent, Nessus

风险信息

VPR

风险因素: Medium

分数: 6.7

CVSS v2

风险因素: High

基本分数: 9.4

时间分数: 7.8

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

CVSS 分数来源: CVE-2022-35255

CVSS v3

风险因素: Critical

基本分数: 9.1

时间分数: 8.4

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

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

漏洞信息

CPE: cpe:/a:nodejs:node.js

必需的 KB 项: installed_sw/Node.js

可利用: true

易利用性: Exploits are available

补丁发布日期: 2022/9/15

漏洞发布日期: 2022/7/8

参考资料信息

CVE: CVE-2022-32212, CVE-2022-32213, CVE-2022-32215, CVE-2022-32222, CVE-2022-35255, CVE-2022-35256

IAVB: 2022-B-0036-S