piyolog

piyokangoの備忘録です。セキュリティの出来事を中心にまとめています。このサイトはGoogle Analyticsを利用しています。

React Server Componentsの脆弱性 CVE-2025-55182(React2Shell)についてまとめてみた。

2025年12月3日、JavaScriptライブラリ Reactを開発するThe React Teamは、React Server Componentsに深刻な脆弱性が確認されたとして脆弱性情報を公開し、修正版への更新を案内しました。ここでは関連する情報をまとめます。

どんな脆弱性が確認されたの?

  • React Server Function のFlightプロトコルにおいて、信頼できないデータのデシリアライズに関する脆弱性 が確認された。この脆弱性は認証不要でリモートから悪用が可能であり、リモートコード実行(RCE) に至る恐れがある。深刻度は 緊急(CVSS 基本値 10.0) と評価されており、開発元は利用者に対して速やかな対応を呼びかけている。
  • React はエンタープライズ環境を含む幅広いシステムで採用されており、日本国内でも React を用いたシステムを公開しているホストが多数存在する。開発元やサービス提供元、保守事業者任せにせず、自組織の環境に影響がないか能動的に確認することが重要。
  • すでに、影響を受けるサーバー上のファイルの読書きを目的とするものなど、関連する攻撃活動も確認されており、米国 CISA は 12 月 5 日時点で本脆弱性を KEV カタログに登録している。インターネット上に公開されているシステムが影響対象であった場合、侵害有無の確認も合わせて実施 する必要がある。
脆弱性概要
CVE CVE-2025-55182
CVSS(基本値) 10.0 (Facebook.inc評価)
CWE CWE-502(信頼できないデシリアライゼーション)
悪用時影響 リモートコード実行(事前認証不要)
悪用状況 実証コードの公開、および既に悪用報告あり

影響を受ける対象は?

特定のバージョンのReact パッケージやこれらを使用するフレームワーク、ソフトウェア、システムが影響を受ける可能性がある。なお、システム上でReact Server Components をサポートしていることが条件であって、明示的にReact Server Function を使用(実装)しているかにかかわらず影響を受ける。また特定の設定に依存せず、デフォルトの設定で構築された環境(create-next-appで作成され本番用にビルドされた標準的な Next.jsアプリケーション等)が影響を受ける。

対象製品 対象バージョン 修正が行われたバージョン
react-server-dom-webpack
react-server-dom-parcel
react-server-dom-turbopack
19.0、19.1.0、19.1.1、19.2.0 19.0.1、19.1.2、19.2.1
Next.js 14.3.0-canary.77以降、15系、16系 15.0.5、15.1.9、15.2.6、15.3.6、15.4.8、15.5.7、16.0.7、15.6.0-canary.58、16.1.0-canary.12+
waku 0.27.2以前 0.27.3
rwsdk (RedwoodSDK) 1.0.0-beta35以前 1.0.0-beta36
react-router package.jsonに依存関係のあるunstable RSC API使用時 最新版へ更新
Parcel N/A 2.16.2
Vite RSC N/A 0.5.3
Expo SDK 53系、54系、Canary版 [email protected][email protected][email protected][email protected][email protected][email protected]
Dify N/A 1.10.1-vix.1
  • アプリ内において、React コードがサーバーを使用していない場合、RCSをサポートするフレームワークやバンドラー、バンドラープラグインを使用していない場合、これらは影響を受けない。
  • Next.jsは13系、14系、Pages Routerアプリケーション、Edgeランタイムは影響を受けない。
影響を受ける可能性のあるホストのマップ(Shadow Server調査)
脆弱性の対応方法
  1. 自組織が React Server Componentsまたは影響対象のフレームワークを利用しているか確認する。
  2. 速やかに修正版へ更新する。 不明な場合は提供元・保守ベンダーへ確認する。
  3. 公開システムで対応が遅れた場合、すでに侵害されている可能性を考慮し調査を行う。
  4. すぐに更新が困難で第三者アクセスを制限できる場合、一時的なアクセス制限 を検討する。
