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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
cve-2025-55182-poc — CVE-2025-55182(「React2Shell」)の概念実証。React Server Componentsの安全でない逆シリアル化を介したリモートコード実行(RCE)を実証する完全にDocker化された環境。Vanilla React(Express)とNext.jsの両方の脆弱なターゲットと、カスタムPythonエクスプロイトスクリプトが含まれます。 | Kitploit
ツール/GitHubGitHub/trax69/cve-2025-55182-poc
脆弱性分析エクスプロイトウェブアプリケーション悪用CTFペネトレーションテスト学習と教育ペイロード開発バイナリエクスプロイトラボと実践
GitHubtrax69/cve-2025-55182-poc

cve-2025-55182-poc

CVE-2025-55182(「React2Shell」)の概念実証。React Server Componentsの安全でない逆シリアル化を介したリモートコード実行(RCE)を実証する完全にDocker化された環境。Vanilla React(Express)とNext.jsの両方の脆弱なターゲットと、カスタムPythonエクスプロイトスクリプトが含まれます。

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

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2025-55182 (React2Shell) - 学術的概念実証

⚠️ 免責事項: 教育目的のみ このリポジトリには、重大な脆弱性(CVSS 10.0)に対する機能的なエクスプロイトコードが含まれています。これは、厳密に学術研究、セキュリティ分析、および教育目的を意図しています。自分が所有していない、または明示的なテスト許可を得ていないシステムに対してこのコードを使用しないでください。著者は、いかなる誤用に対しても責任を負いません。

📄 概要

このプロジェクトは、React Server Components (RSC) アーキテクチャに存在する重大なリモートコード実行(RCE)脆弱性である CVE-2025-55182 を文書化し、実証します。しばしば「React2Shell」と呼ばれるこの欠陥により、認証されていないリモート攻撃者が、react-server で使用される「Flight」シリアル化プロトコルを操作することで、サーバー上で任意のコードを実行できるようになります。

この実験室は、制御された隔離されたDocker環境を提供し、2つの異なるシナリオで脆弱性を分析します。

  1. Vanilla RSC: react-server-dom-webpack と Express を使用した生の実装。
  2. Next.js: 脆弱なバージョンのNext.js App Routerを使用した標準的なデプロイメント。

🏗️ アーキテクチャ

環境は Docker Compose で構成され、プライベート内部ネットワーク(research-net)で接続された3つの隔離されたコンテナで構成されています。

サービスコンテキスト説明脆弱なコンポーネント
vanilla-targetvanilla-rsc/RSCプロトコルを手動で実装した最小限のExpressサーバー。[email protected]
nextjs-targetnextjs-app/App Routerを使用した標準のNext.jsアプリケーション。[email protected] (impl. react-server)
attackerexploit/エクスプロイトスクリプトを含むPython環境。該当なし

技術的な根本原因

この脆弱性は、Flightプロトコルパーサー内の**安全でないデシリアライゼーション(CWE-502)**に起因します。細工されたマルチパートペイロード(「偽の」チャンク構造を含む)を注入することにより、攻撃者は以下を実行できます。

  1. プロトタイプを汚染する: プロミスライクオブジェクトの .then プロパティを上書きする。
  2. ガジェットチェーンをトリガーする: サーバーに内部ガジェットチェーン($B blobを参照)を強制的にトラバースさせる。
  3. コードを実行する: Function() コンストラクタに到達して任意のJavaScript(例:child_process.execSync)をコンパイルして実行する。

🚀 はじめに

前提条件

  • Docker & Docker Compose
  • Git

インストールとデプロイ

  1. リポジトリをクローンします。

    root@kitploit:~
    git clone https://github.com/trax69/cve-2025-55182-poc.git
    cd cve-2025-55182-poc
    
  2. 実験室をビルドして起動します。

    root@kitploit:~
    docker-compose up -d --build
    

    コンテナが完全に初期化されるまで待ちます。Next.jsコンテナは最初のビルドを完了するまでに数分かかる場合があります。

💥 エクスプロイト

エクスプロイトロジックは exploit/exploit.py にカプセル化されています。ホストマシン(Pythonがインストールされている場合)または attacker コンテナから直接攻撃を実行できます。

方法A: Attackerコンテナから実行(推奨)

  1. Attackerシェルにアクセスします。

    root@kitploit:~
    docker-compose exec attacker bash
    
  2. 依存関係をインストールします。

    root@kitploit:~
    pip install -r requirements.txt
    
  3. ターゲットA (Vanilla React) を攻撃します。

    root@kitploit:~
    python exploit.py http://vanilla-target:4000/rsc vanilla
    
  4. ターゲットB (Next.js) を攻撃します。

    root@kitploit:~
    python exploit.py http://nextjs-target:3000/ nextjs
    

確認

エクスプロイトは、被害サーバーの /tmp ディレクトリに pwned.txt という名前のファイルを作成しようとします。成功を確認するには:

root@kitploit:~
# Vanillaサーバーを確認
docker-compose exec vanilla-target ls -la /tmp/pwned.txt

# Next.jsサーバーを確認
docker-compose exec nextjs-target ls -la /tmp/pwned.txt

成功した場合、ファイルのリストが表示されます。エクスプロイトが失敗した場合、ファイルは存在しません。

🛡️ 緩和策

本番環境でこの脆弱性を緩和するには:

  1. React: react-server-dom-webpack(および関連パッケージ)をバージョン 19.0.1、19.1.2、または 19.2.1+ にアップグレードします。
  2. Next.js: v15.0.5+ または v16.0.7+ にアップグレードします。
  3. WAF: "$1:__proto__" のようなシグネチャや、マルチパートボディでの "$@" の異常な使用を含むリクエストをブロックするルールを実装します。

📚 参考文献

  • (https://nvd.nist.gov/vuln/detail/CVE-2025-55182)
  • (https://github.com/msanft/CVE-2025-55182)

大学プロジェクト - セキュリティ監査と脆弱性研究

ツールをダウンロード