Node.js 20.x < 20.20.2 多個弱點 (2026 年 3 月 24 日星期二安全性版本)。

high Nessus Plugin ID 303494

概要

Node.js - JavaScript 執行階段環境受到多個弱點影響。

說明

遠端主機上安裝的 Node.js 版本低於 20.20.2。因此,它會受到 2026 年 3 月 24 日星期二安全性版本公告中提及的多個弱點影響。

- Node.js TLS 錯誤處理中有一個缺陷,當使用 `pskCallback` 或 `ALPNCallback` 時,遠端攻擊者可造成 TLS 伺服器損毀或資源耗盡。在這些回呼期間擲回的同步異常狀況會繞過標準 TLS 錯誤處理路徑 (tlsClientError 和 error),造成處理程序立即終止或無訊息檔案描述符號洩漏,最終導致系統拒絕服務。由於這些回呼會在 TLS 交握期間處理攻擊者控制的輸入,因此遠端用戶端可重複觸發此問題。此弱點會影響使用 PSK 或 ALPN 回呼的 TLS 伺服器,涉及 Node.js 版本中這些回呼在未安全包裝的情況下拋出異常的問題。(CVE-2026-21637)

- 在 Node.js 中發現一個弱點,當 --allow-fs-write 旗標使用時,此弱點會影響實驗權限模型的使用者。Node.js 權限模型無法在檔案描述符號上運作,不過,fs.fchown 或 fs.fchmod 等作業可使用唯讀檔案描述符號來變更檔案的擁有者和權限。(CVE-2024-36137)

- Node.js HTTP 要求處理中有一個缺陷,當收到標頭名為 __proto__ 的要求而應用程式存取 req.headersDistinct 時,此缺陷會造成未攔截的 TypeError。發生此情況時,dest[__proto__] 解析為 Object.prototype 而非 undefined,進而造成在非陣列上呼叫 .push()。此例外狀況會在屬性 getter 內同步擲回,且無法由錯誤事件接聽程式攔截,這表示如果不將每個 req.headersDistinct 存取權包裝在 try/catch 中,就無法處理此例外狀況。感謝 yushengchen 報告此弱點,同時感謝 mcollina 修正此弱點。(CVE-2026-21710)

- Node.js 權限模型網路強制執行中有一個缺陷,會讓 Unix 網域通訊端 (UDS) 伺服器作業沒有必要的權限檢查,但所有類似的網路路徑都會正確強制執行這些檢查。因此,在沒有--allow-net 的 --permission 之下執行的程式碼可建立並洩漏本機 IPC 端點,進而允許在預定網路限制邊界之外與相同主機上的其他處理程序通訊。感謝 xavlimsg 報告此弱點,同時感謝 RafaelGSS 修正此弱點。
(CVE-2026-21711)

- Node.js URL 處理中的一個缺陷導致當使用包含無效字元的格式錯誤的國際化網域名稱 (IDN) 呼叫 url.format() 時,原生程式碼中發生宣告失敗,進而損毀 Node.js 處理程序。感謝 wooffie 報告此弱點,同時感謝 RafaelGSS 修正此弱點。
(CVE-2026-21712)

請注意,Nessus 並未測試這些問題,而是僅依據應用程式自我報告的版本號碼作出判斷。

解決方案

升級至 Node.js 20.20.2 或更新版本。

另請參閱

http://www.nessus.org/u?4d3e9120

Plugin 詳細資訊

嚴重性: High

ID: 303494

檔案名稱: nodejs_2026_mar_24.nasl

版本: 1.3

類型: Local

代理程式: windows, macosx, unix

系列: Misc.

已發布: 2026/3/24

已更新: 2026/4/3

組態: 啟用徹底檢查 (optional)

支援的感應器: Nessus Agent, Nessus

風險資訊

VPR

風險因素: Medium

分數: 4.9

CVSS v2

風險因素: High

基本分數: 7.8

時間性分數: 6.1

媒介: CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:C

CVSS 評分資料來源: CVE-2026-21637

CVSS v3

風險因素: High

基本分數: 7.5

時間性分數: 6.7

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

時間媒介: CVSS:3.0/E:P/RL:O/RC:C

弱點資訊

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

必要的 KB 項目: installed_sw/Node.js

可被惡意程式利用: true

可輕鬆利用: Exploits are available

修補程式發佈日期: 2026/3/24

弱點發布日期: 2024/7/8

參考資訊

CVE: CVE-2024-36137, CVE-2026-21637, CVE-2026-21710, CVE-2026-21711, CVE-2026-21712, CVE-2026-21713, CVE-2026-21714, CVE-2026-21715, CVE-2026-21717

IAVB: 2024-B-0083-S, 2026-B-0013, 2026-B-0082