Skip to content
catch-all-favorite
Esc
navigateopen⌘Jpreview
On this page

Next.js の脆弱性レポート(CVE-2026-44578)

調査日: 2026-05-09 ステータス: Published (GitHub Advisory: Reviewed 2026-05-06)

概要

セルフホスト環境の Next.js アプリケーションにおいて、WebSocket アップグレードリクエストを介した SSRF(Server-Side Request Forgery)の脆弱性が存在する。攻撃者は WebSocket アップグレードを利用して内部サービスやクラウドメタデータエンドポイント(169.254.169.254)へのリクエストをプロキシさせることが可能。HTTP リクエストに適用されていた安全性チェックが WebSocket アップグレードには適用されていなかった。

基本情報

項目 内容
CVE ID CVE-2026-44578
GHSA ID GHSA-c4j6-fc7j-m34r
CVSS v3.1 スコア 8.6 (High)
CVSS ベクター CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N
CWE 情報なし
公開日 2026-05-06
最終更新日 2026-05-06

影響を受けるソフトウェア

Next.js (npm)

  • ベンダー: Vercel
  • 影響バージョン: >= 13.4.13, < 15.5.16 / >= 16.0.0, < 16.2.5
  • 修正バージョン: 15.5.16 / 16.2.5

脆弱性の詳細

Next.js のリバースプロキシ機能において、通常の HTTP リクエストに対しては内部ネットワークやクラウドメタデータへのアクセスを防ぐ安全性チェックが実装されていたが、WebSocket アップグレードリクエストに対しては同等のチェックが適用されていなかった。攻撃者はこの不整合を悪用し、WebSocket の Upgrade ヘッダーを含むリクエストを送信することで、セルフホスト環境の Next.js サーバーを踏み台として内部サービスやクラウドメタデータエンドポイント(例: http://169.254.169.254/latest/meta-data/)にアクセスできる。これにより、クラウド環境の IAM 認証情報やインスタンスメタデータが漏洩する可能性がある。Vercel ホスティング環境はこの脆弱性の影響を受けない。

対策・推奨事項

  • Next.js を 15.5.16 以降または 16.2.5 以降にアップグレードする
  • WebSocket アップグレードリクエストに対しても HTTP リクエストと同等の安全性チェック(宛先アドレスの検証)を適用する修正が含まれている
  • セルフホスト環境では、リバースプロキシやファイアウォールレベルで内部ネットワークおよびメタデータエンドポイントへのアクセスを制限することを推奨
  • クラウド環境では IMDSv2(Instance Metadata Service v2)を有効化し、メタデータへのアクセスにトークンを要求する設定を推奨

フロントエンド影響分析

Next.js はフロントエンドフレームワークであり、このセクションは必須。

構成 影響度 対処要否 備考
SPA(クライアントサイドのみ) ⚪ なし 対処不要 WebSocket SSRF はサーバーサイドの問題であり、ブラウザのセキュリティサンドボックスにより防止される
SSR(サーバーサイドレンダリング) 🔴 高 要対処 セルフホスト Node.js サーバーが直接影響を受け、クラウドメタデータの漏洩はクリティカル

判定の考え方

  1. ブラウザのセキュリティ境界: ブラウザは Same-Origin Policy により、クライアントサイドの JavaScript から内部ネットワークやクラウドメタデータエンドポイントへ直接 WebSocket 接続を確立することはできない。SSRF はサーバー側でのみ成立する攻撃であり、SPA 構成では攻撃面が存在しない。
  2. 実行環境: SSR 構成ではセルフホストの Node.js サーバーがリクエストを処理するため、WebSocket アップグレードリクエストがサーバープロセスを経由して内部ネットワークに到達する。Vercel ホスティングではインフラ側で保護されているが、セルフホスト環境では直接的な脅威となる。
  3. 攻撃ベクター: 攻撃者は認証不要(PR:N)でネットワーク経由(AV:N)から攻撃可能であり、スコープ変更(S:C)により Next.js サーバーだけでなく内部ネットワーク上の他のサービスにも影響が波及する。クラウドメタデータの漏洩は認証情報の窃取につながるため、機密性への影響は高い(C:H)。
  4. ランタイム vs ビルドタイム: この脆弱性はランタイムにおける WebSocket アップグレード処理の問題であり、ビルドタイムには影響しない。本番環境のサーバーが稼働中に攻撃される可能性があるため、速やかなアップデートが必要である。

参考リンク

情報ソース

ソース 取得状況
NVD (NIST) ❌ 取得不可
GitHub Advisory ✅ 取得済み
Web検索 ✅ 取得済み

Was this page helpful?