Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2025-55182 — react CVE-2025-55182 | Kitploit
ツール/GitHubGitHub/tanvirahmedcs/cve-2025-55182
脆弱性スキャナーウェブ脆弱性スキャナー脆弱性分析エクスプロイトウェブアプリケーション悪用ペネトレーションテスト
GitHubtanvirahmedcs/cve-2025-55182

CVE-2025-55182

react CVE-2025-55182

リポジトリを見る
2ヶ月前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

CVE-2025-55182 — React Server Components の未認証 RCE

重大度: 緊急 — CVSS 10.0
CWE: CWE-502 (信頼されないデータのデシリアライゼーション)
ベンダー: Meta (Facebook)
開示日: 2025年12月3日


概要

CVE-2025-55182 は、React Server Components (RSC) における最大深刻度の未認証リモートコード実行 (RCE) 脆弱性であり、React2Shell と呼ばれています。この欠陥は、React が Flight プロトコル を介して React Server Function エンドポイントに送信されたペイロードをデコードする方法に存在します。攻撃者は、巧妙に細工された単一の HTTP POST リクエストを脆弱なサーバーに送信するだけで、認証情報やユーザー操作を必要とせずに任意のコードを実行できます。

明示的な Server Function エンドポイントを公開していないアプリケーションでも、React Server Components をサポートしている場合は脆弱です。


影響を受けるパッケージとバージョン

パッケージ影響を受けるバージョンパッチ適用済みバージョン
react-server-dom-webpack19.0.0, 19.1.0, 19.1.1, 19.2.0≥ 19.0.1 / 19.1.2 / 19.2.1
react-server-dom-parcel19.0.0, 19.1.0, 19.1.1, 19.2.0≥ 19.0.1 / 19.1.2 / 19.2.1
react-server-dom-turbopack19.0.0, 19.1.0, 19.1.1, 19.2.0≥ 19.0.1 / 19.1.2 / 19.2.1

影響を受けるフレームワーク (脆弱な React パッケージを使用している場合): Next.js 15.x / 16.x (App Router)、React Router、Waku、RedwoodSDK、Parcel RSC、Vite RSC プラグイン。


CVSS v3.1 の内訳

ベクター文字列: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H


脆弱性の仕組み

React Server Components は、Flight プロトコル と呼ばれるバイナリワイヤフォーマットを使用して、コンポーネントツリーをサーバーからクライアントへストリーミングします。同じプロトコルが Server Functions (旧 Server Actions) も処理します。これは、ブラウザからシリアライズされた引数を受け取る呼び出し可能なエンドポイントです。

脆弱性は デシリアライザー にあります。React が Flight ペイロードを処理する際、任意のサーバーサイドオブジェクトをインスタンス化するよう誘導される可能性があり、完全な RCE につながります。RSC が有効な場合、Flight エンドポイントはデフォルトで公開され、プロトコルレベルに認証ゲートが存在しないため、悪用にはサーバーへのネットワークアクセスのみが必要です。


Nuclei テンプレート

付属のテンプレート CVE-2025-55182.yaml は、3 つの相補的な検出方法を使用します。

リクエスト 1 — 汎用 RSC Flight エンドポイントプローブ

最小限の POST を Content-Type: text/x-component でルートパスに送信します。脆弱な (または到達可能な) RSC サーバーは、同じコンテンツタイプと、行が英数字の行 ID とコロン (例: 0:、1:) または React 参照シジル ($L、$S、$I、$@) で始まる Flight ストリームボディで応答します。

