mcpField
R
Red-team-mcp

Red-team-mcp

ローカル
github.com/skjortan23セキュリティ1673 週間前に更新

Red-team-mcp について

Red-team-mcpは、AIエージェントがレッドチーム演習で使うMCPサーバーです。スキャン、SSH操作、Metasploitのエクスプロイト検索・実行をまとめ、一部のコンポーネントは結果をMongoDBに保存します。

主な機能

  1. 01masscanによるポートスキャン
  2. 02Nucleiによる脆弱性検出
  3. 03SSHコマンド実行とブルートフォース検査
  4. 04Metasploitエクスプロイトの検索と実行
  5. 05スキャン結果のMongoDB保存

活用シーン

  1. 01対象ネットワークの開放ポートとサービスの発見
  2. 02カスタムテンプレートや深刻度による脆弱性検出
  3. 03CVE、プラットフォーム、ランク、キーワードによるエクスプロイト検索
  4. 04SSHまたはMetasploitを使った許可済みレッドチームテスト

MCP 対応

MCP経由でAIエージェントにセキュリティテスト用のリソースとツールを提供します。ポート・脆弱性スキャン、SSHツール、Metasploit連携を含みます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Red-team-mcp

AI エージェントがレッドチーム演習で使用するための MCP(Model Context Protocol)サーバーです。

概要

このサーバーは、レッドチームのシナリオで AI エージェントが利用できるリソースとツールを提供します。Model Context Protocol を実装し、セキュリティテストと評価に必要な情報の取得、ツールへのアクセス、アクションの実行を AI エージェントに許可します。

アーキテクチャ

graph TD
    Agent[AI Agent Client] <--> |MCP Protocol| Server[FastMCP Server]

    subgraph "MCP Server Components"
        Server --> PortScanner[Port Scanner Module]
        Server --> VulnScanner[Vulnerability Scanner Module]
        Server --> SSHTools[SSH Tools Module]
        Server --> Metasploit[Metasploit Integration]
        Server --> DomainDiscovery[Domain Discovery Module]
        Server <--> Database[(MongoDB Database)]
    end

    subgraph "External Tools"
        PortScanner --> Masscan[masscan]
        VulnScanner --> Nuclei[nuclei]
        SSHTools --> SSH[SSH Client]
        Metasploit --> MSFRPC[Metasploit RPC]
        DomainDiscovery --> Subfinder[subfinder]
    end

    Database --> Findings[Findings]

コンポーネント

1. ポートスキャナー
  • 高速なポートスキャンを実現するため、masscan と連携します
  • AI エージェントが対象ネットワーク上の開いているポートとサービスを検出できます
  • スキャンパラメーター(IP 範囲、ポート範囲、スキャン速度)を設定できます
  • エージェントが利用できるよう、結果を解析してフォーマットします
2. 脆弱性スキャナー
  • 脆弱性検出に Nuclei と連携します
  • カスタムテンプレートと重大度フィルタリングに対応しています
  • 高速検索のため、結果を MongoDB に保存します
3. SSH ツール
  • 認証情報を使用した SSH コマンドの実行
  • ユーザー名とパスワードのリストを使用した SSH ブルートフォース機能
  • ホストおよびポート情報とともに結果を保存します
4. Metasploit 連携
  • エクスプロイトデータベース:すべての Metasploit エクスプロイトをあらかじめ格納した MongoDB コレクション
  • 高速検索:プラットフォーム、CVE、ランク、作成者、キーワードでエクスプロイトを検索します
  • エクスプロイトの実行:ペイロード設定を指定して、対象に対してエクスプロイトを実行します
  • ライブクエリ:Metasploit RPC サーバーからリアルタイムでエクスプロイトを一覧表示します

実装計画

  1. 基本的な MCP サーバー構造を設定します
  2. パラメーター検証を伴う masscan 連携を実装します
  3. 結果の解析と保存の仕組みを作成します
  4. 追加コンポーネントを追加します(今後対応予定)
  5. ロギングとモニタリングを実装します
  6. 権限と境界のシステムを構築します

TODO

  • nuclei スキャナーを追加
  • SSH スキャナーを追加
  • Metasploit 連携を追加
  • 完全な非同期 FastMCP サーバーを実装
  • テストを追加
  • マシンのハッキングを段階的に行うためのプロンプト。(agents/simple_agent.py を参照)

セットアップ

サードパーティ製ツールのインストール

セットアップには以下のツールが必要です

  • mongodb
  • nuclei
エクスプロイトデータベースのセットアップ

エクスプロイトを高速に検索できるようにするには、Metasploit エクスプロイトデータベースにデータを格納します。

  1. 前提条件:

    • Metasploit Framework がインストールされていること
    • MongoDB が localhost:27017 で稼働していること
    • Metasploit RPC サーバーが稼働していること:msfrpcd -P msf -a 127.0.0.1
    • Python の依存関係:pip install pymetasploit3
  2. データベースへのデータ格納:

    python scripts/setup_exploits_db.py
    
  3. セットアップのテスト:

    python scripts/test_exploits_db.py
    

これにより、以下のメタデータを含む、すべての Metasploit エクスプロイトを検索できるデータベースが作成されます。

  • CVE 参照情報
  • プラットフォーム情報
  • エクスプロイトのランクと作成者
  • 互換性のあるペイロード
  • 必須オプション

使用方法

エクスプロイト検索の例
# Search Windows SMB exploits
search_exploits_fast(platform='windows', search_term='smb')

# Find EternalBlue exploit
search_exploits_fast(cve='CVE-2017-0144')

# Get high-quality exploits
search_exploits_fast(rank='excellent')

# Search by author
search_exploits_fast(author='hdm')

開発

サーバーに新しいツールやリソースを追加する方法の詳細は、今後追記されます。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。