
mcp-attack-detection-sentinel — Mis à jour !
Laboratoire de détection Sentinel pour les chaînes d'attaque MCP : CVE-2026-26118 vol de jeton SSRF, empoisonnement d'outils, exfiltration entre serveurs, post-exploitation d'identité. Correspond à l'OWASP Agentic Top 10. 5 règles d'analyse, 7 requêtes de chasse, classeur. En complément de nineliveszerotrust.com.
Détection d'attaques MCP — Laboratoire de recherche Sentinel
Recherche de détection Sentinel pour les modèles d'attaque MCP (Model Context Protocol) : accès d'identité inhabituel après un événement lié à MCP, mutation de définition d'outil, accès inter-ressources et comportement possible de post-exploitation. Les règles correspondent au OWASP Top 10 for Agentic Applications (2026).
Statut de publication : ce dépôt ne dispose actuellement pas d'un article compagnon Nine Lives publié et n'est volontairement pas répertorié dans le catalogue Labs du site web. Il reste un élément de recherche autonome.
La règle CVE-2026-26118 est une heuristique basée sur le comportement, inspirée par la divulgation SSRF du serveur MCP Azure. Elle ne prouve pas que la CVE a été exploitée ni qu'un jeton a été volé. Microsoft décrit le problème comme une SSRF pouvant permettre à un attaquant réseau autorisé d'élever ses privilèges ; les plages de packages concernées et l'avis du fournisseur sont enregistrés par NIST NVD.
Ce qui est déployé
| Resource | Type | OWASP Agentic |
|---|---|---|
| LAB - MCP SSRF-Informed Identity Access Anomaly (CVE-2026-26118) | Règle d'analyse comportementale (élevée) | ASI03 |
| LAB - MCP Tool Definition Mutation (Rug Pull Detection) | Règle d'analyse (élevée) | ASI01, ASI04 |
| LAB - MCP Cross-Server Data Exfiltration Pattern | Règle d'analyse (moyenne) | ASI02, ASI03 |
| LAB - Anomalous MCP Tool Invocation Spike | Règle d'analyse (moyenne) | ASI02 |
| LAB - MCP Identity Post-Exploitation Chain | Règle d'analyse (élevée) | ASI03 |
| MCP Attack Detection — Security Posture | Classeur | Tous |
| 7 requêtes de chasse | KQL (manuel) | ASI01–ASI07 |
Couverture MITRE ATT&CK
| Technique | ID | Règle / Requête |
|---|---|---|
| Valid Accounts: Cloud | T1078.004 | Identity Access Anomaly, Post-Exploitation Chain |
| Adversary-in-the-Middle | T1557 | Contexte pour la chasse Inter-Agent Communications ; la requête elle-même détecte les lacunes d'accès conditionnel, pas l'interception |
| Supply Chain Compromise | T1195.002 | Tool Definition Mutation, Supply Chain |
| Data from Cloud Storage | T1530 | Cross-Server Exfiltration |
| Unsecured Credentials | T1552 | Cross-Server Exfiltration, Post-Exploitation |
| Cloud API | T1059.009 | Invocation Spike, Code Execution |
| Serverless Execution | T1648 | Code Execution |
| Stored Data Manipulation | T1565.001 | Memory & Context Poisoning |
Démarrage rapide
# Review the exact plan. This performs no mutations.
./scripts/Deploy-Lab.ps1 `
-ResourceGroup "rg-sentinel-lab" `
-WorkspaceName "law-sentinel-lab" `
-WhatIf
# Deploy analytics rules (disabled), hunting queries, and workbook.
./scripts/Deploy-Lab.ps1 `
-ResourceGroup "rg-sentinel-lab" `
-WorkspaceName "law-sentinel-lab"
# After reviewing the queries, opt in to enabling the rules.
./scripts/Deploy-Lab.ps1 `
-ResourceGroup "rg-sentinel-lab" `
-WorkspaceName "law-sentinel-lab" `
-EnableRules
# Validate the exact manifest-owned deployment.
./scripts/Test-MCPDetections.ps1 `
-ResourceGroup "rg-sentinel-lab" `
-WorkspaceName "law-sentinel-lab"
Prérequis
- Abonnement Azure avec Microsoft Sentinel activé
- Paramètres de diagnostic Entra ID :
AuditLogs,ServicePrincipalSignInLogs,ManagedIdentitySignInLogs - Connecteur Azure Activity Log activé dans Sentinel
- PowerShell 7.0+ avec Azure CLI
- Rôles suffisants pour gérer les règles d'analyse Sentinel, les recherches enregistrées Log Analytics et les classeurs dans le groupe de ressources cible. Utilisez les affectations de rôles les plus restreintes spécifiques au locataire qui satisfont ces opérations.
Modèle de sécurité et de propriété
- Tous les ID de règles et de classeurs sont déterministes et limités à l'espace de travail exact.
- Le déploiement écrit un manifeste
.mcp-attack-detection-state.jsonréservé au propriétaire avant la première mutation cloud. - Les ressources existantes sont pré-vérifiées avant toute écriture. Le script refuse les ressources de même ID sans la provenance attendue et ne les adopte jamais sans son manifeste.
- Les règles d'analyse sont déployées désactivées, sauf si
-EnableRulesest explicitement fourni. -WhatIfeffectue les mêmes lectures et contrôles de collision avec zéro écriture.- Le nettoyage n'utilise que les ID exacts du manifeste, revalide la provenance et ne recherche jamais par préfixe de nom d'affichage, catégorie ou sous-chaîne.
- Les déploiements effectués avec une version antérieure de ce dépôt ne sont pas automatiquement adoptés ni supprimés. Inventoriez ces ressources manuellement avant d'utiliser cette version.
Sources de données
| Table | Objectif |
|---|---|
AADManagedIdentitySignInLogs | Rechercher les modèles d'accès inhabituels des identités managées nommées MCP |
AADServicePrincipalSignInLogs | Surveiller les modèles d'authentification des principaux de service MCP |
AzureActivity | Suivre les opérations sur les ressources MCP, les déploiements et les modifications de configuration |
Nettoyage
./scripts/Deploy-Lab.ps1 `
-ResourceGroup "rg-sentinel-lab" `
-WorkspaceName "law-sentinel-lab" `
-Destroy
Exécutez d'abord la même commande avec -WhatIf pour prévisualiser les suppressions exactes. Le nettoyage échoue de manière sécurisée si le manifeste est absent, pointe vers un autre abonnement/espace de travail, ou si une ressource ne porte plus la provenance de ce laboratoire.
Limite des preuves
Ces requêtes sont des points de départ pour la recherche. Elles reposent sur des heuristiques de nommage et sur des schémas Entra et Azure Activity spécifiques au locataire. Validez la disponibilité des tables, les noms de champs, les lignes de base, les listes d'autorisation, le coût des requêtes et le comportement des faux positifs dans un espace de travail hors production avant de les activer. Elles fournissent des preuves de comportement suspect, pas une attribution d'exploit.
Références
- CVE-2026-26118 — Avis du fournisseur Microsoft
- CVE-2026-26118 — Enregistrement NIST NVD et versions affectées
- OWASP Top 10 des applications agentiques 2026
Licence
MIT