Node.js 20.x < 20.20.2 複数の脆弱性 (2026 年 3 月 24 日火曜日のセキュリティリリース)。

high Nessus プラグイン ID 303494

概要

Node.js - JavaScript Runtime Environment は複数の脆弱性の影響を受けます。

説明

リモートホストにインストールされている Node.js のバージョンは、20.20.2 より前のものです。したがって、2026 年 3 月 24 日火曜日のセキュリティリリースのアドバイザリに記載されている複数の脆弱性の影響を受けます。

- Node.js TLS エラー処理の欠陥により、「pskCallback」または「ALPNCallback」が使用されているとき、リモートの攻撃者が TLS サーバーをクラッシュさせたりリソースを枯渇させたりする可能性があります。これらのコールバック中にスローされる同期例外が、標準の TLS エラー処理パス (tlsClientError およびエラー) をバイパスします。これにより、プロセスが即座に終了するかまたはサイレントファイル記述子の漏洩が発生し、最終的にサービス拒否につながります。これらのコールバックは TLS ハンドシェイク中に攻撃者が制御する入力を処理するため、リモートクライアントが繰り返し問題を引き起こす可能性があります。この脆弱性は、PSK または ALPN コールバックが安全にラップされずにスローされる Node.js のバージョン全体で、これらのコールバックを使用する TLS サーバーに影響を与えます。(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 に解決されるため、配列以外で .push() が呼び出されます。この例外は、プロパティ getter の内部で同期的にスローされ、エラーイベントリスナーによって傍受できません。つまり、try/catch の req.headersDistinct アクセスをすべてラップしないと処理できません。この脆弱性を報告してくれた 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

プラグインの詳細

深刻度: 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