
このスクリプトはURLのリストをスキャンして**Next.js**を使用しているかどうかを検出し、**CVE-2025-29927**に対して脆弱かどうかを判定します。オプションで、ワードリストを使用したエクスプロイトを試みます。
CVE-2025-29927 にさらされている可能性のある、公開アクセス可能な Next.js アプリケーションを特定するためのコマンドラインセキュリティスキャナーです。
このツールは、許可されたセキュリティテスト、脆弱性評価、研究、および防御的セキュリティ作業を目的としています。
所有しているか、テストの明示的な許可を得ているシステムのみをスキャンしてください。
このスキャナーは外部フィンガープリンティングを実行し、明示的に要求された場合はアクティブなセキュリティテストも実行します。潜在的に脆弱であると報告された結果は、侵害の決定的な証拠として扱うべきではありません。
# Clone the repository
git clone https://github.com/ferpalma21/Automated-Next.js-Security-Scanner-for-CVE-2025-29927.git
cd Automated-Next.js-Security-Scanner-for-CVE-2025-29927.git
# Install dependencies
npm install
npm install -g nextjs-cve-2025-29927-scanner
## 使用方法
さまざまなオプションを指定してスクリプトを実行します:
```sh
node index.js -u "https://example.com" -v
| オプション | エイリアス | 説明 |
|---|---|---|
-u | --urls | URL のリスト(スペースまたはカンマ区切り) |
-f | --file | URL を含むファイル(1 行に 1 つ) |
-c | --chrome | Chromium へのパス(デフォルト: /snap/bin/chromium) |
-o | --output | 脆弱なサイトの結果を保存するファイル |
-v | --verbose | 詳細な出力を有効にします |
-r | --redirect | リダイレクトを追跡します(オプション、誤検知につながる可能性があります) |
-a | --attack | エクスプロイトを試みます(注意して使用してください) |
-w | --wordlist | エクスプロイト用のワードリストファイル |
-t | --headless | Puppeteer をヘッドレスモードで実行します |
-x | --headers | エクスプロイトに失敗した場合、異なるヘッダーで再試行します |
node index.js -u "https://example.com"
node index.js -u "https://site1.com, https://site2.com"
node index.js -f urls.txt
node index.js -u "https://example.com" -o results.txt
node index.js -u "https://example.com" -v
node index.js -u "https://example.com" -a -w wordlist.txt
-v): 詳細なログがコンソールに出力されます。-v が設定されていない場合、結果は JSON として出力されます。-o): 検出された脆弱性をファイルに保存します。Analyzing: https://example.com
https://example.com is running Next.js version: 13.5.9.
Potentially vulnerable to CVE-2025-29927.
Next.js 14.2.25 または 15.2.3 以降にアップグレードしてください。アップグレードが不可能な場合は、WAF またはサーバーレベルで x-middleware-subrequest ヘッダーをブロックしてください。修正済みバージョン: 15.2.3、14.2.25、13.5.9、12.3.5
このプロジェクトは MIT ライセンスの下でライセンスされています。