mcpField
S
Security Infrastructure Mcp Servers

Security Infrastructure Mcp Servers

ローカル
github.com/jmstar85開発ツール2268 週間前に更新

Security Infrastructure Mcp Servers について

Security Infrastructure MCP Servers は、Splunk SIEM、CrowdStrike EDR、MISP 脅威インテリジェンスを対象としたセキュリティプラットフォーム向けの MCP サーバー実装群です。入力検証、インジェクション防止、認証情報の管理に重点を置いており、AI アシスタントから安全なデータを照会したいチーム向けです。

主な機能

  1. 01Splunk SPL クエリの実行とイベント検索
  2. 02FQL による CrowdStrike 検知結果の検索
  3. 03MISP のイベントと IOC 属性の検索
  4. 04SPL、FQL、XSS のインジェクション防止
  5. 05OAuth 2.0 認証と TLS 証明書の検証

活用シーン

  1. 01自然言語で Splunk の認証失敗イベントを検索
  2. 02CrowdStrike の検知結果を重大度で絞り込み
  3. 03MISP で IP ベースの IOC を照会

MCP 対応

各サーバーは対応するセキュリティプラットフォームの検索ツール(search-events、search-detections、search-attributes など)を MCP クライアントに提供します。

設定

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

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

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

リポジトリ

ツール

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

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

詳細

セキュリティインフラストラクチャ MCP サーバー

エンタープライズグレードのセキュリティ強化を施した、セキュリティプラットフォーム連携向けのセキュアな MCP(Model Context Protocol)サーバー実装を包括的に集めています。

🛡️ セキュリティ最優先の設計

このプロジェクトでは、重大な脆弱性への対処とセキュリティのベストプラクティスの実装を目的として、包括的なセキュリティ強化を実施しました。

✅ セキュリティ改善(最新の更新)
  • 🔴 高深刻度の修正:
    • クエリのサニタイズと危険なコマンドのブロックによる SPL インジェクションの防止
    • XXE 攻撃を防ぐため、defusedxml を使用した安全な XML 解析
    • すべての構成ファイルからハードコードされた認証情報を完全に削除
  • 🟡 中深刻度の修正:
    • すべての API 通信で、強力な暗号スイートを使用した TLS 1.2 以降を必須化
    • すべてのサーバーで包括的な入力検証とサニタイズを実施
    • コマンド実行のリスクとインジェクション攻撃を防止
    • 情報漏えいを防ぐため、エラーメッセージをサニタイズ
  • 🔵 その他のセキュリティ機能:
    • パターンマッチングによる FQL/SPL インジェクション攻撃の防止
    • SSL 証明書検証の必須化
    • API レスポンスのデータサニタイズ
    • 安全なプレースホルダーを使用したセキュアな構成テンプレート
    • 認証情報の漏えいを防ぐ包括的な .gitignore
🔒 セキュリティドキュメント

包括的なセキュリティガイドライン、構成のベストプラクティス、脆弱性の報告手順については、SECURITY.md を参照してください。

🔐 対応プラットフォーム

Splunk SIEM
  • セキュアな SPL クエリ実行:インジェクションを防止しながら Search Processing Language クエリを実行
  • イベント検索:サニタイズされたフィルタリングを使用して、すべてのインデックスからセキュリティイベントを検索
  • 時間ベースの分析:検証済みの時間範囲とカスタムの時間枠
  • 非同期ジョブ管理:検索ジョブを作成・監視し、結果を安全に取得
  • JSON 結果形式:機密データをフィルタリングした構造化出力
CrowdStrike EDR
  • セキュアな検出検索:検証済みの FQL(Falcon Query Language)を使用して検出をクエリ
  • 検出の詳細:サニタイズされた検出の概要とメタデータを取得
  • OAuth 2.0 認証:適切なトークン管理による安全な API アクセス
  • 入力検証:包括的なパラメーター検証と許可リストによる制御
  • リアルタイムの脅威データ:セキュリティフィルタリングを適用して、最新のエンドポイント検出データにアクセス
Microsoft MISP
  • イベント検索:入力のサニタイズと検証を行って MISP イベントをクエリ
  • IOC 属性検索:XSS とインジェクションを防ぎながらインジケーターを検索
  • 複数形式への対応:コンテンツを検証しながら、さまざまな IOC タイプを処理
  • SSL セキュリティ:セキュリティ警告とともに証明書検証を必須化
  • RESTful API 連携:エラーのサニタイズに対応したセキュアな MISP REST API

🚀 クイックスタート

インストール
# 1. Clone the repository
git clone https://github.com/jmstar85/SecurityInfrastructure.git
cd SecurityInfrastructure