root@kitploit:~
POST / HTTP/1.1
Content-Type: text/x-component
Accept: text/x-component, */*

一致条件: HTTP 200 + text/x-component ヘッダー + ボディ内の Flight ストリーム正規表現。

リクエスト 2 — Next.js App Router RSC プローブ

Next.js は、RSC: 1 ヘッダーと ?_rsc= クエリパラメータを介して RSC リクエストを通知します。このリクエストはブラウザのプリフェッチを模倣して、App Router の Flight エンドポイントが到達可能であることを確認します。

root@kitploit:~
GET /?_rsc=1 HTTP/1.1
Accept: text/x-component
RSC: 1
Next-Router-State-Tree: %5B%22%22%2C%7B%7D%5D

一致条件: HTTP 200 + text/x-component ヘッダー。

リクエスト 3 — Server Function (Action) エンドポイントプローブ

最小限の不正な Flight ペイロードを Next-Action ヘッダー (Server Functions を呼び出すために使用されるメカニズム) とともに送信します。脆弱なサーバーはペイロードのデシリアライズを試みます。RSC 固有のヘッダーを含むエラーレスポンスであっても、エンドポイントの存在が確認されます。

root@kitploit:~
POST / HTTP/1.1
Content-Type: text/x-component
Next-Action: 0000000000000000000000000000000000000000

一致条件: HTTP 200/400/500 + text/x-component または x-action-revalidated ヘッダー。

ファイルベース (パッシブ) 検出

ローカルの *.json ファイル (例: package-lock.json、yarn.lock) をスキャンし、脆弱なパッケージ名と 19.0.0、19.1.0、19.1.1、または 19.2.0 に一致するバージョン正規表現を組み合わせて検出します。ネットワークトラフィックを送信せずにリポジトリや CI パイプラインを監査するのに役立ちます。


使用方法

前提条件

  • Nuclei v3.x 以降
root@kitploit:~
# Install / update Nuclei
go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest

アクティブスキャン — 単一ターゲット

root@kitploit:~
nuclei -target CVE-2025-55182.yaml -u https://target.example.com

アクティブスキャン — ターゲットのリスト

root@kitploit:~
nuclei -target CVE-2025-55182.yaml -l targets.txt

パッシブスキャン — ローカルプロジェクトディレクトリ

root@kitploit:~
nuclei -target CVE-2025-55182.yaml -target ./path/to/project

JSON レポート付きの冗長出力

root@kitploit:~
nuclei -target CVE-2025-55182.yaml -u https://target.example.com -v -je results.json

レート制限付きスキャン (本番ターゲットに推奨)

root@kitploit:~
nuclei -target CVE-2025-55182.yaml -u https://target.example.com -rl 10 -timeout 10

修復策

パッチ適用済みバージョンに直ちにアップグレード してください:

root@kitploit:~
# npm
npm install react-server-dom-webpack@latest

# yarn
yarn upgrade react-server-dom-webpack react-server-dom-parcel react-server-dom-turbopack

# pnpm
pnpm update react-server-dom-webpack react-server-dom-parcel react-server-dom-turbopack

ブランチごとの最小安全バージョン:

ブランチ最小安全バージョン
19.0.x19.0.1
19.1.x19.1.2
19.2.x19.2.1

一時的な緩和策 (直ちにアップグレードできない場合):

  • WAF またはリバースプロキシ層で RSC/Flight エンドポイントへの HTTP POST リクエストをブロックする。
  • パッチを適用できるまで React Server Components を完全に無効にする。
  • 受信 POST リクエストの text/x-component コンテンツタイプを対象とした WAF ルールを展開する (この CVE に関する Google Cloud Armor ルールが公開されています)。

注意事項と制限事項

  • HTTP プローブの陽性一致は Flight エンドポイントが到達可能 であることを確認し、これは脆弱性の強力な指標です。正確なバージョンの確認には、package-lock.json、node_modules、または SBOM の検査が必要です。
  • このテンプレートは 兵器化されたペイロードを送信しません。検出のみを目的としており、本番システムに対して実行しても安全です。
  • React Server Components を使用しないアプリケーション (クライアントサイドのみの React アプリ) は 影響を受けません。

参照

  • React 公式アドバイザリ — react.dev
  • GitHub セキュリティアドバイザリ — GHSA-fv66-9v8q-g76r
  • NVD — CVE-2025-55182
  • Zscaler ThreatLabz — React2Shell
  • Google Cloud Blog — React2Shell を悪用する脅威アクター
  • Palo Alto Unit 42 — CVE-2025-55182 の悪用

免責事項

このテンプレートは、許可されたセキュリティテストおよび脆弱性評価のみを目的としています。所有していない、または明示的な書面によるテスト許可がないシステムに対して実行することは、違法となる可能性があります。著者は誤用に対するいかなる責任も負いません。

ツールをダウンロード
メトリック値
攻撃ベクトルネットワーク
攻撃の複雑さ低
必要な権限なし
ユーザー操作なし
スコープ変更あり
機密性高
完全性高
可用性高
総合スコア10.0 (緊急)