système : OPÉRATIONNEL
← retour à tous les hacks
INFRASTRUCTURE CRITICAL NEW

Les serveurs MCP exposés, tremplins vers la prise de contrôle du cloud

Une injection de commande dans les serveurs MCP cloud (CVE-2026-5058/5059) permet d'atteindre le service de métadonnées, de voler le rôle IAM et de pivoter vers tout le compte cloud.

2026-06-12 // 6 min affects: aws-mcp-server, azure-mcp-server, serveurs MCP sur VM cloud

De quoi s’agit-il ?

Un serveur Model Context Protocol (MCP) est le pont qui permet à un agent IA d’appeler des outils — exécuter une requête, interroger une API, gérer des ressources cloud. Deux tendances se sont télescopées au printemps 2026. D’abord, les chercheurs de Trend Micro Alfredo Oliveira et David Fiser ont signalé (28 avril 2026) que le nombre de serveurs MCP exposés sur l’internet public, sans authentification ni chiffrement, avait presque triplé, passant de 492 à 1 467. Ensuite, des injections de commande critiques sont apparues dans des implémentations MCP cloud populaires : CVE-2026-5058 et CVE-2026-5059 dans le aws-mcp-server communautaire (toutes deux CVSS 9.8, sans authentification, publiées les 10 et 11 avril 2026), ainsi qu’une faille Azure non divulguée suivie sous ZDI-CAN-28042. Le résultat n’est pas une simple exposition de données : c’est un chemin direct d’un outil IA vulnérable vers la compromission totale du compte cloud.

Comment ça fonctionne

aws-mcp-server expose un gestionnaire de « commandes autorisées » qui construit une commande shell à partir d’une chaîne fournie par l’utilisateur sans neutralisation correcte (CWE-78, injection de commande OS). Un attaquant capable d’atteindre l’endpoint injecte des métacaractères shell — ;, |, &&, accents graves — à côté d’une commande arbitraire, que le serveur exécute dans son propre contexte de processus. Aucune authentification n’est requise.

C’est le pivot qui rend la faille grave. Ces serveurs tournent généralement sur une VM cloud (une instance EC2, une VM Azure) dotée d’un rôle IAM attaché, afin que l’agent puisse gérer des ressources cloud pour le compte de l’utilisateur. Une fois l’exécution de code obtenue sur cet hôte, l’attaquant interroge le service de métadonnées de l’instance :

GET http://169.254.169.254/latest/meta-data/iam/security-credentials/[ROLE]

Cela renvoie des identifiants temporaires pour le rôle IAM de la VM. Avec eux, l’attaquant quitte le serveur MCP pour rejoindre le plan de contrôle cloud — lister, lire, modifier et supprimer tout ce que le rôle peut atteindre. Trend Micro décrit la même chaîne menant à une évasion de conteneur et de VM.

Pourquoi c’est important

C’est l’association mortelle de l’exécution de code à distance et d’identifiants cloud ambiants. Un serveur MCP ressemble à un composant applicatif : on l’expose sur un port pratique en oubliant que l’hôte sous-jacent détient un rôle IAM puissant. Le scan de Trend Micro a relevé que plus de 90 % des serveurs exposés offraient un accès en lecture directe à leurs sources de données, 1 227 encore sur le transport SSE déprécié, et des outils comme execute_sql accessibles sur 70 hôtes — dont au moins trois exposant des dossiers médicaux de patients. Le rayon d’impact d’un seul bug d’injection de commande, c’est donc l’ensemble du compte cloud que le rôle du serveur peut toucher, pas seulement les données de l’agent.

Défenses

Traitez les serveurs MCP comme une infrastructure cloud, pas comme des jouets expérimentaux.

  • N’exposez jamais un serveur MCP sur l’internet public. Liez-le à localhost ou à un réseau privé ; exigez authentification et TLS sur chaque transport.
  • Imposez IMDSv2 et une limite de sauts. Exigez des requêtes de métadonnées avec jeton de session et fixez la limite de sauts de réponse à 1, pour qu’un processus compromis dans un conteneur n’atteigne pas aussi facilement l’endpoint de métadonnées.
  • Appliquez le moindre privilège au rôle de l’instance. La VM hébergeant un serveur MCP ne doit porter que les permissions IAM minimales ; évitez les politiques * larges qui transforment une RCE en prise de contrôle du compte.
  • Corrigez ou remplacez les serveurs vulnérables. Aucune version corrigée de aws-mcp-server n’était disponible lors de la divulgation (versions affectées <= 1.7.0) ; figez-vous sur une implémentation maintenue et auditée, et validez chaque argument d’outil côté serveur.
  • Isolez et surveillez. Exécutez les serveurs MCP dans des conteneurs isolés avec filtrage de sortie, et alertez sur les accès au service de métadonnées et sur les invocations inattendues d’outils execute_sql/shell.
  • N’installez que des serveurs MCP de sources vérifiées, et traitez toute configuration de serveur fournie de l’extérieur comme une entrée non fiable.

Statut

ÉlémentDétail
CVE-2026-5058 / CVE-2026-5059aws-mcp-server, CVSS 9.8, CWE-78, sans authentification
Affectéaws-mcp <= 1.7.0 ; aucune version corrigée à la divulgation
Faille AzureZDI-CAN-28042 (Microsoft), CVSS 9.8, détails non divulgués
Exposition1 467 serveurs MCP publics (contre 492), selon Trend Micro, 28 avril 2026
DivulgationNVD a publié CVE-2026-5059 le 10 avril 2026 (ZDI-26-245)

Sources