• 公告ID (KylinSec-SA-2024-4027)

摘要:

nodejs security update

安全等级: High

公告ID: KylinSec-SA-2024-4027

发布日期: 2024年9月27日

关联CVE: CVE-2023-46809   CVE-2024-22019   CVE-2024-22025   CVE-2024-27982   CVE-2024-27983  

  • 详细介绍

1. 漏洞描述

   

Node.js is an open-source, cross-platform, JavaScript runtime environment, it executes JavaScript code outside of a browser.

Security Fix(es):

Node.js versions which bundle an unpatched version of OpenSSL or run against a dynamically linked version of OpenSSL which are unpatched are vulnerable to the Marvin Attack - https://people.redhat.com/~hkario/marvin/, if PCKS #1 v1.5 padding is allowed when performing RSA descryption using a private key.(CVE-2023-46809)

A vulnerability in Node.js HTTP servers allows an attacker to send a specially crafted HTTP request with chunked encoding, leading to resource exhaustion and denial of service (DoS). The server reads an unbounded number of bytes from a single connection, exploiting the lack of limitations on chunk extension bytes. The issue can cause CPU and network bandwidth exhaustion, bypassing standard safeguards like timeouts and body size limits.(CVE-2024-22019)

A vulnerability in Node.js has been identified, allowing for a Denial of Service (DoS) attack through resource exhaustion when using the fetch() function to retrieve content from an untrusted URL.
The vulnerability stems from the fact that the fetch() function in Node.js always decodes Brotli, making it possible for an attacker to cause resource exhaustion when fetching content from an untrusted URL.
An attacker controlling the URL passed into fetch() can exploit this vulnerability to exhaust memory, potentially leading to process termination, depending on the system configuration.(CVE-2024-22025)

The team has identified a critical vulnerability in the http server of the most recent version of Node, where malformed headers can lead to HTTP request smuggling. Specifically, if a space is placed before a content-length header, it is not interpreted correctly, enabling attackers to smuggle in a second request within the body of the first.(CVE-2024-27982)

An attacker can make the Node.js HTTP/2 server completely unavailable by sending a small amount of HTTP/2 frames packets with a few HTTP/2 frames inside. It is possible to leave some data in nghttp2 memory after reset when headers with HTTP/2 CONTINUATION frame are sent to the server and then a TCP connection is abruptly closed by the client triggering the Http2Session destructor while header frames are still being processed (and stored in memory) causing a race condition.(CVE-2024-27983)

2. 影响范围

cve名称 产品 组件 是否受影响
CVE-2023-46809 KY3.4-5A nodejs Fixed
CVE-2024-22019 KY3.4-5A nodejs Fixed
CVE-2024-22025 KY3.4-5A nodejs Fixed
CVE-2024-27982 KY3.4-5A nodejs Fixed
CVE-2024-27983 KY3.4-5A nodejs Fixed

3. 影响组件

    nodejs

4. 修复版本

   

KY3.4-5A

软件名称 架构 版本号
nodejs-docs noarch 12.22.11-8.kb1.ky3_4
nodejs x86_64 12.22.11-8.kb1.ky3_4
nodejs-devel x86_64 12.22.11-8.kb1.ky3_4
nodejs-full-i18n x86_64 12.22.11-8.kb1.ky3_4
nodejs-libs x86_64 12.22.11-8.kb1.ky3_4
npm x86_64 6.14.16-1.12.22.11.8.kb1.ky3_4
v8-devel x86_64 7.8.279.23-1.12.22.11.8.kb1.ky3_4
nodejs aarch64 12.22.11-8.kb1.ky3_4
nodejs-devel aarch64 12.22.11-8.kb1.ky3_4
nodejs-full-i18n aarch64 12.22.11-8.kb1.ky3_4
nodejs-libs aarch64 12.22.11-8.kb1.ky3_4
npm aarch64 6.14.16-1.12.22.11.8.kb1.ky3_4
v8-devel aarch64 7.8.279.23-1.12.22.11.8.kb1.ky3_4

5. 修复方法


方法一:下载安装包进行升级安装
1、通过下载链接下载需要升级的升级包保存,如 xxx.rpm
2、通过rpm命令升级,如 rpm -Uvh xxx.rpm

方法二:通过软件源进行升级安装
1、保持能够连接上互联网
2、通过yum命令升级指定的包,如 yum install 包名

6. 下载链接

   

KY3.4-5A:

x86_64:

     nodejs-docs   

     nodejs   

     nodejs-devel   

     nodejs-full-i18n   

     nodejs-libs   

     npm   

     v8-devel   

aarch64:

     nodejs-docs   

     nodejs   

     nodejs-devel   

     nodejs-full-i18n   

     nodejs-libs   

     npm   

     v8-devel   

上一篇:KylinSec-SA-2024-4026 下一篇:KylinSec-SA-2024-4028