中国系ハッカー グループがReact Server Componentsの脆弱性 React2Shell(CVE-2025-55182)を即日悪用-AWSが警告

セキュリティニュース

投稿日時: 更新日時:

中国系ハッカー グループがReact Server Componentsの脆弱性 React2Shell(CVE-2025-55182)を即日悪用-AWSが警告

2025年12月4日 React Server Componentsに重大なリモートコード実行(RCE)脆弱性「React2Shell(CVE-2025-55182)」が見つかり、公開から数時間で中国関与のサイバー攻撃グループが一斉に悪用を開始したことが、AWSのセキュリティブログで明らかになりました。

同時に、脆弱なNext.js/Reactアプリケーションを自動診断するオープンソースツール「react2shell-scanner」もGitHubで公開されています。

React2Shell(CVE-2025-55182)の概要

React2Shellは、React Server Componentsに存在する安全でないデシリアライズの欠陥で、CVSSスコアは最大の10.0(Critical)で評価されています。

  • 脆弱性の対象

    • React 19.x 系の React Server Components

    • Next.js 15.x / 16.x で App Router を利用しているアプリケーション

  • 特徴

    • 認証不要でRCEが可能(Unauthenticated RCE)

    • アプリ側で明示的に「Server Functions」を使っていなくても、React Server Componentsをサポートしているだけで攻撃対象になりうる

研究者 Lachlan Davidson 氏により2025年11月末に報告され、12月3日に公表されると同時に「React2Shell」という名称でPoC(概念実証コード)が出回りました。

関連:Reactで新たな脆弱性 DoS(サービス不能)とソースコード 漏洩の可能性、19系の複数バージョンに影響(CVE-2025-55184 / CVE-2025-67779/CVE-2025-55183)

IPAも注意喚起

日本のIPA(情報処理推進機構)も12月9日に注意喚起を発表しており、対象者へのアップデートを推奨しています。

関連:React2Shell(CVE-2025-55182)とは-React Server Components/Next.jsを直撃する脆弱性

公開から数時間で中国関与グループが悪用開始

React2Shell(CVE-2025-55182)の詳細とPoCコードが12月3日に公開されてから、実際の攻撃が始まるまでに要した時間は、わずか「数時間」だったとされています。

AWSのハニーポット環境「MadPot」では、公開直後から、中国と関係があるとされる複数の攻撃グループによるスキャンや侵入試行が、ほぼリアルタイムで観測されました。中でも、ラテンアメリカや中東、東南アジアの企業・政府機関を狙ってきた Earth Lamia や、東アジア・東南アジアの組織を主な標的とする Jackpot Panda のインフラと紐づく通信が確認されており、国家レベルのサイバー作戦に使われる匿名化ネットワークの一部が、そのままReact2Shell攻撃にも転用されている実態が浮かび上がっています。

これらのグループは、今回の脆弱性だけを狙うのではなく、同時期に公表された別の脆弱性も並行して組み込み、公開されたPoCを次々と自動スキャナに取り込んで一斉にばらまくことで、「とにかく早く、広く」脆弱なReact/Next.js環境を探し当てようとしているとみられます。

攻撃に使われているテクニックとIOC

主な攻撃パターン

AWSがMadPotで確認した攻撃では、以下のようなHTTPリクエストパターンが共通していました。

  • HTTP POSTでアプリのエンドポイントを狙う

  • リクエストヘッダに以下のような項目が含まれる

    • next-action

    • rsc-action-id

  • リクエストボディには、React Server Componentsの処理フローを悪用する特有のシリアライズデータが含まれ、"$@" といったパターンや、"status":"resolved_model" といった文字列が見られるケースも報告されています。

ホスト側での痕跡(IOCの例)

