☰ Menu

30.09.2026 · Signal Titans Editorial

Una vulnerabilidad en el SDK de Python para MCP permite el robo de credenciales OAuth

Una falla crítica en el SDK oficial de Python para el Model Context Protocol permite que servidores malintencionados sustraigan credenciales OAuth de aplicaciones IA.

Una llave física brillante situada junto a un elegante candado digital de cristal sobre un fondo azul oscuro.

Se ha descubierto una vulnerabilidad de seguridad en el SDK oficial de Python para el Model Context Protocol (MCP) que podría permitir a servidores maliciosos engañar a aplicaciones cliente para que revelen credenciales OAuth confidenciales.

Mecanismo de la vulnerabilidad

Según los responsables del SDK y la firma de seguridad Cycode, las versiones afectadas no verifican correctamente la ubicación del servidor de autorización cuando un cliente MCP realiza la solicitud. Este fallo permite que un servidor no confiable intercepte secretos de cliente, códigos de autorización y claves de prueba PKCE al redirigir la transmisión de tokens hacia un punto final controlado por el atacante. Cycode demostró que los atacantes pueden utilizar estas credenciales robadas para obtener tokens de acceso válidos con todos los permisos otorgados originalmente a la aplicación. El problema se clasifica como de gravedad alta, con una puntuación CVSS de 7.5 para proveedores que operan sin intervención humana y de 6.5 para proveedores interactivos.

Configuraciones afectadas

Las aplicaciones son vulnerables si utilizan el SDK como cliente MCP basado en HTTP con proveedores OAuth específicos, tales como OAuthClientProvider, ClientCredentialsOAuthProvider, PrivateKeyJWTOAuthProvider, o la versión obsoleta 1.x RFC7523OAuthClientProvider, al conectarse a servidores no confiables. Los clientes locales stdio, los servidores MCP construidos con el SDK y los clientes que gestionan sus propios tokens no se ven afectados. Hasta el 29 de septiembre no se habían asignado identificadores CVE.

Remediación y mitigación

Los desarrolladores deben actualizar a la versión 1.30.0 (para la rama 1.x) o a la versión 2.2.0 (para la rama 2.x), en las cuales el cliente determina de antemano el servicio de inicio de sesión esperado y rechaza cualquier detalle que no coincida. Sin embargo, la actualización por sí sola es insuficiente para implementaciones de ClientCredentialsOAuthProvider y PrivateKeyJWTOAuthProvider, las cuales requieren además especificar un parámetro 'issuer' para definir el servicio de inicio de sesión autorizado. Adicionalmente, los administradores deben eliminar registros de clientes OAuth almacenados, rotar secretos de cliente de larga duración y revocar tokens activos si sospechan de una exposición previa a servidores no confiables.

Ilustración editorial generada con IA; no es una fotografía documental.

Fuente: Official MCP Python SDK Flaw Can Let Malicious Servers Steal OAuth Credentials