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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2025-55182-React2Shell — React2Shell(CVE-2025-55182)は、React Server Components (RSC) を使用する最新のWebフレームワークにおける重大なリモートコード実行(RCE)脆弱性を実証する概念実証(PoC)エクスプロイトです。 | Kitploit
ツール/GitHubGitHub/rsch-io/cve-2025-55182-react2shell
ペイロード生成エクスプロイトウェブアプリケーション悪用WAFバイパスペネトレーションテスト学習と教育レッドチーミング
GitHubrsch-io/cve-2025-55182-react2shell

CVE-2025-55182-React2Shell

人気

すべて見る →

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

すべてのツールを探索

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

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

React2Shell(CVE-2025-55182)は、React Server Components (RSC) を使用する最新のWebフレームワークにおける重大なリモートコード実行(RCE)脆弱性を実証する概念実証(PoC)エクスプロイトです。

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

React2Shell

Language CVE CVSS Target License

React2Shell は、React Server Components(RSC)を利用する最新のWebフレームワークにおけるCRITICALなリモートコード実行(RCE)の脆弱性を示す概念実証(PoC)エクスプロイトです。

このPoCは、CVE-2025-55182(CVSS 10.0)を対象としています。この脆弱性により、認証されていないリモートの攻撃者が、React Server Components の実装内での安全でないデシリアライゼーションを介して任意のシステムコマンドを実行できます。


🔍 脆弱性の概要

React2Shell は、React Server Components が**再水和(rehydration)**フェーズ中に信頼できない入力を処理する際の欠陥を悪用します。

この脆弱性は、コンポーネントツリーのシリアライズおよびデシリアライズを担う基盤となる react-server-dom-* パッケージに起因します。


💥 影響

影響を受けるバージョンの React Server Components を使用するアプリケーションは、悪意のあるペイロードを処理することで、サーバープロセスの権限で**リモートコード実行(RCE)**につながる可能性があります。

攻撃者は以下を実行できます:

  • 任意のシステムコマンドの実行
  • 内部インフラストラクチャへの侵入(ピボット)
  • 機密データの窃取
  • サービス可用性の妨害

デプロイ環境が下記の脆弱なバージョンのいずれかに該当し、RSC エンドポイントを公開している場合、あなたは**vulnerable**(脆弱)です。


📦 影響を受けるコンポーネント

この脆弱性は、以下のバージョン 19.0.0、19.1.0、19.1.1、19.2.0 に存在します:

  • react-server-dom-parcel
  • react-server-dom-webpack
  • react-server-dom-turbopack

🎯 影響を受けるフレームワークとバージョン

これらのパッケージは、複数のフレームワークにバンドルされています。例として以下が挙げられますが、これらに限定されません:

  • Next.js
    • バージョン 15.0.0 から 16.0.6
    • 14.3.0-canary.76 より後の Canary バージョン
  • RSC(v19.0.0–19.2.0)を使用するその他のフレームワーク。例:
    • Vite
    • Parcel
    • React Router
    • RedwoodSDK
    • Waku

脆弱な React Server Components 実装を組み込んでいるフレームワークはすべて、影響を受ける可能性があります。


🛠 機能と特徴

React2Shell には、一般的な Node.js の制限や WAF ルールを回避するために設計されたモジュール式ペイロードジェネレーターが含まれています:

  • 標準インジェクション(Standard Injection)

    • process.mainModule.require を使用
    • デフォルトの Next.js / Webpack バンドルを対象
  • 非同期バイパス(Async Bypass)

    • require が利用できない厳格な ESM 環境向けに、動的 import() を使用
  • 難読化(Obfuscation)

    • 機密文字列(例: child_process)を16進バッファにエンコードし、単純な WAF シグネチャを回避
  • モジュールフォールバック(Module Fallback)

    • module.createRequire を活用して、代替コンテキストでモジュールをロード
  • ユニバーサルターゲティング(Universal Targeting)

    • 設定可能なエンドポイント:
      • Next.js: ルート /
      • Waku: /RSC/foo.txt などの RSC エンドポイント

🚀 インストール

前提条件

  • Node.js v18.0.0 以上

セットアップ

root@kitploit:~
git clone https://github.com/rsch-io/CVE-2025-55182-React2Shell.git
cd CVE-2025-55182-React2Shell

npm install form-data

📖 使用方法

React2Shell は、独自のテストスクリプトにモジュールとしてインポートして使用することを想定しています。

1. 基本的なエクスプロイト(Next.js ターゲット)

exploit.js という名前のファイルを作成します:

root@kitploit:~
const React2Shell = require('./src/react2shell');

// Initialize with target base URL
const target = new React2Shell('http://localhost:3000');

// Execute command using the "standard" strategy
// Arguments: execute(command, endpoint, strategy)
target.execute('whoami', '/', 'standard');

次に実行します:

root@kitploit:~
node exploit.js

注意

  • endpoint は、RSC が有効なルート(例: /、/RSC/foo.txt、またはフレームワーク固有の RSC エンドポイント)に設定してください。
  • strategy は変更できます(例: standard、async、obfuscated、または react2shell に実装されている他のストラテジー)。

2. Waku / カスタムエンドポイントをターゲットにする

Waku やその他のフレームワークは、多くの場合、特定のルートで RSC 処理を公開しています:

root@kitploit:~
// Target a Waku application
// Note: Use 'async' strategy as Waku often runs in strict ESM
target.execute('ls -la', '/RSC/foo.txt', 'async');

3. WAF 回避モード

サーバーが child_process を含む文字列をブロックする場合は、obfuscated ストラテジーを使用できます:

root@kitploit:~
target.execute('cat /etc/passwd', '/', 'obfuscated');

🛡️ 解決策と修復

直ちに更新してください。 更新版の React および影響を受ける下流フレームワークのリリースには、意図しない動作を防ぐためのユーザー入力処理の強化が含まれています。
すべてのユーザーは、できるだけ早くパッチ適用済みバージョンへアップグレードしてください。

✅ 修正済みバージョン一覧

以下は、パッチ適用済みバージョンの最終的なリストです。デプロイ中のバージョンがこれらより低い場合、あなたは**vulnerable**(脆弱)です。

Next.js 14 ユーザーへの警告
Next.js 14.3.0-canary.77 以降の Canary リリースを使用している場合、あなたは**vulnerable**(脆弱)です。
この脆弱性はそれらの Canary ビルドに含まれる実験的な RSC 実装に影響するため、直ちに最新の安定版 14.x リリースへダウングレードする必要があります。


⚠️ 免責事項

このプロジェクトは、教育目的および許可されたセキュリティテストのみを目的として提供されています。
明示的な許可なしにこのツールをシステムに対して使用することは、違法かつ非倫理的です。

著者は、このツールによって引き起こされた誤用や損害について一切の責任を負いません。


📄 ライセンス

このプロジェクトはMIT Licenseの下でライセンスされています。詳細については、LICENSE ファイルを参照してください。

ツールをダウンロード
メトリクス詳細
深刻度CRITICAL (10.0 / 10.0)
ベクトルCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
攻撃経路Network (Remote)
ユーザー操作None
ソフトウェア / パッケージブランチ / タイプ🛡️ 修正済み / 安全なバージョン
ReactStable19.0.1, 19.1.2, 19.2.1
Next.jsv15 (Stable)15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7
Next.jsv16 (Stable)16.0.7
Next.jsCanary15.6.0-canary.58