脆弱性対応ウォッチ重大・クリティカル脆弱性のクラウド別対応まとめ
最新更新履歴CriticalHigh回避策のみパッチありAWSGCPAzureLinux
High CVSS 8.7
CVE-2026-15631

@fastify/http-proxy の WebSocket 経路でパストラバーサルにより rewrite プレフィックスを迂回

情報取得日: 2026/07/18/最終確認: 2026/08/10・本ページは公開情報の非公式まとめです

CVE IDCVE-2026-15631
製品Fastify / @fastify/http-proxy
CVSS8.7(High)
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:N
種別 (CWE)CWE-22 パス・トラバーサル
登録/公開日2026/07/18
出典https://nvd.nist.gov/vuln/detail/CVE-2026-15631

概要

Node.js のフレームワーク Fastify のプロキシプラグイン @fastify/http-proxy に、WebSocket の経路だけ経由するパストラバーサルがある。NVD の記述によれば、9.4.0 から 11.5.0 までのバージョンは、解決後の WebSocket 宛先パスを、設定した rewrite プレフィックスに対して検証していない。WebSocketProxy.findUpstream は WHATWG URL コンストラクタで宛先を解決するが、これはドットセグメント(.. など)を畳み込むため、パストラバーサル列を含む upgrade リクエストを作ると rewrite プレフィックスの外へ抜け、プロキシが公開するつもりのなかった上流エンドポイントへ到達できる。これは CVE-2021-21322 の変種で、HTTP 側の修正が入らなかったコードパスに残っていた。悪用には、リクエストパスを正規化しない WebSocket クライアントが必要である。ブラウザと ws パッケージは送信前に正規化するため、生の HTTP クライアントや、リクエストターゲットをそのまま転送する下流プロキシが経路にある構成が対象になる。CVSS 3.1 基本値は 8.7(High)で、ベクタは AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:N。AC:H(攻撃条件が複雑)は、この「正規化しないクライアントが要る」という前提を反映している。修正は 11.6.0 で行われた。回避策は無い。2026年8月14日時点で CISA KEV カタログには収載されていない。

クラウド/OS 別の対応状況

各ベンダー公式アドバイザリで確認できた事実に基づき整理しています。確認できていない項目は「情報確認中」と明記し、存在しないパッチ番号・バージョンは記載しません。

AWS / GCP / Azure / Linux いずれも対応区分は同じです: パッチあり(アプリ更新) 参照先も共通です(一次情報)。 下の表は環境ごとの補足です。
環境対応状況対応方法・備考
AWS (ECS/EC2) パッチあり(アプリ更新)
@fastify/http-proxy を 11.6.0 以上へ更新して再デプロイする
Lambda / ECS / EC2 のいずれで動かしていても、修正はアプリ側の依存更新になる。AWS 側からの修正提供はない。
参照リンク
GCP パッチあり(アプリ更新)
@fastify/http-proxy を 11.6.0 以上へ更新して再デプロイする
Cloud Run / GKE いずれもイメージの再ビルドが必要。GCP 固有の修正提供はない。
参照リンク
Azure パッチあり(アプリ更新)
@fastify/http-proxy を 11.6.0 以上へ更新して再デプロイする
App Service / AKS いずれも依存の更新が必要。Azure 固有の修正提供はない。
参照リンク
Linux パッチあり(アプリ更新)
npm / pnpm / yarn で @fastify/http-proxy を 11.6.0 以上へ上げる
ディストリのパッケージ管理の対象外。ロックファイルを更新して再インストールする。
参照リンク

解決の方向性(パッチ/回避策/代替)

まず該当するかを package-lock.json か pnpm-lock.yaml で判定する。@fastify/http-proxy が 9.4.0 以上 11.5.0 以下なら影響を受ける。WebSocket のプロキシを使っていない場合でも、プラグインを読み込んでいれば該当バージョンの入れ替えは行う。対応は 11.6.0 以上への更新だけで、公式に回避策は示されていない。すぐに更新できない場合の実務的な緩和は、プロキシの前段でパスを正規化することである。前段に nginx や CDN があるなら、そこで .. を含む upgrade リクエストを落とすか正規化する。AC:H の条件が「正規化しないクライアント」である以上、経路のどこかで正規化されれば攻撃は成立しない。ただしこれは前段の実装に依存する緩和なので、恒久対応にはしない。侵害の確認は、アクセスログの upgrade リクエストで %2e や .. を含むパスを検索する。同じコードベースで @fastify/reply-from も使っているなら、CVE-2026-16158(URLキャッシュのキー衝突)も併せて確認する。

