
Next.jsのCVE-2025-55182 RCEに対する自動スキャナー。8つのWAFバイパス技術、カスタムコマンド実行、および許可されたペネトレーションテスト用のテスト専用検出モードを搭載。
CVE-2025-55182 Advanced Scanner
Next.js アプリケーションにおける CVE-2025-55182 脆弱性の検出およびエクスプロイトを行うための高度な侵入テストツール
📋 目次
概要
機能
インストール
使用方法
例
バイパス技術
技術詳細
免責事項
貢献
ライセンス
🔍 概要
CVE-2025-55182 は、React Server Components を介して Next.js アプリケーションに影響を与える深刻なリモートコード実行 (RCE) 脆弱性です。このスキャナーは、さまざまな WAF バイパス技術を用いて、この脆弱性を自動的に検出・エクスプロイトする方法を提供します。
CVSS スコア: 9.8 (致命的)
✨ 機能
複数のペイロードバリアント: 異なるエクスプロイトパターン
WAF バイパス技術: 8 種類のバイパス方法
カスタムコマンド実行: 任意のシステムコマンドを実行
脆弱性テスト: 安全な検出のためのテストのみモード
プロキシサポート: デバッグ用にプロキシ経由でトラフィックをルーティング
SSL バイパス: SSL 証明書検証をスキップするオプション
リトライ機構: 失敗時の自動リトライ
カラー出力: 見やすいコンソールインターフェース
🚀 インストール
前提条件
Python 3.6 以上
pip パッケージマネージャー
pip install -r requirements.txt
chmod +x scanner.py
Docker インストール
bash
docker build -t cve-2025-55182-scanner .
docker run --rm cve-2025-55182-scanner -h
📖 使用方法
基本的な使い方
bash
python scanner.py -h
python scanner.py -d http://target.com --test-only
python scanner.py -d http://target.com -c "whoami"
コマンドラインオプション
📚 例
基本的なエクスプロイト
bash
python scanner.py -d http://vulnapp.com --test-only
python scanner.py -d http://vulnapp.com -c "id"
python scanner.py -d https://target.com -c "ls -la" -k
python scanner.py -d http://localhost:3000 -c "cat /etc/passwd"
WAFバイパスの例
bash
python scanner.py -d http://target.com -c "uname -a" -t 2
python scanner.py -d https://target.com -c "whoami" -t 3 -k
python scanner.py -d http://target.com -c "pwd" -t 4 -p http://127.0.0.1:8080
for i in {1..8}; do echo "Trying technique $i" python scanner.py -d http://target.com -c "hostname" -t $i echo "" done
高度な使用法
bash
for target in $(cat targets.txt); do echo "Testing $target" python scanner.py -d $target --test-only done
python scanner.py -d http://target.com -c "ifconfig" > output.txt
python scanner.py -d https://target.com -c "env" -p http://127.0.0.1:8080 -k
🛡️ バイパス技術
このスキャナーには 8 種類の WAF バイパス技術が含まれています:
デフォルトペイロード: 元のエクスプロイトパターン
Base64 エンコード: コマンドを Base64 でエンコード
Unicode エンコード: Unicode 文字エンコードの使用
ケース操作: ランダムな大文字小文字のバリエーション
二重エンコード: URL エンコードを二重に適用
ヌルバイト: ヌルバイトインジェクション
混合ヘッダー: 多様な HTTP ヘッダー
ランダム遅延: ランダムなスリープ間隔の追加
各手法は -t フラグで選択できます。
🔧 技術詳細
脆弱性の背景
CVE-2025-55182 は、Next.js におけるプロトタイプ汚染の脆弱性であり、React Server Components を介してリモートコード実行につながります。この脆弱性により、攻撃者はサーバー上で任意のコマンドを実行できます。
ペイロード構造
このツールは、特別に細工された multipart/form-data リクエストとプロトタイプ汚染を使用して RCE を達成します:
プロトタイプ汚染: Promise のプロトタイプチェーンを汚染
コマンドインジェクション: Node.js の child_process 実行を注入
結果抽出: リダイレクトヘッダーを介して結果を抽出
検出方法
スキャナーは特別に細工されたリクエストを送信し、以下を探します:
コマンド出力を含む X-Action-Redirect ヘッダー
エクスプロイト成功を示す特定のレスポンスパターン
脆弱性の存在を示唆するエラーメッセージ
⚠️ 免責事項
重要: 法令遵守および倫理的な使用に限ります
このツールは以下の目的で提供されます:
セキュリティ研究および教育
許可を受けた侵入テスト
適切な許可を得た脆弱性評価
防御的セキュリティ目的
以下の目的でこのツールを使用しないでください:
システムの無許可テスト
違法行為
悪意のある目的
利用規約違反
このツールを使用することで、あなたは以下に同意するものとします:
自分が所有している、または明示的にテスト許可を得ているシステムでのみ使用すること
すべての該当する法律および規制を遵守すること
自身の行動に対する全責任を負うこと
作成者を不正使用の責任から免除すること
🤝 貢献
貢献を歓迎します!以下の方法で助けることができます:
問題の報告
問題が既に存在するか確認する
詳細な再現手順を提供する
エラーメッセージとログを含める
環境の詳細を明記する
コードへの貢献
リポジトリをフォークする
機能ブランチを作成する
明確なコミットメッセージを書く
該当する場合はテストを追加する
プルリクエストを送信する
機能リクエスト
GitHub の課題で "enhancement" ラベルを付けて新しい機能を提案してください。
📄 ライセンス
このプロジェクトは MIT ライセンスの下でライセンスされています。詳細は LICENSE ファイルを参照してください。
MIT ライセンス
Copyright (c) 2025
以下に定める条件に従い、本ソフトウェアおよび関連文書ファイル(以下「ソフトウェア」)の複製物を取得するすべての人に対し、ソフトウェアを無制限に扱うことを許可します。これには、ソフトウェアの複製、変更、結合、出版、頒布、サブライセンス、および/または販売の権利、およびソフトウェアを提供された者にこれらを許可する権利が含まれます。
上記の著作権表示および本許諾表示を、ソフトウェアのすべての複製物または重要な部分に記載するものとします。
ソフトウェアは「現状のまま」で提供され、明示的または黙示的を問わず、商品性、特定目的への適合性、および非侵害の保証を含む、いかなる種類の保証もありません。いかなる場合も、著作者または著作権保持者は、契約行為、不法行為、またはその他の行為を問わず、ソフトウェアまたはソフトウェアの使用またはその他の取引に起因または関連して生じるいかなる請求、損害、その他の責任も負わないものとします。
🔗 参考文献
CVE-2025-55182 公式エントリ
ProjectDiscovery Nuclei テンプレート
Next.js セキュリティ勧告
React Server Components ドキュメント
⭐ スター履歴
このツールが役に立つと思われたら、GitHub でスターを付けることをご検討ください!
覚えておいてください: 大きな力には大きな責任が伴います。このツールを倫理的かつ合法的に使用してください。
| オプション | 説明 | デフォルト |
|---|
| -d, --domain | 対象URL | http://localhost:3000 |
| -c, --command | 実行するコマンド | id |
| -t, --technique | バイパス手法 (1-8) | 1 |
| -p, --proxy | プロキシサーバー | なし |
| -k, --insecure | SSL検証をスキップ | False |
| --test-only | 脆弱性のテストのみ | False |
| -h, --help | ヘルプメッセージを表示 | 該当なし |