2 min de lecture
~7 minutes
Le SDK Python officiel du Model Context Protocol validait mal l’identité de son serveur d’authentification. Un serveur MCP malveillant pouvait se faire passer pour le vrai fournisseur OAuth et repartir avec le client secret, l’authorization code et la preuve PKCE. CVSS 7.5, corrigé début septembre, requalifié faille de sécurité le 28.
Un bug corrigé, puis requalifié trois semaines après
Le 7 septembre, le SDK Python officiel du MCP sort en version 1.30.0 et 2.2.0. Les notes de version évoquent un “changement de comportement” sur la validation OAuth. Rien de plus. Il faut attendre le 28 pour que Cycode publie son advisory et lève le voile : ce changement de comportement colmatait une faille qui laissait un serveur MCP malveillant voler les secrets OAuth d’un client. Trois semaines entre le patch et l’annonce publique, et toujours pas de CVE au moment où j’écris ces lignes.
Le mécanisme n’a rien d’exotique pour qui suit la recherche OAuth depuis dix ans : c’est un mix-up attack, une classe d’attaque documentée depuis le papier de Fett, Küsters et Schmitz en 2016. Le SDK ne validait pas correctement quel serveur d’authentification répondait réellement à sa requête. Un serveur MCP compromis ou malveillant pouvait pointer le client vers son propre endpoint OAuth au lieu du vrai, et le client, sans moyen fiable de vérifier qui parlait, suivait.
Note du PandaRedacteur : ça fait dix ans que la littérature académique documente le mix-up attack sur OAuth. Il a fallu attendre qu’un protocole tout neuf le réimplémente pour qu’on en reparle. Le train de l’IA va vite ; la mémoire collective de la sécu, moins.
Ce que le client perd
La suite de cette analyse est publiée sur Substack :
- Ce que le client perd (le butin en trois pièces, les deux scores CVSS)
- On validait le contenu, pas l’émetteur (le correctif
issuer=, le diagramme de séquence de l’attaque) - Analyse STRIDE
- Impact potentiel
- Mitigations (les 5 recommandations concrètes)
Le reste de cet article est publié sur la newsletter, en accès libre pour tous les abonnés Substack.
Quelques références pour aller plus loin
- The Hacker News : Official MCP Python SDK Flaw Can Let Attackers Steal OAuth Client Credentials
- Construire un système MCP sécurisé : authentifier clients, agents et attester qui fait quoi
- MCP05:2025 - Command Injection & Execution
- OWASP MCP Top 10 : les 10 menaces critiques du Model Context Protocol
- owasp.org
- ✓ Le SDK Python officiel du MCP validait mal l'identité de son serveur d'authentification, ouvrant la voie à un mix-up attack classique de la littérature OAuth.
- ✓ Trois secrets exposés : client secret, authorization code et preuve PKCE, suffisants pour obtenir un jeton d'accès valide.
- ✓ CVSS 7.5 (non-interactif) / 6.5 (interactif), corrigé en 1.30.0 et 2.2.0, sans CVE assigné au moment de l'annonce.
-
✓
Le correctif tient dans un paramètre,
issuer=, qui nomme enfin explicitement le fournisseur d'authentification attendu. - ✓ Aucune exploitation active documentée à ce jour, mais un SDK de référence touché signifie une propagation potentiellement large.

Articles lies
Supply chain 2026 : on a signé partout, on a vérifié nulle part
Bilan de supply chain 2026 (volet 1/3) : de Trivy à LiteLLM, les contrôles ont produit des attestations que personne n'a vérifiées. Incidents, deux...
09/11/2026Approval gate bypass : quand l'humain dans la boucle n'est qu'un return True
Analyse de quinze CVE CVSS ≥ 7.5 publiées du 20 octobre au 3 novembre 2026 sur les agents IA : approval gate bypass (OpenSRE, EvoScientist, LangAlp...
06/11/2026OWASP Agent Control Standard : un standard pour contrôler les agents à l'exécution
Analyse de l'OWASP Agent Control Standard (ACS) v0.1.0 : hooks, Guardian Agent, trace OpenTelemetry/OCSF, AgBOM. Ce qu'il apporte, ce qu'il ne gara...
04/11/2026Cette semaine : des logs pris pour des ordres, une gateway IA au KEV, et deux binaires piégés aux identités valides
Récap hebdomadaire du 26 au 28 octobre 2026 : Poisoning the Watchtower et l'injection par les logs, LiteLLM au catalogue KEV, première notification...
01/11/2026OVHcloud CLI et LiteLLM : à deux jours d'écart, les mêmes contrôles absents
Analyse comparée des compromissions OVHcloud CLI (19/10/2026) et LiteLLM 1.107.0 (21/10/2026) : chaîne d'attaque, contrôles SLSA, releases immuable...
28/10/2026