Aikido

React & Next.js DoSの脆弱性 (CVE-2025-55184): React2Shell後に修正すべき点

執筆者
マッケンジー・ジャクソン

主要なポイント

  • CVE-2025-55184は、React Server Components(RSC)におけるサービス拒否(DoS)の脆弱性であり、リモートコード実行の欠陥ではありません。

  • この問題はReact2Shell(CVE-2025-55182)と密接に関連しており、同じReact Flightプロトコルの逆シリアル化レイヤーに由来します。

  • AikidoはすでにCVE-2025-55184を検出し、チームが実際に露出しているか、完全に修正されているかを確認するのに役立つアプリ内チェックリストを提供します。

  • 特別に細工されたリクエストは、無限ループまたはハング状態を引き起こし、影響を受けるサーバーを応答不能にする可能性があります。

  • 不完全な初期パッチが後続の脆弱性CVE-2025-67779につながり、一部のチームは再度アップグレードする必要があります。

  • 影響を受けるほとんどのアプリケーションは、Next.js App Routerまたはその他のRSC対応フレームワークを使用しています。

TL;DR: まだリスクに晒されていますか?

CVE-2025-55182 (React2Shell)に対処するためだけにアップグレードした場合でも、まだ脆弱性が残っている可能性があります。

CVE-2025-55184は隣接するRSCコードパスに影響を与え、コード実行を伴わなくても攻撃者がアプリケーションをオフラインにする可能性があります。後続のCVE-2025-67779の修正を含む、最新のパッチが適用されたReactおよびNext.jsバージョンを実行していることを確認してください。

修正ステップ

1. ReactとRSCパッケージをアップグレードする

Flightプロトコルの逆シリアル化ロジックにおけるRCEとDoSの両方の問題に完全に対処する、最新のパッチが適用されたReactリリースを実行していることを確認してください。

2. Next.jsおよびRSCフレームワークのアップグレード

  • Next.jsユーザーは、自身のメジャーバージョンラインにおける最新のパッチ適用済みリリースにアップグレードする必要があります。

  • App RouterまたはServer Functionsを使用するアプリケーションは、最も露出しています。

  • React2Shellの初期パッチには不完全なものもあったため、それだけに頼るのは避けてください。

3. 後続CVEの再スキャン

CVE-2025-55184の初期修正が不完全であったため、以下を確認する必要があります。

  • CVE-2025-67779も修正されます

  • 脆弱な推移的RSC依存関係は残っていません。

4. Aikidoで検証する

検証のために、新しいスキャンを実行します。

  • 脆弱なRSCパッケージは完全に削除されます

  • 影響を受けるシリアライゼーションパスは到達不能になりました。

  • アップグレードにより、依存関係フラグだけでなく、ランタイムの露出が実際に排除されます。

背景

12月3日、Reactエコシステムは、React Server Componentsにおける重大なリモートコード実行脆弱性CVE-2025-55182、通称React2Shellによって揺さぶられました。以前のブログでは、RSCの「Flight」プロトコルにおける安全でない逆シリアル化が、認証されていない攻撃者に細工されたHTTPリクエストを送信させ、デフォルトのReact/Next.jsアプリで完全なサーバー乗っ取りにつながる可能性について探りました。

その後、業界が55182に対するパッチ適用と保護に急ぐ中で、隣接するコードパスにさらなる脆弱性が発見され、新たなセキュリティアドバイザリとCVEにつながりました。その一つがCVE-2025-55184であり、React2Shellのようなリモートコード実行の欠陥ではないものの、可用性に対する深刻なリスクを表しています。 

深掘り

CVE-2025-55184 とは何ですか?

CVE-2025-55184は、React Server Componentsランタイムにおける特別に細工された入力の安全でない処理によって引き起こされるサービス拒否の脆弱性です。

攻撃者は、以下のような不正なRSCリクエストを送信できます:

  • 無限ループをトリガーするか、または

  • サーバーをハング状態に強制します

トリガーされると、サーバーは再起動されるまで正当なトラフィックに応答しなくなる可能性があります。

それがReact2Shellとどのように関連するか

これらの脆弱性は、独立したバグではありません。

  • 両者ともにReact Flightプロトコルに由来しており、クライアントからの構造化データがサーバーサイドのレンダリングと実行に影響を与えることを可能にします。

  • CVE-2025-55184は、研究者が隣接する逆シリアル化ロジックを調査した際に、React2Shellに続く監査中に発見されました。

  • 追加の関連問題が発生しました。以下を含みます。


    • CVE-2025-55183(ソースコードの露出)

    • CVE-2025-67779 (55184に対する不完全な修正)

このパターンは、RSCのシリアライゼーション設計における体系的なリスクサーフェスを浮き彫りにします。

なぜ可用性攻撃は依然として重要なのか

React2Shellとは異なり:

  • 攻撃者はシェルアクセスを取得しません。

  • 任意のコード実行は発生しません

しかし:

  • サーバーはリモートでオフラインにできます。

  • 攻撃は認証なしで行われます。

  • 繰り返されるエクスプロイトは、サービス停止、パフォーマンス低下、または強制再起動を引き起こす可能性があります。

多くのチームにとって、ダウンタイムは侵害と同じくらい損害を与えます。

影響を受けるのは誰ですか?

アプリケーションが以下の条件に該当する場合、影響を受ける可能性があります:

  • React Server Componentsを使用します。

  • Next.js App Routerを実行します。

  • サーバー機能またはRSCエンドポイントを公開

  • 12月のReact/Next.jsアドバイザリ以降、完全にアップグレードされていません。

明示的にサーバーロジックを使用しない場合でも、フレームワークのデフォルト設定は依然として脆弱なコードパスを露呈させる可能性があります。

深刻度

  • CVEスコア: 高(可用性への影響)

  • 影響: サービス拒否

  • 攻撃ベクトル: リモート、認証なし

  • エクスプロイト可能性:低複雑度

タイムライン

  • 11月下旬: React2Shell (CVE-2025-55182) が開示されました。

  • 12月上旬:追加のRSCの脆弱性を発見

  • 12月3日~5日:CVE-2025-55184が開示され、パッチが適用されました

  • その後数日:不完全な修正が特定 → CVE-2025-67779が発行されました。

今すぐコードベースをスキャンします。

Aikidoは、CVE-2025-55184、CVE-2025-67779、およびRSC関連のより広範な脆弱性ファミリーを追跡します。

リポジトリを以下に接続します:

  • 脆弱性のあるReactおよびNext.jsのバージョンを特定します

  • リスクのあるRSCパスが実際に到達可能であるかを判断します。

  • アップグレードによって露出が完全に解消されることを検証します。

Aikidoで無料スキャンを開始しましょう。

共有:

https://www.aikido.dev/blog/react-next-js-dos-vulnerability-cve-2025-55184

脅威ニュースをサブスクライブ

本日より無料で開始いただけます。

無料で始める
CC不要
4.7/5
誤検知にうんざりしていませんか?
10万人以上のユーザーと同様に Aikido をお試しください。
今すぐ始める
パーソナライズされたウォークスルーを受ける

10万以上のチームに信頼されています

今すぐ予約
アプリをスキャンして IDORs と実際の攻撃パスを検出します

10万以上のチームに信頼されています

スキャンを開始
AI がどのようにアプリをペンテストするかをご覧ください

10万以上のチームに信頼されています

テストを開始

今すぐ、安全な環境へ。

コード、クラウド、ランタイムを1つの中央システムでセキュアに。
脆弱性を迅速に発見し、自動的に修正。

クレジットカードは不要です | スキャン結果は32秒で表示されます。