OpenAINext.jsDec 3, 2025, 4:00 PM

Security Advisory: CVE-2025-66478

A condensed section focused on the key takeaways first.

Original Post

Quick Digest

Summary

A condensed section focused on the key takeaways first.

openaienmodel: gpt-5-mini-2025-08-07

Security Advisory: CVE-2025-66478 (Next.js App Router RCE)

Key Points

  • CVSS 10.0 RCE via React Server Components
  • Upgrade Next.js to patched releases immediately
  • Run npx fix-react2shell-next and rotate secrets

Summary

A critical vulnerability in the React Server Components (RSC) protocol (originating from React CVE-2025-55182) allows remote code execution (CVSS 10.0) when processing attacker-controlled requests in unpatched Next.js applications that use the App Router. This advisory (CVE-2025-66478) tracks the downstream Next.js impact and required remediation. There is no workaround — upgrade immediately and rotate secrets after redeploy.

Key Points

  • Impact: Remote code execution in Next.js App Router apps using RSC under specific request conditions.
  • Affected: Next.js 15.x, 16.x, and Next.js 14.3.0-canary.77 and later canary releases when using the App Router with RSC.
  • Not affected: Next.js 13.x (stable), Next.js 14.x stable, Pages Router apps, and Edge Runtime.
  • Severity: CVSS 10.0. Immediate patching required; rotate secrets after patch & redeploy.

Affected versions

  • Next.js 15.x
  • Next.js 16.x
  • Next.js 14.3.0-canary.77 and later canary releases (if using App Router + RSC)

Patched versions (upgrade to the appropriate release line)

  • 15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7
  • 16.0.7
  • Canary fixes: 15.6.0-canary.58, 16.1.0-canary.12
  • If on 14.3.0-canary.77 or later canary: downgrade to the latest stable 14.x (npm install next@14) or move to a patched 15/16 release.

Immediate actions (practical steps)

  • Identify affected deployments running App Router with RSC and check Next.js versions.
  • Upgrade to the patched release for your release line, for example:
    • npm install next@15.0.5 (or the matching patched version for your 15.x line)
    • npm install next@16.0.7 (for 16.0.x)
    • npm install next@15.6.0-canary.58 / npm install next@16.1.0-canary.12 (canary fixes)
  • Run the provided interactive tool to check and apply deterministic bumps: npx fix-react2shell-next.
  • Redeploy and then rotate all environment secrets (API keys, credentials, tokens), starting with highest-privilege secrets.
  • There is no workaround; patching is required.

Notes & resources

  • This advisory intentionally limits technical detail to reduce risk to unpatched deployments.
  • See the Next.js advisory and React advisory for additional context, and the npx fix-react2shell-next GitHub repo for automated assistance.
  • Disclosure credit: Lachlan Davidson (responsible disclosure).

Full Translation

Translations

A translation section that keeps the flow of the original article.

openaijamodel: gpt-5-mini-2025-08-07

セキュリティアドバイザリ: CVE-2025-66478

公開情報

  • 公開日: 2025-12-03T16:00:00.000Z
  • 投稿者: Josh Story (@joshcstory), Sebastian Markbåge (@sebmarkbage)

更新情報

  • 2025-12-06 21:05 PST: 2025年12月4日 13:00 PT 時点でオンラインかつ未パッチのアプリケーションをお使いの場合は、最も重要なシークレットから順に、使用している全てのシークレットをローテーションすることを強く推奨します。
  • 2025-12-06 07:29 PST: 影響を受ける Next.js アプリを更新するための npm パッケージがリリースされました。今すぐ npx fix-react2shell-next を実行して更新するか、詳細は GitHub リポジトリをご確認ください。

概要

React Server Components (RSC) プロトコルに重大な脆弱性が特定されました。本件は CVSS 10.0 と評価され、攻撃者が操作したリクエストを処理する未修正環境でリモートコード実行 (RCE) を引き起こす可能性があります。脆弱性は上流の React 実装に起因します(CVE-2025-55182)。本アドバイザリ(CVE-2025-66478)は App Router を使用する Next.js アプリケーションへの下流影響を追跡しています。

