開発支援
このプロジェクトがあなたの作業に役立つなら、継続的なメンテナンスと新機能の開発を支援してください。
ETH 寄付ウォレット
0x11282eE5726B3370c8B480e321b3B2aA13686582
QRコードをスキャンするか、上記のウォレットアドレスをコピーしてください。
BurpWpsScan

Webアプリケーションテスト中にWordPressサイトを検出し(パッシブ検出+アクティブ確認)、WPScan APIを介してWordPressコア、プラグイン、テーマの脆弱性スキャンを含む包括的なセキュリティ評価を実行し、XML-RPC/REST APIの露出テスト、ユーザー列挙、プラグインバージョンチェック、AI対応のペネトレーションテストレポートを生成するBurp Suite拡張機能です。
Burp Suite Community および Professional エディションの両方に対応しています。
スクリーンショット
メインインターフェース
検出されたWordPressサイトをステータスインジケーターとスキャンコントロールと共に表示するWpsScanメインインターフェース
エクスポートされたレポート
スキャンされた各サイトに対してJSON、Markdown、AI対応レポートが整理されたエクスポート構造
生のWPScan JSON
完全な脆弱性データとスキャンメタデータを含む詳細なJSON出力
機能
検出と発見
- ライブWordPress検出: リアルタイムHTTPトラフィックからパッシブにWordPressサイトを識別
- HTTP履歴スキャン: BurpのHTTP履歴をスキャンして過去のトラフィックからWordPressサイトを検出([HTTP HISTORY]ラベルが付きます)
- 一括URLインポート: 複数のURLをアクティブに確認し、バッチWordPress検出のためにインポート
- プラグイン/テーマ発見: HTTPレスポンスと履歴からプラグインとテーマを抽出
- バージョン検出: 複数の情報源(メタタグ、フィード、API)からWordPressコアバージョンを特定
脆弱性スキャン
- WPScan API連携: WPScan脆弱性データベースに問い合わせて以下をスキャン:
- WordPressコアの脆弱性
- プラグインの脆弱性(80以上の高リスクプラグイン+最大3つのその他)
- テーマの脆弱性
- リアルタイム脆弱性詳細: 各コンポーネントがスキャンされるとすぐに脆弱性のタイトルと種類を表示
- スマートプラグインスキャン: 80以上の高リスクプラグインすべて+最大3つのその他プラグインをスキャン(APIクレジットを60〜80%節約)
- 24時間APIキャッシュ: 同じプラグイン/テーマを24時間以内に2度スキャンしません(Burp再起動後も持続)
セキュリティ評価
- XML-RPCセキュリティテスト:
- XML-RPCエンドポイントが有効か検出
- pingback.pingメソッド(DDoS増幅リスク)のテスト
- system.multicallメソッド(ブルートフォース増幅リスク)のテスト
- REST API発見:
- アクセス可能なWordPress REST APIエンドポイント(/wp-json/wp/v2/)を列挙
- ユーザー、投稿、ページ、メディアエンドポイントをテスト
- ユーザー列挙の脆弱性をフラグ付け
- ユーザー列挙:
- REST API(/wp-json/wp/v2/users)経由でユーザー列挙を試行
- フォールバックとしてauthorリダイレクト方式(?author=N)を使用
- 偵察用にユーザー名とIDを抽出
- プラグインアップデート監視: WordPress.orgに対してプラグインの最新バージョンをチェック(APIクレジット不使用)
- セキュリティ強化検出: セキュリティプラグインと強化策を識別
ワークフローと管理
- 二重検出モード: ライブスキャンとHTTP履歴スキャンは独立して動作
- APIクレジットカウンター: 日々のAPI使用量をリアルタイム追跡(深夜にリセット)
- ステータス追跡: サイトを「スキャン済み」「脆弱」「偽陽性」にタグ付け可能(永続保存)
- レポートエクスポート: 構造化JSON、フォーマット済みMarkdown、AI対応プロンプトを生成
- URL正規化: サブドメインをルートドメインに自動正規化(例: cd.krytter.com → krytter.com)
- プロトコル対応: 同一サイトのHTTPとHTTPSの両方を処理
- 視覚的インジケーター: [HTTP HISTORY]や[IMPORTED]ラベルによる色分けステータス表示
スキャン出力
拡張機能はスキャン中に詳細なリアルタイムフィードバックを提供します:
セキュリティテスト:
[+] XML-RPC enabled
[!] Pingback available (DDoS risk)
[!] Multicall available (brute force amplification)
[+] REST endpoint accessible: Users
[+] REST endpoint accessible: Posts
コア脆弱性:
[+] Core: 2 vulnerabilities
- WP < 6.8.3 - Author+ DOM Stored XSS (SENSITIVE DATA DISCLOSURE)
- WP < 6.8.3 - Contributor+ Sensitive Data Disclosure (SENSITIVE DATA DISCLOSURE)
プラグイン脆弱性:
[+] Plugin 'searchwp': 1 vulnerabilities
- SearchWP < 4.2.6 - Subscriber+ Settings Update (NO AUTHORISATION)
[+] Plugin 'wp-parsely': 0 vulnerabilities (clean)
[*] Plugin 'contact-form-7': latest version 5.8.4
テーマ脆弱性:
[+] Theme 'rollingstonesofficial': 0 vulnerabilities (clean)
視覚的インジケーター
- [HTTP HISTORY]: 青ラベル。HTTP履歴スキャンで見つかったサイトを示す
- [IMPORTED]: 紫ラベル。一括URLインポートで追加されたサイトを示す
- 色分け行:
- 黄色: 現在スキャン中
- 緑: スキャン完了
- 赤: スキャンエラー
- 白/グレーの交互: デフォルト
サイトのタグ付け
- リストからサイトを選択
- 下部のチェックボックスを使用:
- スキャン済み: 手動レビュー済みとしてマーク
- 脆弱: 脆弱性が確認された
- 偽陽性: 実際はWordPressでない、または無関係
- タグはBurp再起動後も保持
レポートのエクスポート
- 「レポートをエクスポート」ボタンをクリック
- レポートは以下に保存:
- Windows:
C:\burpwpscan_exports\scan_YYYYMMDD_HHMMSS\(C-Zドライブを試行)
- Linux/Mac:
/tmp/burpwpsscan_exports/scan_YYYYMMDD_HHMMSS/
- 各サイトに:
raw_wpscan.json - 生のAPIレスポンス
report.md - フォーマット済みMarkdownレポート
ai_prompt.txt - AI分析用に準備済み
検索とフィルター
- 検索ボックス: URLでサイトをフィルター
- 並び替えドロップダウン: デフォルト、ホスト、ステータス、検出時刻で並び替え
APIクレジット追跡
- スキャン済みサイト数カウンター:「Websites Scanned: X」と表示 - スキャンしたサイト数を追跡
- APIクレジットカウンター:「API Credits: X」と表示 - 実際のAPI呼び出し数を追跡
- 色インジケーター(APIクレジット用):
- 緑: 0-19コール(安全)
- 橙: 20-24コール(警告)
- 赤: 25+コール(制限到達)
- 自動リセット: カウンターは深夜(00:00)にリセット
- 永続性: Burp再起動後も保持
- 手動リセット:「リセット」ボタンで両方のカウンターをクリア
レポート形式
Markdownレポート(report.md)
人間が読める脆弱性レポート:
- エグゼクティブサマリー
- セキュリティ所見(XML-RPC、REST API露出)
- 詳細な脆弱性の説明
- CVE参照
- 修復推奨事項
- 技術的詳細
AIプロンプト(ai_prompt.txt)
AI分析用の構造化プロンプト:
- スキャン結果の要約
- 脆弱性の詳細
- 悪用ガイダンスの要請
- 修復手順
- ビジネス影響評価
JSONエクスポート(raw_wpscan.json)
機械可読形式:
- スキャンメタデータ
- WordPressバージョン情報
- 完全な脆弱性データ
- プラグイン/テーマ情報
- XML-RPCセキュリティステータス
- REST APIエンドポイント発見
- プラグイン更新情報
- 統計
APIキーとクレジット最適化
WPScan API
スマートAPIクレジット使用法
拡張機能はインテリジェントな戦略でAPI消費を最小限に抑えます:
1. スマートプラグイン優先順位付け(80以上の高リスクプラグイン)
- 高リスクプラグイン(WooCommerce、Contact Form 7、Elementorなど)を優先スキャン
- 現実世界のWordPressエクスプロイトの95%をカバー
- カテゴリ: フォーム、Eコマース、ページビルダー、SEO、セキュリティ、バックアップ、キャッシュ、LMS、スライダー、ソーシャル、ファイル管理、翻訳
2. 包括的な高リスクスキャン
- 見つかった高リスクプラグインすべてをスキャン(WooCommerce、Elementor、Contact Form 7など)
- 追加で3つまでの非高リスクプラグインをスキャン
- ロジック: 既知の危険なプラグインの重大な脆弱性を見逃さない
3. 24時間API応答キャッシュ
- プラグイン/テーマの結果を24時間キャッシュ
- Burp再起動後も保持(
wpsscan_api_cache.json)
- 例: 10サイトに"contact-form-7"がある場合 = 1 APIコール(9はキャッシュ)
- キャッシュインジケーターはログに
[CACHE]プレフィックスで表示
4. 既スキャンサイトをスキップ
- 「Scan All」は結果が既にあるサイトを自動的にスキップ
- 誤った再スキャンとクレジット浪費を防止
APIクレジット節約
最適化前:
- 1サイトあたり: 1(コア)+ 10(プラグイン)+ 5(テーマ)= 16 APIコール
- 10サイト = 160 APIコール
最適化後(標準ケース):
- 1サイトあたり: 1(コア)+ 5(高リスクプラグイン)+ 1(テーマ)= 7 APIコール
- 10サイト = 70 APIコール
- 節約: 56%削減
最適化後(キャッシュあり):
- 最初のサイト: 7 APIコール
- 残り9サイト(同じ高リスクプラグイン): 各1 APIコール(キャッシュ)
- 合計: 16 APIコール
- 節約: 90%削減
設定
APIキー管理
- APIキーはUIを通じて管理
- 拡張機能上部のテキストフィールドにWPScan APIキーを入力
- 「Save Key」をクリックしてキーを保存
- キーは以下に保存:
C:\burpwpsscan_exports\wpsscan_config.txt(WindowsはC-Zドライブを試行)または/tmp/burpwpscan_exports/wpsscan_config.txt(Linux/Mac)
- APIキー変更後にBurpを再起動する必要はありません
検出モード
- ライブスキャン: ON/OFFでリアルタイム検出を有効/無効
- HTTP履歴: ボタンをクリックして過去の全HTTPトラフィックをスキャン
- 両モードは独立したロジックで動作
スマートスキャン動作
- 高リスクプラグインを優先スキャン: WooCommerce、Elementor、Contact Form 7など
- 包括的スキャン: 脆弱性を見逃さないよう全高リスクプラグインをスキャン
- キャッシュ認識: 最近スキャンしたプラグイン/テーマのAPI呼び出しをスキップ
- 重複排除:「Scan All」は結果のないサイトのみスキャン
URL正規化
- サブドメインをルートドメインに正規化(cd.krytter.com → krytter.com)
- 標準ポート(80, 443)をURLから削除
- HTTPとHTTPSは別エントリとして扱う
- HTTP履歴はライブスキャンで既存のサイトでも追加可能
トラブルシューティング
拡張機能が読み込まれない
- CommunityおよびProfessionalの両エディションで動作
- BurpのPython環境を確認:
Extensions → Options → Python Environment
Extensions → Errorsでエラーメッセージを確認