アプリケーションサーバ側で確認されやすい痕跡として、AWSは次のような挙動を挙げています。

  • Node.js/Reactアプリのプロセスから突然以下のようなコマンドが実行される

    • whoami, id, uname などの偵察コマンド

    • /etc/passwd の読み取り

    • /tmp/ 配下へのテストファイル書き込み(例:/tmp/pwned.txt

  • 通常は出現しない別プロセスが、アプリケーションプロセスから派生して起動する

  • 特定IPアドレスからの大量・連続リクエスト
    (例:206[.]237.3.150(Earth Lamia関連)、45[.]77.33.136(Jackpot Panda関連)ほか)

こうした痕跡がある場合、単なるスキャンではなく、実際にRCEの試行が行われた可能性が高く、早急なインシデント対応が必要です。

AWSによる防御レイヤーと限界

AWS側では、インフラレベルで複数の防御策をすでに展開済みとしています。

  • Sonaris Active Defense

    • AWS全体のトラフィックから毎分数百億件規模のイベントを分析し、MadPotのハニーポット情報と組み合わせて悪性スキャンを自動的に検知・制限。

  • AWS WAF マネージドルールの更新

    • AWSManagedRulesKnownBadInputsRuleSet の最新版(v1.24以上)でReact2Shell関連のパターンに対応。

  • AWS Security Bulletin

    • React/Next.js 環境向けに、一時的な盾となるカスタムWAFルール例や、パッチ対象バージョン一覧を公開。

ただし、AWSが強調しているのは 「WAFやネットワーク防御はあくまで補助であり、根本対策はアプリケーション側のアップデート」 という点です。

  • AWSマネージドサービス(各種PaaS/SaaS)は影響を受けないよう対応済み。

  • しかし、自社でReact/Next.jsアプリをEC2やコンテナ上にデプロイしている顧客は、アプリケーション自体を迅速に更新しない限り、安全とは言えません。

react2shell-scanner:React2Shell/CVE-2025-66478向け検知ツール

こうした状況を受け、攻撃側だけでなく、防御側のコミュニティも素早く動いています。
セキュリティ企業 Assetnote のリサーチチームは、React2Shellおよび関連するNext.js脆弱性(CVE-2025-66478)を検知するためのコマンドラインツール「react2shell-scanner」 をGitHubで公開しました。

ツールの基本機能

react2shell-scanner はPython製のスキャナで、指定したURLやホスト一覧に対して、以下のような手順で脆弱性の有無を確認します。

  • React Server Componentsを前提とするエンドポイントに細工した multipart POST を送信

  • ペイロード側では、41 * 271 = 11111 という簡単な計算をサーバ側で実行させ、その結果がレスポンスの特定ヘッダ(X-Action-Redirect など)に反映されるかどうかでRCE成功を判断

  • まずルートパス(/)を調べ、必要に応じて同一ホスト内のリダイレクト先(例://en/)も自動追跡して検査

このため、短時間で複数のNext.jsサイトに対し、自動的にReact2Shell/CVE-2025-66478の影響有無を洗い出すことができます。

「安全モード」やWAFバイパス、Windowsモードにも対応

本ツールは、実際の運用に即したさまざまなオプションも備えています。

  • 安全チェックモード(--safe-check

    • サーバ側で任意コードを実行させず、特定のエラー応答やステータスコードなど「副次的な挙動」から間接的に脆弱性を判定。

  • WAF回避オプション(--waf-bypass

    • リクエストボディ先頭に大量のダミーデータを付与し、ボディの一部分しか検査しないWAFをすり抜けやすくするテクニックを実装。

    • サイズはオプションで調整可能。

  • Vercel WAF向け専用バイパス(--vercel-waf-bypass

    • VercelのWAFルールを回避するための専用ペイロード構造を用いるモード。

  • Windowsターゲット対応(--windows

    • LinuxシェルではなくPowerShellコマンドで検証を行い、Windows上のNext.js環境にも対応。

また、複数スレッドでの並列スキャン、カスタムヘッダ指定、結果のJSON保存など、実務運用に便利な機能も備えています。

当然ながら、こうしたスキャナの利用は自社システムや正式に許可を得た環境に限るべきであり、第三者サイトに対する無断スキャンは不正アクセス行為になりうる点に注意が必要です。

開発・運用担当者が今すぐ確認すべきポイント

React/Next.jsアプリを扱う組織は、次の観点で早急にセルフチェックを行うことが推奨されます。

  1. バージョン確認とアップデート

    • 自社アプリが React 19.x や Next.js 15/16 + App Router を利用しているかを確認。

    • ReactチームおよびVercelが示す安全なバージョンにアップデート。

  2. 公開エンドポイントのスキャン

    • 自社環境に限定して、react2shell-scanner 等のツールで公開URLを洗い出し・検査。

    • CI/CD や定期診断に組み込むことも検討。

  3. ログの精査

    • next-actionrsc-action-id ヘッダを含むPOSTリクエストの有無を確認。

    • アプリサーバ上で不審なコマンド実行やファイル作成、未知のプロセス発生がないかチェック。

  4. WAF/FWルールの見直し

    • AWS WAFなどを利用している場合、最新のマネージドルールを適用。

    • AWSが公開しているカスタムルール例も参考にする。

  5. インシデント対応体制の準備

    • 侵害が疑われる場合の連絡先・手順を事前に整理し、クラウドベンダやセキュリティベンダと連携できる体制を整備。

    • AWS利用企業は、疑いがあればただちにAWSサポートへの問い合わせを検討。

参照