
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 TrueExé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èmeImplé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é