
認可されたローカルテスト環境のみで、重大な React2Shell 脆弱性(CVE-2025-55182 / CVE-2025-66478)を実証するための概念実証(PoC)ツールです。
この脆弱性(CVSS 10.0)は、高度な脅威アクターによって活発に悪用されています。 Amazon Threat Intelligence によると、Earth Lamia や Jackpot Panda を含む複数の中国関連の国家支援グループが、開示から数時間以内に公開エクスプロイトを武器化し始めました。米国サイバーセキュリティ・インフラストラクチャセキュリティ庁(CISA)は、この脆弱性を既知の悪用済み脆弱性(KEV)カタログに追加しました。
CVE-2025-55182(React2Shell)は、React Server Components(RSC)の "Flight" プロトコルにおける、認証前のリモートコード実行(RCE)の重大な脆弱性です。別の識別子である CVE-2025-66478 は Next.js 用に割り当てられましたが、CVE-2025-55182 の重複として却下されました。両者は同じ根本原因を共有しているためです。
chmod +x pwn-nextjs.sh
./pwn-nextjs.sh [TARGET_URL] [COMMAND]
# Target specific URL
./pwn-nextjs.sh https://vulnerable-app.example.com "whoami"
root
この脆弱性は特定の React パッケージに起因し、それらをバンドルするすべてのフレームワークに影響を与えます。
影響を受けないもの:Next.js 13.x、Next.js 14.x の安定版リリース、Pages Router アプリケーション、および Edge Runtime は影響を受けません。
RSC Flight プロトコルは、クライアントとサーバー間の通信のためにデータをシリアル化します。脆弱性はサーバー側の逆シリアル化ロジックにあり、受信したペイロードからオブジェクトプロパティを適切な検証なしに安全でない方法で展開します。これにより、攻撃者は __proto__ や constructor などの悪意のあるキーをリクエストに注入でき、プロトタイプ汚染につながります。
プロトタイプチェーンが汚染されると、サーバーは攻撃者の影響を受けた実行経路をたどります。これは連鎖させて、サーバー権限で任意の JavaScript コードを実行し、完全なリモートコード実行(RCE)につなげることができます。
セキュリティ研究者は、以下のような結果につながる悪用の成功を観察しています:
.aws/credentials)の特定と外部送信の試み。パッチ適用は必須であり、脆弱性を完全に排除する唯一の方法です。 脆弱なコード経路を無効化する設定は存在しません。
# For Next.js users, upgrade to the latest patched version in your release line.
# Example: If you are on Next.js 15.5.x:
npm install [email protected]
# Also ensure React dependencies are updated:
npm install react@latest react-dom@latest
package-lock.json または yarn.lock ファイルが、パッチ適用済みの react-server-dom-* パッケージバージョン(19.0.1、19.1.2、または 19.2.1)を反映していることを確認してください。
パッチ適用までの間、エクスプロイト試行をブロックする Web アプリケーションファイアウォール(WAF)ルールを導入してください:
AWSManagedRulesKnownBadInputsRuleSet(v1.24+)には、この CVE のルールが含まれています。cve-canary ルールが利用可能です。注記:WAF ルールは一時的で不完全な緩和策です。パッチ適用の必要性に取って代わるものではありません。
悪用試行の兆候についてログを確認してください:
next-action または rsc-action-id ヘッダーを含む POST リクエスト。$@ や "status":"resolved_model" などのパターンを含むリクエストボディ。whoami、id、uname)、/etc/passwd の読み取り、または /tmp/ へのファイル書き込み(例:pwned.txt)。このツールは、CVSS スコア 10.0(最大深刻度) であり、国家支援による活発な悪用が進行中の脆弱性を実証するものです。
忘れないでください:このツールはパッチ適用が緊急である理由を示しています。この知識を、システムを侵害するためではなく、セキュリティを向上させシステムを守るために使用してください。すべての依存関係を上記のパッチ適用済みバージョンに更新してください。
| コンポーネント | 影響を受けるバージョン | パッチ適用済みバージョン | 備考 |
|---|
| React パッケージ ( react-server-dom-webpack, -parcel, -turbopack) | 19.0.0, 19.1.0, 19.1.1, 19.2.0 | 19.0.1, 19.1.2, 19.2.1 | 上流の欠陥の原因。 |
| Next.js(App Router) | 15.x, 16.x, 14.3.0-canary.77 以降 | 15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7, 16.0.7 | 主な影響を受けるフレームワーク。 |
| その他のフレームワーク | React Router、Waku、RedwoodJS、Parcel(@parcel/rsc)、Vite RSC プラグイン | パッチ適用済みの React パッケージ(>19.0.1, 19.1.2, 19.2.1)を使用するバージョンに更新してください。 | 影響を受ける React パッケージを使用している場合に脆弱です。 |