Node.js 10.x < 10.23.1 / 12.x < 12.20.1 / 14.x < 14.15.4 / 15.x < 15.5.1 多个漏洞

high Nessus 插件 ID 144949

简介

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

描述

远程主机上安装的 Node.js 版本为低于 10.23.1 的 10.x、低于 12.20.1 的 12.x、低于 14.15.4 的 14.x 或低于 15.5.1 的 15.x。因此,该应用程序受到 january-2021-security-releases 公告中提及的多个漏洞的影响。

- X.509 GeneralName 类型是表示不同名称类型的泛型类型。在这些名称类型中,有一种被称为 EDIPartyName。OpenSSL 提供函数 GENERAL_NAME_cmp,用于比较 GENERAL_NAME 的不同实例,以判断它们是否相等。当两个 General_NAME 都包含 EDIPARTYNAME 时,此函数的行为不正确。可能会发生空指针取消引用和崩溃,从而可能导致拒绝服务攻击。OpenSSL 本身将 GENERAL_NAME_cmp 函数用于两个目的:1) 比较可用 CRL 和 X509 证书中嵌入的 CRL 分发点之间的 CRL 分发点名称 2) 当验证时间戳记响应令牌签名者与时间戳授权名称是否匹配时(通过 API 函数 TS_RESP_verify_response 和 TS_RESP_verify_token 暴露),如果攻击者可以控制正在比较的两个项目,则攻击者可能会导致崩溃。例如,如果攻击者可以诱骗客户端或服务器,使其针对恶意 CRL 检查恶意证书,就有可能会发生这种情况。请注意,某些应用程序根据证书中嵌入的 URL 自动下载 CRL。此检查发生在验证证书和 CRL 上的签名之前。
OpenSSL 的 s_server、s_client 和验证工具支持实现自动 CRL 下载的 -crl_download 选项,且已证实此攻击对这些工具有效。请注意,一个不相关的缺陷意味着受影响的 OpenSSL 版本无法解析或构建 EDIPARTYNAME 的正确编码。但是,可以构造 OpenSSL 的解析器会接受的畸形 EDIPARTYNAME,从而触发此攻击。所有 OpenSSL 1.1.1 和 1.0.2 版本都受此问题影响。
其他 OpenSSL 版本不受支持并且未经检查。已在 OpenSSL 1.1.1i 中修复(影响 1.1.1-1.1.1h)。已在 OpenSSL 1.0.2x 中修复(影响 1.0.2-1.0.2w)。(CVE-2020-1971)

- 10.23.1、12.20.1、14.15.4、15.5.1 之前的 Node.js 版本允许一个 HTTP 请求中存在两个标头字段副本(例如,两个传输编码标头字段)。在此情况下,Node.js 会识别第一个标头字段,忽略第二个标头字段。这可导致 HTTP 请求走私。(CVE-2020-8287)

- 10.23.1、12.20.1、14.15.4、15.5.1 之前的 Node.js 版本容易受到其 TLS 实现中的释放后使用错误的影响。写入启用 TLS 的套接字时,node: : StreamBase: : 写入调用 node: : TLSWrap: : 将新分配的 WriteWrap 对象作为第一个参数的 DoWrite。如果 DoWrite 方法未返回错误,则此对象会作为 StreamWriteResult 结构的一部分传回调用程序。此漏洞可被利用来损坏内存,从而导致拒绝服务或可能的其他利用情况。(CVE-2020-8265)

请注意,Nessus 尚未测试此问题,而是只依赖于应用程序自我报告的版本号。

解决方案

升级到 Node.js 版本 10.23.1 / 12.20.1 / 14.15.4 / 15.5.1 或更高版本。

另见

http://www.nessus.org/u?c59c0b90

插件详情

严重性: High

ID: 144949

文件名: nodejs_2021_jan.nasl

版本: 1.5

类型: local

代理: windows, macosx, unix

系列: Misc.

发布时间: 2021/1/14

最近更新时间: 2021/3/5

支持的传感器: Nessus Agent

风险信息

VPR

风险因素: Medium

分数: 6.7

CVSS v2

风险因素: Medium

基本分数: 6.8

时间分数: 5

矢量: AV:N/AC:M/Au:N/C:P/I:P/A:P

时间矢量: E:U/RL:OF/RC:C

CVSS 分数来源: CVE-2020-8265

CVSS v3

风险因素: High

基本分数: 8.1

时间分数: 7.1

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

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

漏洞信息

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

必需的 KB 项: installed_sw/Node.js

易利用性: No known exploits are available

补丁发布日期: 2021/1/4

漏洞发布日期: 2020/12/8

参考资料信息

CVE: CVE-2020-1971, CVE-2020-8265, CVE-2020-8287

IAVB: 2021-B-0004