# 2. Install secure dependencies
pip install -r requirements.txt

# 3. Configure credentials securely
cp .env.example .env
# Edit .env with your platform credentials (see security guidelines)

# 4. Add to Claude Desktop configuration
# Copy config-example.json content to your Claude Desktop config
# Location: ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)
# Update paths and environment variables with your secure values
セキュアな構成
# Verify configuration security
python -c "
import json
with open('.env', 'r') as f:
    content = f.read()
    if 'REPLACE_WITH_YOUR' in content:
        print('⚠️  Please update placeholder credentials in .env')
    else:
        print('✅ Configuration appears to be customized')
"

# Test server security
python src/splunk_server.py        # Runs on localhost:8080
python src/crowdstrike_server.py   # Runs on localhost:8081  
python src/misp_server.py          # Runs on localhost:8082

🔧 MCP サーバーツール

Splunk SIEM ツール(セキュリティ強化済み)
  • search-events:インジェクションを防止しながら、サニタイズされた SPL クエリを実行
    # Example: Secure search for failed login attempts
    query = "index=security sourcetype=auth action=failure"  # Automatically sanitized
    earliest_time = "-24h"  # Validated time format
    
CrowdStrike EDR ツール(セキュリティ強化済み)
  • search-detections:FQL の検証と許可リストによる制御を適用して検出をクエリ
    # Example: Secure search for high severity detections
    filter_query = "max_severity:'high'"  # Validated against injection patterns
    sort = "created_timestamp.desc"  # Whitelisted sort options only
    
MISP ツール(セキュリティ強化済み)
  • search-events:入力をサニタイズして脅威インテリジェンスをクエリ
  • search-attributes:XSS とインジェクションを防ぎながら IOC を検索
    # Example: Secure search for IP-based IOCs
    type = "ip-dst"  # Input sanitized and validated
    category = "Network activity"  # Content filtered for safety
    

📁 最適化されたプロジェクト構成

SecurityInfrastructure/
├── src/                    # Secure MCP server implementations
│   ├── splunk_server.py    # Splunk SIEM integration (hardened)
│   ├── crowdstrike_server.py # CrowdStrike EDR integration (hardened)
│   └── misp_server.py      # Microsoft MISP integration (hardened)
├── config/                 # Secure configuration templates
│   ├── mcp-settings.json   # MCP client configuration (sanitized)
│   └── splunk.yaml         # Splunk configuration template
├── tests/                  # Security validation tests
├── SECURITY.md             # Security guidelines and best practices
├── config-example.json     # Safe configuration template
├── .env.example            # Environment variables template (secure)
├── .gitignore              # Comprehensive credential protection
├── requirements.txt        # Minimal secure dependencies
├── INSTALLATION.md         # Detailed setup guide
├── setup-guide.md          # Quick setup templates
└── docker-compose.yml      # Container configuration

注: 攻撃対象領域を最小限に抑え、セキュリティ態勢を最適化するため、フロントエンドコンポーネント、不要な Node.js ファイル、開発用ファイルを削除しました。

🔧 セキュアな MCP クライアント構成

Claude Desktop のセットアップ(セキュア)

構成ファイルの場所:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

セキュアな構成テンプレート:

{
  "mcpServers": {
    "security-infrastructure-splunk": {
      "command": "python",
      "args": ["/FULL/PATH/TO/SecurityInfrastructure/src/splunk_server.py"],
      "env": {
        "SPLUNK_HOST": "REPLACE_WITH_YOUR_SPLUNK_HOST",
        "SPLUNK_TOKEN": "REPLACE_WITH_YOUR_API_TOKEN",
        "SPLUNK_VERIFY_SSL": "true"
      }
    }
  }
}

⚠️ セキュリティに関する注意: 実際の認証情報をバージョン管理にコミットしないでください。用意されたテンプレートを使用し、プレースホルダーを実際の値に置き換えてください。

💻 セキュアな使用例

Claude Desktop を安全に設定すると、自然言語を使ってセキュリティプラットフォームを操作できます。

Splunk SIEM のクエリ(インジェクション対策済み)
"Search for failed SSH login attempts in the last 6 hours"
"Find all authentication events from IP 192.168.1.100"  
"Show me high priority security alerts from yesterday"
"Search for events in the security index containing 'malware'"
CrowdStrike EDR のクエリ(検証済み)
"Show me all high severity detections from today"
"Find endpoint detections with behavior patterns"
"List recent detections sorted by creation time"
"Search for detections on specific hostnames"
MISP の脅威インテリジェンス(サニタイズ済み)
"Search for events related to specific threat actors"
"Find all IP address indicators of compromise"
"Look up domain indicators from the last week"
"Search for published threat intelligence events about phishing"

