ZAP MCP Server with SQLMap Integration Setup Guide について
このリポジトリは、OWASP ZAPをMCPサーバーとして動かし、SQLMapと組み合わせて許可を得たWebセキュリティテストを行うための設定ガイドです。スキャン用スクリプト、独自ルール、検出結果の連携スクリプトを含みます。
主な機能
- 01DockerによるZAPのセットアップ
- 02SQLMapのプロキシ設定
- 03独自のZAP検出ルール
- 04フォームの自動スキャン
- 05スキャンスクリプトとCIの例
活用シーン
- 01許可を得た調査向けのZAPとSQLMapの構築
- 02対象サイトのフォームの脆弱性スキャン
- 03ZAPの検出結果をSQLMapで追加検査
MCP 対応
ガイドではOWASP ZAPをMCPサーバーとして設定します。SQLMap関連のスクリプトも説明していますが、MCPクライアントに公開するツールやリソースは記載されていません。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
SQLMap 統合 ZAP MCP サーバーのセットアップガイド
このリポジトリには、正当なセキュリティテストと脆弱性評価のために、OWASP ZAP を SQLMap と統合した MCP(中間者プロキシ)サーバーとして使用する手順と設定ファイルが含まれています。
前提条件
- システムに Docker がインストールされていること
- Web セキュリティテストの基本的な知識
- システムの管理者/root 権限
クイックセットアップ
1. このリポジトリをクローンします:
git clone https://github.com/UnknownAirtist/zap-mcp-sqlmap-setup.git
cd zap-mcp-sqlmap-setup
2. セットアップスクリプトを実行します:
chmod +x setup.sh
./setup.sh
3. ZAP MCP サーバーを起動します:
docker-compose up -d
これにより、ZAP サーバーがポート 8080 で、API がポート 8090 で起動します。
手動セットアップ
1. OWASP ZAP をインストールします
Docker を使って ZAP をインストールできます(推奨):
docker pull owasp/zap2docker-stable
または、公式ウェブサイトから直接ダウンロードできます。
2. SQLMap をインストールします
SQLMap はリポジトリからインストールできます:
git clone --depth 1 https://github.com/sqlmapproject/sqlmap.git
3. ZAP を MCP サーバーとして設定します:
ZAP をデーモンモードで起動します:
docker run -u zap -p 8080:8080 -p 8090:8090 -i owasp/zap2docker-stable zap.sh -daemon -host 0.0.0.0 -port 8080 -config api.disablekey=true
4. SQLMap を ZAP と連携するように設定します:
ZAP をプロキシとして SQLMap を使用します:
python sqlmap.py -u "http://target-website.com" --proxy=http://localhost:8080
高度な設定
カスタム ZAP ルール
zap-rules ディレクトリには、SQL インジェクション脆弱性の検出精度を高めるためのカスタム ZAP ルールが含まれています:
.jsファイルを ZAP のスクリプトディレクトリにコピーします- ZAP UI の Tools > Scripts で有効にします
SQLMap 統合スクリプト
sqlmap-scripts ディレクトリには、より緊密な連携を実現するためのヘルパースクリプトが含まれています:
zap-sqlmap-bridge.py:ZAP の検出結果を SQLMap に転送し、さらに詳しくテストしますauto-scan.py:ターゲットサイトで見つかったすべてのフォームを自動スキャンします
使用例
基本スキャン
./scripts/start-scan.sh http://example.com
SQLMap 統合によるフルスキャン
./scripts/full-scan.sh http://vulnerable-website.com
継続的インテグレーションのセットアップ
GitHub Actions と Jenkins の設定例については、ci-example ディレクトリを参照してください。
セキュリティに関する考慮事項
⚠️ 重要:これらのツールは、自分が所有するシステム、またはテストする明示的な許可を得たシステムにのみ使用してください。許可のないセキュリティテストは、ほとんどの地域で違法です。
トラブルシューティング
- ZAP 関連の問題については、
logs/zap.logを確認してください - SQLMap 関連の問題については、
logs/sqlmap.logを確認してください - サーバーが応答しない場合は、ポート 8080 と 8090 が他のアプリケーションで使用されていないことを確認してください
ライセンス
このプロジェクトは MIT License のもとでライセンスされています。詳細については LICENSE ファイルを参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。