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
Zero Trust pour les agents IA : on commence par l'inventaire, parce qu'on ne gouverne pas ce qu'on ne voit pas
Analyse de « Zero Trust for AI Agents Starts With Fixing Zero Visibility » (THN, 26 septembre 2026) : shadow AI, absence de visibilité unifiée, aud...
15/10/2026Graphalgo : le malware nord-coréen s'installe dans vos providers Terraform
Analyse de la campagne Graphalgo sur Terraform et Go : typosquatting kreuzwenker/docker, activation par hash, C2 Slack et Ethereum, STRIDE, impact ...
14/10/2026PixelLeak : 13 000 captures d'écran internes publiées par des agents de code, sans attaquant et sans que personne l'ait demandé
Analyse de PixelLeak : des agents de code exposent des captures d'écran internes dans des dépôts GitHub publics faute de pouvoir les attacher à une...
13/10/2026Plugin4Shell : le pinning par SHA ne vérifiait rien dans quatre agents de code
Analyse de Plugin4Shell : contournement du pinning par SHA dans quatre agents de code, mécanisme Git, statut des correctifs, STRIDE, impact et miti...
09/10/2026Cette semaine : un ver qui compromet 61,8 % des machines, un correctif public attaqué en dix minutes, et un formulaire web qui fait fuiter votre CRM
Récap hebdomadaire du 27 septembre au 2 octobre 2026 : ver agentique et fin de l'embargo, SalesBleed sur Agentforce, Jev, mix-up OAuth du SDK MCP P...
04/10/2026