🛠️ セキュリティ機能

コアとなるセキュリティ実装
  • 入力検証:すべてのユーザー入力を包括的にサニタイズおよび検証します
  • インジェクション防止:SPL、FQL、SQL、XSS のインジェクション攻撃を防御します
  • セキュアな通信:強力な暗号スイートを使用した HTTPS/TLS 1.2 以降を強制します
  • エラーのサニタイズ:情報漏えいを防ぐため、汎用的なエラーメッセージを使用します
  • 認証セキュリティ:適切な検証を行い、トークンや認証情報を安全に取り扱います
セキュリティアーキテクチャ
  • 複数の認証方式:セッションベース、トークンベース、OAuth 2.0 を安全なデフォルト設定で利用できます
  • SSL/TLS の強制:すべての接続で証明書の検証を必須にします
  • API セキュリティ:レート制限、タイムアウトの強制、コネクションプーリングの上限を設定します
  • 設定のセキュリティ:安全なテンプレート、認証情報のマスキング、.gitignore による保護を使用します
データ保護
  • 出力のサニタイズ:API レスポンスから機密フィールドを削除します
  • 認証情報の管理:ハードコードされたシークレットを使用せず、環境変数を保護します
  • ログのセキュリティ:ログと監査証跡内の機密データをフィルタリングします
  • セッション管理:トークンの適切な有効期限設定と安全な保存を行います

📋 要件

  • Python 3.11+
  • セキュリティプラットフォームへの安全なアクセス認証情報(適切に設定済み)
  • MCP 対応クライアント(Claude Desktop を推奨)
  • 本番環境へのデプロイ用 SSL/TLS 証明書

🔐 認証情報の安全な管理

Splunk SIEM(安全な設定)
  • API トークン(強く推奨):必要最小限の権限を付与します
  • HTTPS エンドポイントの検証が必要です
  • 検索権限は必要なインデックスのみに限定します
CrowdStrike EDR(安全な設定)
  • クライアント IDとクライアントシークレット:最小権限の原則に従います
  • API 権限:Detections(READ)、限定されたスコープ
  • ベース URLを検証し、HTTPS を強制します
Microsoft MISP(安全な設定)
  • 可能な場合は、読み取り専用権限を持つAPI キー
  • SSL 証明書の検証を行うMISP インスタンス URL
  • セキュリティを考慮したタイムアウト設定

🧪 セキュリティ検証

このプロジェクトには、包括的なセキュリティ検証が含まれています。

# Run security validation tests
python -m pytest tests/ -v

# Validate configuration security
python -c "
import os
config_files = ['.env', 'config/mcp-settings.json']
for f in config_files:
    if os.path.exists(f):
        with open(f) as file:
            content = file.read()
            if 'REPLACE_WITH_YOUR' in content:
                print(f'⚠️  {f} contains placeholder credentials')
            else:
                print(f'✅ {f} appears configured')
"

📊 セキュリティ指標

  • 脆弱性の状況:重大度が HIGH および MEDIUM の問題はすべて解決済みです
  • セキュリティテストのカバレッジ:セキュリティ検証テストの 83% に合格しました
  • コード品質:包括的な入力検証とエラー処理を実装しています
  • 攻撃対象領域:コンポーネントの削除と最適化により最小限に抑えています

🤝 貢献

  1. リポジトリをフォークします
  2. 機能ブランチを作成します(git checkout -b feature/security-enhancement)
  3. SECURITY.md のセキュリティガイドラインに従います
  4. 新機能のセキュリティテストを追加します
  5. セキュリティ検証を行ってコミットします(git commit -am 'Add secure feature')
  6. ブランチにプッシュします(git push origin feature/security-enhancement)
  7. セキュリティレビューのチェックリストを添えてプルリクエストを作成します

📄 ライセンス

このプロジェクトは、安全な実装方法に重点を置いたセキュリティ研究および教育目的で提供されています。

🔗 セキュリティリソース

🚨 セキュリティに関する報告

セキュリティ上の脆弱性を発見した場合は、次の対応をお願いします。

  1. 公開の issue は作成しないでください
  2. セキュリティの詳細をメンテナーにメールでお知らせください
  3. 公開する前に、修正のための妥当な時間を設けてください
  4. 責任ある開示の慣行に従ってください

⭐ このセキュアな実装が役に立った場合は、ぜひスターを付けてください!

最新のセキュリティ更新: 2024 年 12 月 — 脆弱性の修正と最適化を含む包括的なセキュリティ強化。

コメント

MCP は初めてですか?

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

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