30.09.2026 · Signal Titans Editorial
Une vulnérabilité du SDK Python officiel de MCP permet le vol d’identifiants OAuth
Une faille de gravité élevée du SDK Python officiel de Model Context Protocol permet à des serveurs malveillants de dérober les identifiants OAuth d’applications d’IA.

Une vulnérabilité de sécurité découverte dans le SDK Python officiel de Model Context Protocol peut permettre à des serveurs malveillants de tromper les applications clientes afin qu’elles transmettent des identifiants OAuth sensibles.
Mécanisme de la vulnérabilité
D’après les responsables du SDK et la société de sécurité Cycode, certaines versions concernées ne vérifient pas correctement l’emplacement du serveur d’autorisation indiqué à un client MCP. Cette faiblesse permet à un serveur non fiable d’intercepter le secret du client, le code d’autorisation et la clé de preuve PKCE, en redirigeant leur transmission vers un point de terminaison contrôlé par l’attaquant. Cycode a démontré que ces informations volées pouvaient servir à obtenir des jetons d’accès valides, dotés de l’ensemble des permissions accordées à l’application. La vulnérabilité est classée comme élevée, avec un score CVSS de 7,5 pour les fournisseurs fonctionnant sans intervention humaine et de 6,5 pour les fournisseurs interactifs.
Configurations concernées
Les applications sont exposées lorsqu’elles utilisent le SDK comme client MCP basé sur HTTP avec certains fournisseurs OAuth, notamment OAuthClientProvider, ClientCredentialsOAuthProvider, PrivateKeyJWTOAuthProvider ou le fournisseur RFC7523OAuthClientProvider de la branche 1.x, désormais obsolète, tout en se connectant à des serveurs non fiables. Les clients locaux utilisant stdio, les serveurs MCP construits avec ce SDK et les clients qui gèrent eux-mêmes leurs jetons ne sont pas concernés. Aucun identifiant CVE n’avait été attribué au 29 septembre.
Correction et mesures d’atténuation
Les développeurs doivent effectuer la mise à niveau vers la version 1.30.0 de la branche 1.x ou vers la version 2.2.0 de la branche 2.x. Dans ces versions, le client détermine à l’avance le service de connexion attendu et refuse les informations qui désignent un autre service. Toutefois, cette mise à jour ne suffit pas pour les implémentations de ClientCredentialsOAuthProvider et PrivateKeyJWTOAuthProvider : elles nécessitent également le passage explicite d’un paramètre issuer afin de définir le service de connexion autorisé. Les administrateurs devraient aussi supprimer les enregistrements de clients OAuth stockés, renouveler les secrets de client à longue durée de vie et révoquer les jetons actifs s’ils soupçonnent une exposition antérieure à des serveurs non fiables.
Illustration éditoriale générée par IA ; ce n’est pas une photographie documentaire.
Source: Official MCP Python SDK Flaw Can Let Malicious Servers Steal OAuth Credentials