セキュリティ警告 · 重要
Node.js:HTTP/2とHTTPSの脆弱性により、クライアントがサーバーをクラッシュさせ、他のユーザーのデータを読み取れる恐れ
· 読了目安 1 分 · Centoculus Security Team
から既知
影響を受けるもの: Node.js 22.x は 22.23.5 より前、24.x は 24.22.3 より前、26.x は 26.13.1 より前のバージョン。20.x や 25.x などサポート終了の系統も影響を受けますが、修正は提供されません。
概要
2026年11月11日、Node.jsプロジェクトは、サポート中の3つのリリース系統向けにセキュリティ更新版を公開しました。修正済みバージョンは 22.23.5、24.22.3、26.13.1 です。Node.js本体の16件の脆弱性を修正しており、そのうち7件は深刻度が高と評価されています。また、同梱の依存関係であるllhttp(22.x、24.x、26.x)、undici(24.x、26.x)、sqlite(22.x、24.x)も更新されています。
重要な問題は、Node.jsがHTTP/2、HTTPS、TLSのために標準で提供するサーバーコードに存在します。
- HTTP/2サーバーのクラッシュ(24.x および 26.x): 認証のないクライアントにより、Node.jsプロセスが停止させられる恐れがあります。攻撃には、標準のHTTP/2設定と、リクエストボディの受信完了前に応答するハンドラーがあれば十分です。プロジェクトは、この挙動は一般的なものであると説明しています。この攻撃はTLS接続と平文接続のどちらでも成立します。
- HTTP/2のメモリ漏えい(3系統すべて): サーバーがクライアントに自身のメモリの断片を送信してしまう恐れがあり、その中には他の接続向けの応答が含まれる場合があります。24.22.0および26.9.0以降では、クライアントが単独でこれを引き起こせます。22.xおよびそれ以前の24.x、26.xのビルドでは、応答の途中でサーバーがストリームを閉じた場合(例:アイドルタイムアウト後)に発生する恐れがあります。
- HTTPSのメモリ漏えい(3系統すべて): プロジェクトによれば、認証のないクライアントが他の接続のメモリを読み取れる恐れがあり、その中には「TLS秘密鍵や他のユーザーのリクエスト」が含まれます。これは、リクエストボディの終了前に
res.flushHeaders()を呼び出し、その後データ付きでres.end()を呼び出すハンドラーが存在する場合に成立します。漏えいしたメモリを読み取るには、攻撃者はリクエストボディを返す、または保存するルートも必要です。 - HTTP/2のリソース枯渇(3系統すべて): クライアントにより、標準設定のHTTP/2サーバーがメモリとファイルディスクリプタを恒久的に保持させられる恐れがあります。
- HTTP/2のファイル配信(24.x および 26.x):
stream.respondWithFile()やstream.respondWithFD()でファイルを配信している場合、クライアントによりサーバーのメモリが破損させられる恐れがあります。3系統すべてにおいて、そのようなダウンロードをキャンセルするとサーバーがクラッシュする恐れもあります(中程度と評価)。 - TLSサーバーのクラッシュ(24.x および 26.x):
SNICallback、OCSPRequest、newSession、resumeSessionのフック、またはserver.addContext()を使用するTLSサーバーが、クライアントによりクラッシュさせられる恐れがあります。 - TLSクライアント証明書の回避(3系統すべて): 一部のサーバーでは、特定のホスト名に対してより厳格なクライアント証明書のルールを適用しています。そのようなサーバーでは、別のホスト名で承認されたクライアントが、TLS 1.2の再ネゴシエーション中にルールを満たすことなく、より厳格なホスト名へ切り替えられる恐れがあります。
アドバイザリでは、これらの脆弱性を利用した攻撃は報告されていません。
影響を受ける対象
- 22.x(22.23.5より前)、24.x(24.22.3より前)、または**26.x(26.13.1より前)**のNode.jsを実行しているサーバー。
- 20.x や 25.x を含むサポート終了の系統は、今回のリリースでは修正されません。プロジェクトは、こうしたバージョンは常に影響を受けると説明しています。
- 深刻なサーバー側の問題は、Node.jsプロセスが自らHTTP/2、HTTPS、TLSの接続を受け付ける場合にのみ該当します。例としては、組み込みの
node:http2、node:https、node:tlsモジュール、またはこれらを用いてTLSやHTTP/2を終端するフレームワークが挙げられます。 node:httpで構築した平文のHTTPサーバーは、HTTPSのメモリ漏えいの影響を受けません。- HTTP/2のクラッシュは24.x系統と26.x系統にのみ影響し、22.xには影響しません。
nginx、Apache、HAProxy、ロードバランサーなどのリバースプロキシがTLSとHTTP/2を終端し、Node.jsにはHTTP/1.1の平文のみが届く構成であれば、露出のリスクは大幅に低くなります。ただし、本リリースには他の修正や依存関係の更新も含まれているため、更新は実施してください。
今すぐ行うべきこと
- すべてのNode.jsの導入箇所を確認します。 システムパッケージ、バージョン管理ツール(nvm、n、Volta)、Dockerイメージ、CIランナー、独自のNode.jsを同梱するホスティングパネルも対象に含めてください。
- 使用中の系統の修正版へ更新します: 22.23.5、24.22.3、または26.13.1。ディストリビューションやベンダーのパッケージ(NodeSourceやLinuxディストリビューションなど)を利用している場合は、パッケージソースでこれらのバージョンが提供され次第、更新を適用してください。
- サポート終了のバージョンから移行します。 20.x、25.x、またはそれ以前を実行している場合は、サポート中の系統へアップグレードしてください。更新できないサーバーに対する回避策は、アドバイザリに記載されていません。
- コンテナイメージを再構築します。 更新されたNode.jsベースイメージで再ビルドし、再デプロイしてください。ホストのみを更新しても、コンテナ内のNode.jsは変わりません。
- すべてのNode.jsプロセスを再起動します(systemdユニット、PM2、Dockerコンテナなど)。これにより新しいランタイムが読み込まれます。その後、アプリケーションが正常に応答することを確認してください。
- 露出していた場合は、シークレットの更新を検討してください。 アドバイザリでは、HTTPSのメモリ漏えいの条件を満たしたサーバーがTLS鍵やその他のシークレットを交換すべきかどうかは示されていません。該当条件を満たすNode.jsのHTTPSサーバーがインターネットから到達可能だった場合は、そのTLS証明書と鍵の更新を検討してください。
影響の有無の確認方法
- 各サーバーで、およびコンテナ内で(
docker exec <container> node -v)node -vを実行します。系統内のバージョンが22.23.5、24.22.3、26.13.1より前である場合、または20.xや25.xなどサポート終了の系統である場合は、影響を受けます。 - PM2を利用している場合は、
pm2 listとpm2 show <app>で、各アプリが使用しているNode.jsのバイナリとバージョンを確認できます。 - アプリケーションがHTTP/2やTLSをNode.js自体で終端しているかを確認します。コード内で
http2.createSecureServer、http2.createServer、https.createServer、tls.createServer、respondWithFile、respondWithFD、SNICallback、addContextを検索してください。 - プロセスマネージャーとシステムログで、想定外のNode.jsの再起動やクラッシュがないかを確認します。HTTP/2サーバーの異常終了が繰り返される場合は、クラッシュを誘発する試みの可能性があります。
出典
関連記事
警告 ·
Citrix NetScaler ADC および Gateway:重大なメモリの脆弱性によりサービス拒否のおそれ(CVE-2026-120868)
Citrix は、サービス拒否につながるおそれのある重大なメモリの脆弱性9件を、NetScaler ADC および NetScaler Gateway で修正しました。CVE-2026-120868 はすべての導入環境に影響します。14.1-73.57、13.1-64.39 またはそれに対応する FIPS ビルドへの更新が必要です。
警告 ·
PostgreSQL CVE-2026-6460:オブジェクトを作成できるデータベースユーザーがサーバー上でコードを実行できる問題
PostgreSQL 18.7、17.12、16.16、15.20、14.25 では、CVE-2026-6460 を含む 51 件の脆弱性が修正されています。オブジェクトを作成できるデータベースユーザーは、PostgreSQL を実行しているオペレーティングシステムのユーザーとしてコードを実行できます。サーバーと C 言語拡張機能は同時に更新してください。
警告 ·
Mittwald hosting attacked via MCP server: admin services offline, customers should check
Webホスターのmittwaldは、MCPサーバーを経由した攻撃を受けて緊急対応モードに入っています。顧客向け管理サービスは停止されています。顧客は公式の発表のみを確認し、アカウントとWebサイトの点検に備えてください。