影響

脆弱な RSC プロトコルにより、信頼されていない入力がサーバー側の実行挙動に影響を与える可能性があり、特定条件下で攻撃者が意図しないサーバー実行パスを誘発するリクエストを作成できる可能性があります。未修正環境ではリモートコード実行につながる恐れがあります。すべての利用者は直ちにパッチ適用済みバージョンへのアップグレードを行ってください。具体的な手順は「必要な対応」を参照してください。

影響を受ける Next.js バージョン

App Router で React Server Components を使用しているアプリケーションが対象です。影響を受ける実行環境は次の通りです:

  • Next.js 15.x
  • Next.js 16.x
  • Next.js 14.3.0-canary.77 以降の canary リリース

次は影響を受けません:

  • Next.js 13.x
  • Next.js 14.x(安定版)
  • Pages Router を使うアプリケーション
  • Edge Runtime

修正済みバージョン

本脆弱性は次の Next.js リリースで完全に修正されています:

  • 15.0.5
  • 15.1.9
  • 15.2.6
  • 15.3.6
  • 15.4.8
  • 15.5.7
  • 16.0.7

また、次の canary リリースでもパッチを提供しています:

  • 15.6.0-canary.58(15.x の canary)
  • 16.1.0-canary.12(16.x の canary)

これらのバージョンには強化された React Server Components 実装が含まれます。

必要な対応

すべての利用者は、自身のリリースラインで最新の修正済みバージョンにアップグレードしてください。例:

  • npm install next@15.0.5 # for 15.0.x

  • npm install next@15.1.9 # for 15.1.x

  • npm install next@15.2.6 # for 15.2.x

  • npm install next@15.3.6 # for 15.3.x

  • npm install next@15.4.8 # for 15.4.x

  • npm install next@15.5.7 # for 15.5.x

  • npm install next@16.0.7 # for 16.0.x

  • npm install next@15.6.0-canary.58 # for 15.x canary releases

  • npm install next@16.1.0-canary.12 # for 16.x canary releases

  • Next.js 14.3.0-canary.77 以降の canary を使用している場合は、最新の安定した 14.x へダウングレードしてください:

    • npm install next@14

PPR を有効にするために canary を利用している場合は、問題を修正しつつ PPR をサポートし続ける 15.6.0-canary.58 へ更新できます。

他の古いバージョンをパッチする方法については、このディスカッションポストを参照してください。

インタラクティブな検査と決定論的なバージョン更新を行うには次を実行してください:

  • npx fix-react2shell-next

完全な詳細は GitHub リポジトリを参照してください。回避策はありません — 修正済みバージョンへのアップグレードが必須です。

環境変数(シークレット)のローテーション

バージョンをパッチ適用してアプリケーションを再デプロイした後、アプリケーションのすべてのシークレットのローテーションを推奨します。環境変数の取り扱いに関するドキュメントを参照してください。

参考情報

  • Security advisories: React (CVE-2025-55182)、Next.js (CVE-2025-66478)
  • React blog: Critical Security Vulnerability in React Server Components
  • Vercel Knowledge Base: React2Shell Security Bulletin
  • Netlify Blog: Netlify's response to the critical React security vulnerability
  • AWS Security Blog: China-nexus cyber threat groups rapidly exploit React2Shell vulnerability
  • Google Cloud Blog: Responding to CVE-2025-55182: Secure your React and Next.js workloads
  • Fastly Blog: Fastly's Proactive Protection for React2Shell, Critical React RCE CVE-2025-55182 and CVE-2025-66478
  • Akamai Blog: CVE-2025-55182: React and Next.js Server Functions Deserialization RCE

発見と注意事項

本脆弱性を発見し責任ある開示を行ってくれた Lachlan Davidson に感謝します。

本アドバイザリでは、まだアップグレードしていない開発者を保護するために技術的詳細を意図的に制限しています。詳細は上記の公式アドバイザリやリポジトリを参照してください。