よくある質問(CVE-2026-15631)

CVE-2026-15631(@fastify/http-proxy)の影響は?

High(CVSS 8.7)に分類されるFastify @fastify/http-proxyの脆弱性です。Node.js のフレームワーク Fastify のプロキシプラグイン @fastify/http-proxy に、WebSocket の経路だけ経由するパストラバーサルがある。NVD の記述によれば、9.4.0 から 11.5.0 までのバージョンは、解決後の WebSocket 宛先パスを、設定した rewrite プレフィックスに対して検証していない。WebSocketProxy.findUpstream は WHATWG URL コンストラクタで宛先を解決するが、これはドットセグメント(.. など)を畳み込むため、パストラバーサル列を含む upgrade リクエストを作ると rewrite プレフィックスの外へ抜け、プロキシが公開するつもりのなかった上流エンドポイントへ到達できる。これは CVE-2021-21322 の変種で、HTTP 側の修正が入らなかったコードパスに残っていた。悪用には、リクエストパスを正規化しない WebSocket クライアントが必要である。ブラウザと ws パッケージは送信前に正規化するため、生の HTTP クライアントや、リクエストターゲットをそのまま転送する下流プロキシが経路にある構成が対象になる。CVSS 3.1 基本値は 8.7(High)で、ベクタは AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:N。AC:H(攻撃条件が複雑)は、この「正規化しないクライアントが要る」という前提を反映している。修正は 11.6.0 で行われた。回避策は無い。2026年8月14日時点で CISA KEV カタログには収載されていない。

CVE-2026-15631 の対応方法・回避策は?

まず該当するかを package-lock.json か pnpm-lock.yaml で判定する。@fastify/http-proxy が 9.4.0 以上 11.5.0 以下なら影響を受ける。WebSocket のプロキシを使っていない場合でも、プラグインを読み込んでいれば該当バージョンの入れ替えは行う。対応は 11.6.0 以上への更新だけで、公式に回避策は示されていない。すぐに更新できない場合の実務的な緩和は、プロキシの前段でパスを正規化することである。前段に nginx や CDN があるなら、そこで .. を含む upgrade リクエストを落とすか正規化する。AC:H の条件が「正規化しないクライアント」である以上、経路のどこかで正規化されれば攻撃は成立しない。ただしこれは前段の実装に依存する緩和なので、恒久対応にはしない。侵害の確認は、アクセスログの upgrade リクエストで %2e や .. を含むパスを検索する。同じコードベースで @fastify/reply-from も使っているなら、CVE-2026-16158(URLキャッシュのキー衝突)も併せて確認する。

自分の環境が CVE-2026-15631 の影響を受けるか確認するには?

Fastify @fastify/http-proxy を利用している場合、稼働バージョンが影響範囲に含まれるかを一次情報(https://nvd.nist.gov/vuln/detail/CVE-2026-15631)で確認してください。AWS・GCP・Azure・Linux それぞれの対応状況は本ページの「クラウド/OS 別の対応状況」表にまとめています。確認できていない項目は「情報確認中」と明記しており、存在しないパッチ番号・バージョンは記載していません。

参考情報(出典)

本ページの記載は下記の一次情報に基づく非公式まとめです。数値・対応状況は各出典元で最終確認してください(最終確認: 2026/08/10)。

NVD(CVE 基本情報・CVSS スコアの出典)
免責: 本ページは CISA KEV・NVD・各ベンダー公式アドバイザリ等の公開情報をもとにした非公式まとめです。修正バージョンや対応可否は変更される場合があります。実際の対応は必ず 出典元および各ベンダー公式情報・自環境で確認してください。

« 一覧に戻る