ClawdContext

Bonnes pratiques de sécurité MCP

Guides spécifiques pour sécuriser les implémentations du Model Context Protocol.

Qu'est-ce que MCP ?

Le Model Context Protocol (MCP) permet aux modèles d'IA de se connecter de manière sécurisée à des sources de données externes et à des outils. Bien que puissant, il introduit de nouvelles considérations de sécurité qui doivent être adressées.

🔌

Normalisé

Protocole universel pour l'accès aux outils IA

🔗

Extensible

Facile d'ajouter de nouveaux outils et capacités

⚠️

Surface de risque

Chaque outil = nouveau vecteur d'attaque

🔍

Valider toutes les réponses des serveurs MCP avant traitement

Ne faites jamais confiance aux réponses des serveurs MCP. Validez tous les types de données, vérifiez les modèles malveillants et sanitizez les sorties avant traitement.

# Valider la réponse MCP
def validate_mcp_response(response: dict) -> bool:
    if not isinstance(response, dict):
        return False
    if "tool" not in response or "result" not in response:
        return False
    # Vérifier les modèles suspects
    dangerous_patterns = ["../", "<script", "import os"]
    for pattern in dangerous_patterns:
        if pattern in str(response.get("result", "")):
            return False
    return True
🏝️

Exécuter les serveurs MCP dans des conteneurs isolés

Exécutez chaque serveur MCP dans un conteneur isolé avec des ressources minimales. L'accès au réseau doit être restreint à ce qui est strictement nécessaire.

# Docker Compose isolation MCP
services:
  mcp-server:
    image: mcp-server:latest
    deploy:
      resources:
        limits:
          cpus: "0.5"
          memory: 512M
    networks:
      - mcp-internal
    network_mode: bridge
    # Pas d'accès réseau externe
    #
    # Ajouter un profil seccomp pour le filtrage des appels système
🔐

Implémenter les accès de moindre privilège pour les outils MCP

Mettez en œuvre l'accès du moindre privilège. Chaque outil MCP devrait avoir des permissions explicites, et les agents ne devraient accéder qu'aux outils dont ils ont véritablement besoin.

# Configuration des permissions MCP
mcp_tools:
  filesystem:
    allowed_paths: ["/data/agent/workspace"]
    read_only: true
  network:
    allowed_domains: ["api.example.com"]
    max_requests_per_minute: 10
  execution:
    timeout_seconds: 30
    memory_limit: "256M"
📋

Audits de sécurité réguliers des configurations MCP

Les audits de sécurité réguliers sont essentiels. Examinez les configurations MCP, testez les vulnérabilités de prompt injection et vérifiez les mécanismes d'isolation.

  • Examiner toutes les permissions de serveur MCP mensuellement
  • Tester le prompt injection contre chaque outil MCP
  • Vérifier l'isolation des conteneurs et les limites de ressources
  • Auditer les journaux pour les activités MCP inhabituelles
  • Mettre à jour les serveurs MCP régulièrement pour les correctifs de sécurité

Démarrage rapide : Checklist de sécurité MCP

1.Valider toutes les réponses des serveurs MCP
2.Exécuter les serveurs MCP dans des conteneurs isolés
3.Mettre en œuvre des permissions du moindre privilège
4.Limiter l'accès réseau pour chaque serveur MCP
5.Surveiller les patterns d'utilisation des outils MCP
6.Planifier des audits de sécurité réguliers