影響を受けるかどうかの確認方法
  • システム内の情報を参照できる場合は、npm listnpm auditコマンドを使用して影響対象のパッケージの利用がないかを確認する。
  • shodan など検索サービスで、自社 IP が React などのパッケージ利用を示して公開されていないか確認する。
  • 影響対象のライブラリの利用があるかをシステム保守を行っているベンダなどへ確認する。
脆弱性悪用の影響を既に受けているかの確認方法
  • この脆弱性に対応したフィルタリングが導入されている場合、このフィルタリングに適合する不審なアクセスが既に発生していないか。
  • 詳細なアクセス状況(ログ)を確認できる場合は、以下の侵害の兆候に合致するようなアクセスが生じていないか。

AWSは侵害の兆候を確認する情報として以下を公開している。
① ネットワーク上の痕跡

  • next-actionまたはrsc-action-idヘッダーを持つアプリケーションエンドポイントへのHTTP POST リクエスト
  • $@パターンを含むRequest Body
  • "status":"resolved_model"パターンを含むRequest Body

② ホスト上の痕跡

  • 偵察で使用されるコマンドの予期せぬ実行(whoami,id,uname
  • パスワードファイルの読み取り(/etc/passwd
  • 不審なファイルの書き込み(/tmp/directoryなど、一例としてpwned.txt)
  • Node.js/React アプリケーションプロセスにより生成された新しいプロセスの有無

悪用に関する動きは?

  • 12月3日の脆弱性情報公開後数時間以内に関連する活動が観測されている。AWSは自社の観測情報から、中国系の国家支援関与の脅威アクター(Earth Lamia、Jackpot Panda)が積極的に悪用をし始めていると報告している。また、無差別のスキャン活動も生じており、GreyNoiseは複数のIPアドレスから機械的なスキャンが行われていると報告している。
  • 米国CISAは12月5日に既知の悪用が確認されている脆弱性カタログにこの脆弱性を登録した。これは14日以内の対応(修正、緩和策の適用)を米国政府関係機関に求めるもの。
  • この脆弱性を実証する方法として、複数のPoCやエクスプロイトコードがインターネット上に出回っている状況である。これら実証手段について当初こそ不完全であったり、疑似的なコードも確認されていたが、Rapid7やElasticのリサーチャーにより、脆弱性実証の有効性が確認された実働するコードも公開されている。
  • 観測報告のある悪用事例として、機械的なスキャンだけでなく、マニュアルで侵入を試みるケースも報告が出ている。またこれまで報告のあった外部からのコマンド実行としては、システム権限を確認するもの(サーバ上でwhoamiやidを行う)やシステムの改ざん検証(/tmp/pwned.txtというファイルを作成し書き込み権限をテスト)、認証情報の窃取を狙ったもの(/etc/passwdを読み取る)などがある。
  • さらに攻撃後に行われる動きとして、サーバー内にあるクラウドサービスの認証情報(AWSのクレデンシャルなど)の窃取やバックドアの展開(Sliverなど)、暗号通貨マイニングマルウェア(XMRig)やボットマルウェアの展開など報告されている。Wizは12月5日以降この脆弱性を原因とする被害事例を少なくとも6件確認している。日本国内においても多数の攻撃を検知しているとしてLACが報告している。

関連タイムライン

日時 出来事
2025年11月29日 Lachlan Davidson氏がMeta Bug Bountyを通じて脆弱性情報を報告。
2025年11月30日 Metaのセキュリティ研究者が情報を確認し、Reactの開発チームと修正対応を開始。
2025年12月1日 Reactの修正版の開発が完了し、影響を受けるホスティングプロバイダ、オープンソースプロジェクトと協力し修正版の展開を開始。
2025年12月3日 npmで修正版を公開するとともに、脆弱性情報も公開。
2025年12月4日 CVE-2025-55182の実証コードに関する情報が出回り始める。
2025年12月5日 米国CISAがCVE-2025-55182をKEVに登録。

参考情報

公式セキュリティ情報

更新履歴

  • 2025年12月8日 AM 新規作成
  • 2025年12月9日 PM 続報追記