Explication de la sécurité MCP #
Le protocole MCP (Model Context Protocol) n'a pas été accompagné d'un avertissement de sécurité. Il est apparu comme une avancée majeure en matière de productivité, un standard qui permet aux assistants IA d'aller au-delà de la fenêtre de chat et d'interagir directement avec les outils, les fichiers, les API, et pipelineAu moment où les équipes de sécurité ont commencé à se demander ce qu'était MCP, il était déjà exécuté à grande échelle dans les environnements de développement.
C’est précisément dans ce fossé entre l’adoption et la gouvernance que les attaques contre la chaîne d’approvisionnement trouvent leur cible. Comprendre ce qu’est le protocole MCP (Model Context Protocol), comment fonctionnent les serveurs MCP et quels risques ils engendrent est désormais essentiel. Exigence fondamentale pour toute équipe DevSecOps opérant dans un environnement natif d'IA.
Qu’est-ce que le protocole de contexte de modèle ? Définition #
Le protocole MCP (Model Context Protocol) est un protocole ouvert standard Cela définit comment les grands modèles de langage communiquent avec les outils, les sources de données et les services externes. Alors qu'un assistant IA traditionnel ne répond que par du texte, un assistant compatible MCP peut entreprendre des actions (lire des fichiers, interroger des API, exécuter des commandes, installer des dépendances et interagir avec le système). CI/CD pipelines) par le biais d'une interface structurée qui relie le modèle à l'environnement du développeur.
Le MCP a été introduit par Anthropic en novembre 2024 et a depuis été adopté par les principaux outils de programmation d'IA, notamment Claude, Cursor, Windsurf et GitHub Copilot. Il fournit un langage commun pour la communication entre l'IA et les outils, à l'instar du protocole HTTP qui fournit un langage commun pour les communications web.
Si l'assistant IA est le cerveau, le serveur MCP est le système nerveux qui le relie au corps des outils de développement.
Comment ça marche? #
MCP fonctionne selon une architecture client-serveur avec trois composants :
- L'hôte MCP L'application utilisée par le développeur est un EDI comme VS Code, Cursor ou Windsurf, ou un assistant IA comme Claude. L'hôte gère les connexions aux serveurs MCP et contrôle les ressources accessibles au modèle.
- Le client MCP Il réside au sein du système hôte et maintient une connexion directe avec chaque serveur MCP. Il traduit les requêtes du modèle en appels d'outils structurés et renvoie les résultats au modèle.
- Le serveur MCP Il sert de passerelle vers les capacités externes. Il expose les outils, les ressources et les invites que le modèle peut invoquer. Un serveur MCP peut se connecter à un système de fichiers, un dépôt GitHub, une base de données, etc. CI/CD plateforme ou scanner de sécurité. Chaque appel d'outil effectué par le modèle passe par le serveur MCP, qui l'exécute et renvoie le résultat.
Lorsqu'un développeur demande à un assistant IA d'analyser un projet, de corriger une vulnérabilité ou d'installer une dépendance, le modèle n'exécute pas directement ces actions. Il envoie une requête structurée au serveur MCP concerné, qui réalise l'action à l'aide d'outils locaux autorisés et renvoie le résultat.
Assistants IA traditionnels vs MCP : qu’est-ce qui a changé ? #
Avant MCP, les assistants de programmation IA étaient fondamentalement passifs. Ils pouvaient lire le code que vous colliez dans la conversation et suggérer des modifications, mais ils ne pouvaient pas agir directement sur votre environnement. MCP change complètement ce modèle.
Cette différence est cruciale pour la sécurité, car elle détermine la portée d'un assistant IA. Un assistant traditionnel qui donne de mauvais conseils vous coûte un cycle de revue de code. Un assistant compatible MCP qui commet une action malveillante (installation d'une dépendance malveillante, exécution d'un script de compilation compromis ou transmission d'identifiants à un point de terminaison externe) provoque un incident.
MCP transforme les assistants IA de conseillers en opérateurs. Ce changement exige les mêmes contrôles de sécurité que ceux appliqués à tout opérateur ayant accès à votre infrastructure.
Qu'est-ce qu'un serveur MCP ? #
Un MCP Le serveur est un processus léger qui expose des fonctionnalités aux clients d'IA compatibles MCP. Il définit un ensemble d'outils (actions discrètes que le modèle peut invoquer), ainsi que des ressources que le modèle peut lire et des modèles d'invites qu'il peut utiliser.
Les serveurs MCP permettent une large gamme d'intégrations : accès au système de fichiers, GitHub, Slack, bases de données, scanners de sécurité, etc. CI/CD Les développeurs peuvent exécuter des serveurs MCP localement, au sein de l'infrastructure de leur organisation, ou se connecter à des serveurs MCP hébergés par des tiers et fournis par des prestataires externes.
C’est dans cette dernière catégorie que le risque de sécurité devient concret. Un serveur MCP tiers est un processus externe ayant accès à l’environnement du développeur. Des études montrent que 5.5 % des serveurs MCP publics présentent des failles d’empoisonnement d’outils et 43 % des vulnérabilités d’injection de commandes. Autrement dit, une part importante des serveurs MCP accessibles au public peut être exploitée pour manipuler le comportement de l’IA, exfiltrer des données ou exécuter des commandes non autorisées.
Risques de sécurité liés au MCP : ce que les équipes DevSecOps doivent savoir #
MCP introduit une nouvelle surface d'attaque que les outils AppSec traditionnels n'ont pas été conçus pour couvrir. Les principaux risques sont les suivants :
Serveurs Shadow MCP. Les développeurs configurent les serveurs MCP localement sans approbation ni gouvernance formelle, ce qui crée un manque d'inventaire. Les équipes de sécurité ne peuvent pas protéger ce qu'elles ne voient pas.
Empoisonnement des outils. Un serveur MCP malveillant expose des outils d'apparence légitime qui exécutent des actions nuisibles lorsqu'ils sont invoqués par le modèle. Ce dernier, se fiant aux définitions d'outils qu'il reçoit, peut invoquer un outil infecté sans qu'aucun signe extérieur ne s'en aperçoive.
Injection rapide via MCP. Des contenus malveillants présents dans des fichiers, des documents ou des réponses d'API peuvent injecter des instructions dans le contexte du modèle, manipulant ainsi son comportement. Un serveur MCP qui lit du contenu externe et le transmet au modèle sans le nettoyer constitue un vecteur d'injection directe de requêtes.
Manipulation de la dépendance. Les serveurs MCP qui gèrent l'installation des paquets ou la résolution des dépendances peuvent être compromis pour installer des paquets malveillants. Lorsqu'un agent d'IA installe une dépendance de manière autonome via un serveur MCP, aucun contrôle humain n'intervient entre le paquet malveillant et le serveur. pipeline.
Exposition des titres de compétences. Les serveurs MCP gèrent fréquemment des jetons d'authentification, des clés API et des variables d'environnement. Une configuration MCP non sécurisée peut exposer ces informations d'identification via le contexte du modèle ou les journaux.
Exécution d'outil non autorisée. Sans listes d'autorisation strictes, un assistant compatible MCP peut invoquer des outils qui dépassent son champ d'application prévu, en modifiant l'infrastructure de production, en accédant à des référentiels sensibles ou en effectuant des appels API à des services externes.
Meilleures pratiques de sécurité #
La sécurisation de MCP exige de traiter chaque serveur MCP comme une intégration privilégiée, et non comme une simple commodité pour les développeurs.
- Bloquez les dépendances malveillantes au niveau du point de terminaison. Lorsqu'un agent compatible MCP installe une dépendance, cette installation doit être interceptée et analysée avant son exécution. La détection par signature est insuffisante ; les paquets malveillants ciblant les outils d'IA sont publiés plus rapidement que les signatures ne peuvent les détecter.
- Inventoriez chaque serveur MCP. Sachez quels serveurs MCP sont configurés dans vos environnements de développement, localement, dans votre CI/CD pipelineet dans vos configurations IDE. Shadow MCP pose le même problème que le shadow IT, avec un accès direct à vos outils.
- Appliquer une liste blanche MCP. Seuls les serveurs MCP approuvés sont autorisés à fonctionner. Tout serveur non approuvé tentant de se connecter doit être bloqué au niveau du point de terminaison avant toute interaction avec le modèle.
- Appliquer le principe du moindre privilège aux définitions d'outils MCP. Chaque serveur MCP ne doit exposer que les outils nécessaires à sa fonction spécifique. Un serveur de lecture de fichiers n'a pas vocation à exposer des fonctionnalités d'installation de paquets.
- Valider et assainir le contenu transitant par MCP. Tout contenu externe (fichiers, réponses d'API, résultats de base de données) transitant par un serveur MCP et intégré au contexte du modèle constitue un vecteur potentiel d'injection de requêtes. Il convient de le considérer comme une entrée non fiable.
- Surveiller les interactions MCP en temps réel. Consignez chaque appel d'outil effectué par le modèle via les serveurs MCP. Les comportements anormaux (appels d'outils inattendus, connexions sortantes depuis les environnements de compilation, appels d'outils en dehors des heures normales de travail) sont des indicateurs précoces de compromission.
Incidents de sécurité réels #
La sécurité des MCP n'est pas théorique. Début 2026, une étude de l'Université Queen's a démontré que les piles MCP possèdent une Probabilité d'exploitation de 92 % Lorsque plusieurs plugins sont combinés, la campagne PromptMink (attribuée au groupe Famous Chollima, soutenu par l'État nord-coréen) a spécifiquement conçu des paquets npm malveillants pour tromper les agents de programmation IA opérant via des interfaces de type MCP et les inciter à installer des logiciels malveillants de vol d'identifiants. Ces paquets étaient conçus pour paraître légitimes aux agents IA, même s'ils auraient été détectés par un examinateur humain.
En juin 2026, Xygeni a confirmé les clusters ollama-helpers et openai-agents-helpers (Plus de 35 versions combinées, publiées par vagues coordonnées) ciblent directement les packages utilisés dans les flux de développement d'agents où les connexions MCP sont fréquentes. Lorsqu'un agent d'IA installe une dépendance de manière autonome via un serveur MCP, aucun contrôle humain n'intervient entre le package malveillant et son exécution.
Qu’est-ce que le MCP dans le contexte de la sécurité de la chaîne d’approvisionnement en IA ? #
MCP se situe à l'intersection de la sécurité de l'IA et software supply chain securityIl s'agit de la couche qui relie les modèles d'IA aux outils, aux référentiels et à l'infrastructure qui définissent le monde moderne. SDLCce qui en fait simultanément le point d'intégration le plus puissant et la surface d'attaque la plus exposée dans le développement natif de l'IA.
Les solutions AppSec traditionnelles s'arrêtent au niveau du dépôt. Les solutions EDR, quant à elles, surveillent le système d'exploitation. Aucune des deux n'a été conçue pour gérer les serveurs MCP, les appels d'outils ou l'installation de dépendances via l'IA. C'est précisément dans cette lacune que les attaques basées sur les serveurs MCP trouvent leur cible.
La sécurisation de MCP exige une visibilité sur les serveurs MCP en cours d'exécution, les outils qu'ils exposent, les modèles utilisés et la validation des dépendances et des fichiers traités. Il s'agit donc d'un inventaire IA, d'une surveillance comportementale et d'une sécurité de la chaîne d'approvisionnement combinés en un seul problème.
Sécurisation du MCP avec Xygeni
#
La sécurité du protocole MCP exige bien plus que des documents de politique et des listes de bonnes pratiques. Elle requiert une visibilité continue sur les serveurs MCP exécutés dans vos environnements de développement, une surveillance comportementale de chaque appel d'outil effectué par le modèle et la capacité de bloquer les dépendances malveillantes au niveau du point de terminaison avant leur exécution, avant même l'existence d'une signature. Comprendre le fonctionnement du protocole MCP est essentiel.
La plateforme de sécurité IA de Xygeni Couvre l'intégralité de la surface d'attaque MCP : inventaire de chaque serveur MCP via AI-SPM, détection de l'empoisonnement d'outils, de l'injection de requêtes et des configurations MCP non sécurisées grâce à une analyse de sécurité IA alignée sur le Top 10 OWASP MCP, et application de la politique au niveau du poste développeur via Shield, bloquant les serveurs MCP non approuvés et les dépendances malveillantes avant qu'ils n'atteignent le système. pipeline.
Si vos équipes utilisent des assistants de programmation IA, la couche MCP fait déjà partie de votre surface d'attaque. La question est de savoir si vous pouvez la détecter.

QFP #
MCP (Model Context Protocol) est un protocole ouvert standard Cela permet aux assistants IA de communiquer avec des outils, des sources de données et des services externes. Les modèles d'IA peuvent ainsi effectuer des actions (lecture de fichiers, interrogation d'API, installation de paquets, exécution de commandes) via une interface structurée plutôt que de se contenter de répondre par du texte.
Les plateformes de gestion de contenu (MCP) présentent des risques de sécurité importants si elles ne sont pas correctement encadrées. Des recherches montrent que… 5.5 % des serveurs MCP publics présentent des failles d'empoisonnement d'outils et 43 % présentent des vulnérabilités d'injection de commandes.La sécurisation de MCP nécessite l'inventaire de chaque serveur MCP, l'application de listes blanches, le principe du moindre privilège et la surveillance des appels d'outils en cours d'exécution.
Une API traditionnelle est appelée par le code écrit et contrôlé par un développeur. Les appels d'outils MCP sont déclenchés par un modèle d'IA qui interprète la tâche. Ce modèle détermine les outils à appeler, leur ordre d'exécution et leurs paramètres, ce qui rend les interactions MCP plus difficiles à prévoir et à auditer que les appels d'API traditionnels.
L'empoisonnement d'outils est une attaque où un serveur MCP malveillant expose des définitions d'outils qui semblent légitimes, mais qui exécutent des actions nuisibles lorsqu'elles sont invoquées par le modèle. Comme ce dernier fait confiance aux définitions d'outils qu'il reçoit des serveurs MCP connectés, il peut invoquer un outil empoisonné sans aucun avertissement visible.
L'injection de requêtes via MCP se produit lorsque du contenu malveillant présent dans des fichiers, des documents ou des réponses d'API (transmis par un serveur MCP dans le contexte du modèle) manipule le comportement de ce dernier. C'est l'équivalent, pour MCP, de l'injection SQL : des données non fiables influençant le comportement d'un système de confiance.