Aller au contenu
Kreomnis.Vigie
CVE-2026-30615Élevée8.0

MCP « by design » : la RCE zéro-clic de Windsurf et la faille architecturale du protocole

Publiée le 12/06/2026// Kreomnis
CVSS 3.1
8.0
EPSS : probabilité d'exploitation
-
Source : FIRST.org, modèle EPSS v3
Produits/versions affectés
  • Windsurf ≤ 1.9544.26

Le contexte

Le Model Context Protocol (MCP) est le standard ouvert qui connecte les agents IA aux outils et sources de données externes. Il s'est imposé très vite dans l'outillage de développement : Cursor, VS Code, Windsurf, Claude Code, Gemini-CLI. Le 15 avril 2026, OX Security a publié une recherche décrivant une vulnérabilité qu'elle qualifie de systémique et critique, au coeur même de MCP.

Le cas le plus sévère porte un CVE dédié : CVE-2026-30615, sur Windsurf (≤ 1.9544.26), CVSS 8.0. Sa particularité : c'est le seul IDE de l'étude où l'exploitation ne demandait aucune interaction utilisateur au-delà de l'ouverture, par l'IDE, d'un contenu contrôlé par l'attaquant. Une RCE zéro-clic.

La mécanique

Quand Windsurf traite un contenu HTML contrôlé par l'attaquant porteur d'instructions malveillantes, celles-ci peuvent :

  1. déclencher une modification non autorisée de la configuration MCP locale,
  2. enregistrer automatiquement un serveur MCP malveillant en transport stdio,
  3. aboutir à l'exécution de commandes au nom de l'utilisateur, à la persistance de la config modifiée et à l'accès aux informations sensibles exposées via l'application.

C'est le scénario du « shadow MCP server » : un serveur MCP non sollicité, injecté à l'insu de l'utilisateur, qui devient un canal d'exécution sur le poste de développement.

La partie qui dépasse Windsurf

OX Security a montré que le problème n'est pas propre à Windsurf : il découle du comportement par défaut de MCP et touche tout l'écosystème (Cursor, VS Code, Claude Code, Gemini-CLI), avec une chaîne d'aboutissement à la RCE.

À traiter factuellement, car c'est le coeur du débat :

  • OX recommandait un correctif au niveau du protocole : une exécution « manifest-only » ou une allowlist de commandes dans les SDK officiels : un seul changement protocolaire propageant la protection à tous les projets en aval.
  • Anthropic a décliné cette modification, qualifiant le comportement de secure default et renvoyant la responsabilité de l'assainissement au développeur : autrement dit « comportement attendu », « by design ».

On ne tranche pas le débat ici : on le pose. Mais pour un RSSI, « by design » ne change rien à l'exposition réelle d'un parc de postes de développement.

Versions impactées

| Produit | Version | Statut | | --- | --- | --- | | Windsurf | ≤ 1.9544.26 | Vulnérable (CVE-2026-30615, zéro-clic) | | Windsurf | postérieure à 1.9544.26 | Corrigée | | Cursor, VS Code, Claude Code, Gemini-CLI | selon avis éditeur | Concernés par la faille architecturale MCP |

Comment patcher

  1. Windsurf : mettre à jour au-delà de la version 1.9544.26.
  2. Hygiène poste-dev (shadow MCP) : le vrai sujet de fond :
    • inventoriez les serveurs MCP déclarés dans chaque IDE de vos développeurs, et alertez sur toute modification non sollicitée de la configuration MCP locale,
    • n'autorisez l'enregistrement de serveurs MCP que depuis des sources de confiance ; idéalement, une allowlist côté organisation,
    • méfiez-vous des contenus (HTML, pages, documents) ouverts automatiquement par un IDE agentique : ce sont désormais des vecteurs d'injection,
    • traitez le poste de développement comme un actif exposé : EDR, journalisation des exécutions de commandes issues des IDE.

PoC

OX Security décrit la chaîne d'exploitation dans sa recherche. Pas de preuve de concept ré-hébergée ici : se reporter à la publication originale et aux avis éditeurs respectifs.

Ce qu'il faut retenir

Une page ouverte par un IDE agentique peut réécrire sa configuration MCP et y greffer un serveur malveillant, sans clic. Et la faille de fond est architecturale, pas locale.

Pour les RSSI et les Dev Factory :

  • Patchez Windsurf au-delà de 1.9544.26, suivez les avis pour Cursor / VS Code / Claude Code / Gemini-CLI.

  • Surveillez les configurations MCP comme vous surveillez les tâches planifiées ou les clés de registre Run : c'est un nouveau point de persistance.

  • Le correctif protocolaire n'arrivera peut-être pas : la responsabilité de l'assainissement retombe sur vous. Posez l'allowlist et la détection vous-mêmes.

  • Kreomnis

Références

#mcp#windsurf#rce#prompt-injection#shadow-mcp