Node.js の 12件の脆弱性が FIX:プロセス・クラッシュや認証バイパスなどの恐れ

Node.js Releases Security Updates for 12 Vulnerabilities, Two Rated High Severity

2026/06/19 gbhackers — Node.js が発表したのは、サポート対象リリース系列全体に存在する、12 件の脆弱性に対処する重要なセキュリティ・アップデートである。その中には、サービス拒否 (DoS) 状態や認証バイパスにつながる可能性がある、2 件の高深刻度の欠陥が含まれる。これらのアップデートは、2026年6月18日に Node.js バージョン 22.x/24.x/26.x に対してリリースされている。パッチ適用済みバージョンは、v22.23.0/v24.17.0/v26.3.1 となる。

Node.js がセキュリティ・アップデートをリリース

最も深刻な脆弱性 CVE-2026-48933 は、WebCrypto API に影響を及ぼすものだ。この脆弱性を悪用する攻撃者は、細工された入力を subtle.encrypt() 関数に処理させ、プロセス・クラッシュを引き起こす可能性がある。

具体的には、2 GiB の倍数となる入力により、整数オーバーフローをトリガーし、リモート DoS 状態を引き起こす可能性がある。この問題は、信頼できない環境で暗号操作に依存するアプリケーションに対して、大きな影響を及ぼす。

もう 1 つの高深刻度の脆弱性 CVE-2026-48618 は、TLS ホスト名検証に影響を及ぼすものだ。Unicode ドット区切り文字の不適切な処理により、ホスト名解決と証明書検証の間に不一致が生じ、特定のコンフィグ下における攻撃者に対して、TLS ワイルドカード認証のバイパスを許す恐れがある。これにより、不正アクセスやデータの機密性侵害が可能になる。


これらの高深刻度の問題に加えて、HTTP/2/TLS/プロキシ処理メカニズムに影響する複数の中深刻度の脆弱性が修正されている。特に、脆弱性 CVE-2026-48619 を悪用する攻撃者は、過剰な ORIGIN フレームを HTTP/2 クライアントへ送信することで、無制限のメモリ消費とサービス中断を引き起こす可能性がある。

同様に、脆弱性 CVE-2026-48934 は、サーバ名が一致しないセッションの再利用を介して、TLS ホスト・アイデンティティ検証のバイパスを可能にし、安全な通信にリスクをもたらす。

もう 1 つの注目すべき脆弱性 CVE-2026-48615 は、プロキシ・トンネリング使用時に、エラー・メッセージを通じてプロキシ認証情報を露出させる。プロキシ URL に認証情報が埋め込まれている場合に、ログや診断出力を通じて漏洩を引き起こす可能性があり、エンタープライズ環境における認証情報侵害のリスクを高める。

低深刻度の脆弱性としては、主に Node.js の Permission Model と内部 API に影響を及ぼすものが修正されている。たとえば、脆弱性 CVE-2026-48617/CVE-2026-48935 は、特定の条件下における攻撃者に対して、ファイル・システム制限のバイパスを許してしまう。また、脆弱性 CVE-2026-48936 は、パーミッション・フラグが指定されている状態であっても、Unix ドメイン・ソケットを介した不正なローカル・ネットワーク・アクセスを許してしまう。これらは、低深刻度に分類されているが、他の脆弱性との連鎖攻撃で悪用される可能性がある。

このリリースには、http.Agent 実装の競合状態に起因する HTTP レスポンス・キュー・ポイズニングの脆弱性 CVE-2026-48931 の修正も含まれている。また、HTTP/2 サーバにおける不適切なセッション・クリーンアップの脆弱性 CVE-2026-48937 により、接続終了シグナルの後もデータ処理が継続される可能性がある問題にも対処している。

CVE IDTitle / Short DescriptionSeverityAffected Release Lines
CVE-2026-48933WebCrypto AES integer overflow leads to remote process abort (DoS)HighNode.js 22, 24, 26 
CVE-2026-48618Unicode dot separator handling allows TLS wildcard-depth authentication bypassHighNode.js 22, 24, 26 
CVE-2026-48615Proxy credentials leaked in ERR_PROXY_TUNNEL error messageMediumNode.js 22, 24, 26 
CVE-2026-48617Permission model bypass via process.report.writeReport() path misvalidationLowNode.js 22, 24, 26 
CVE-2026-48619Unbounded memory growth in node:http2 clients via attacker-controlled ORIGIN framesMediumNode.js 22, 24, 26 
CVE-2026-48937HTTP/2 sessions never clean up after GOAWAY on invalid protocol errorsMediumNode.js 22, 24 
CVE-2026-48928Uppercase SNI context matching can lead to mTLS authorization bypass due to case-sensitive hostname matchingMediumNode.js 22, 24, 26 
CVE-2026-48930Embedded-NUL hostnames cause silent authority rebinding due to C-string truncation in resolver bindingsMediumNode.js 22, 24, 26 
CVE-2026-48934TLS host identity verification bypass via session reuse with different servernameMediumNode.js 22, 24, 26 
CVE-2026-48935Permission model bypass via FileHandle.utimes() in the promises APILowNode.js 22, 24, 26 
CVE-2026-48936Unix domain socket server bypasses --permission network restrictions (incomplete CVE-2026-21636 fix)LowNode.js 26 only 
CVE-2026-48931HTTP response queue poisoning via TOCTOU race condition in http.AgentLowNode.js 22, 24, 26 

脆弱性と併せて修正されたものには、Node.js の llhttp (9.4.2)/nghttp2 (1.69.0)/OpenSSL (3.5.7) および、サポート対象バージョン全体の undici といった、複数のコア依存関係もある。これらの更新は、追加の upstream セキュリティ懸念に対処し、ランタイム全体の安定性を向上させる。

すべてのサポート対象リリース系列が影響を受けるため、セキュリティ専門家が強く推奨するのは、パッチ適用済みバージョンへの速やかなアップグレードである。サポート終了済みの Node.js バージョンを実行している組織は、セキュリティ・パッチを受け取れないため、高リスクの状態に置かれる。