MCP TypeScript client SDK: los transportes HTTP y peticiones OAuth seguían redirecciones cross-origin
Resumen
En las versiones afectadas, los transportes de cliente HTTP y las solicitudes OAuth del SDK seguían redirecciones a cualquier origen.
Si un servidor MCP o un servidor de autorización redirigía una solicitud a otro origen, dicho origen recibía encabezados de solicitud personalizados (como un X-API-Key definido en requestInit.headers) y el encabezado mcp-session-id. En respuestas 307 o 308, también recibía el cuerpo de la solicitud, incluidas las solicitudes de token OAuth con sus refresh_token y client_secret.
En entornos de ejecución actuales, fetch ya descarta el encabezado Authorization entre distintos orígenes.
¿Afecta a mi aplicación?
Sí, si la aplicación utiliza StreamableHTTPClientTransport, SSEClientTransport o las funciones de cliente OAuth del SDK tales como auth(). Los clientes stdio no se ven afectados.
Versiones afectadas:
- Todas las versiones de
@modelcontextprotocol/sdkhasta la 1.31.0 @modelcontextprotocol/clientdesde 2.0.0 hasta 2.2.0
Qué hacer
Actualice a:
- 1.x:
@modelcontextprotocol/sdk1.32.0 o posterior - 2.x:
@modelcontextprotocol/client2.3.0 o posterior
Las redirecciones ahora solo se siguen dentro del mismo origen y quedan deshabilitadas en navegadores. Si su servidor MCP o servidor de autorización redirige intencionadamente a otro origen, configure directamente la URL final. Establecer redirectPolicy: 'follow' en un transporte restaura el comportamiento anterior y la exposición.
Si existe la posibilidad de que una redirección haya alcanzado un host que no controla, rote las claves de API y los client_secret que tenía su aplicación y revoque sus tokens.
Si todavía no puede actualizar, configure un fetch que rechace redirecciones, por ejemplo (url, init) => fetch(url, { ...init, redirect: 'error' }).
Software afectado
Haz clic en una tecnología para ver todas sus vulnerabilidades.
| Plataforma | Paquete | Versiones vulnerables | Corregida en |
|---|---|---|---|
| Paquete de npm | @modelcontextprotocol/client | >= 2.0.0, < 2.3.0 | 2.3.0 |
| Paquete de npm | @modelcontextprotocol/sdk | < 1.32.0 | 1.32.0 |
Referencias
- https://github.com/modelcontextprotocol/typescript-sdk/security/advisories/GHSA-6prh-2h8m-c8cw
- https://github.com/modelcontextprotocol/typescript-sdk/pull/2901
- https://github.com/modelcontextprotocol/typescript-sdk/pull/2902
- https://github.com/modelcontextprotocol/typescript-sdk/commit/30bfe5139f4b0825c90cd725f9a7e3f9af5e120d
- https://github.com/modelcontextprotocol/typescript-sdk/commit/433eb413dc305ebeb93b8ebcde0095a8fc0d5fa0
- https://github.com/modelcontextprotocol/typescript-sdk
- Vector CVSS
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:L/A:N- Debilidad (CWE)
CWE-200- Plataforma
- npm
- Paquete
@modelcontextprotocol/client, @modelcontextprotocol/sdk- Publicada
- 20.10.2026
- Actualizado
- 20.10.2026 21:37
Fuentes y licencias · Editado o traducido por DockRay; se mantienen los derechos y las licencias de las fuentes.
OSV / GitHub Advisory Database - GHSA-6prh-2h8m-c8cw - CC BY 4.0
Historial de vulnerabilidades: @modelcontextprotocol/client
Todas las vulnerabilidades publicadas de este paquete (Paquete de npm), de la más reciente a la más antigua. Muestra si es un fallo aislado o un paquete que hay que vigilar.
- Entradas en total
- 2
- Primera → última
- 10.2026 10.2026
- Sin corrección
- 0
- Explotada en ataques
- 0
Distribución por gravedad
- Alta 1
- Media 1
Divulgaciones por año
- 2026: 2
-
MCP TypeScript client SDK: los transportes HTTP y peticiones OAuth seguían redirecciones cross-origin esta entrada
Identifica las vulnerabilidades de tu aplicación
Con la integración de DockRay y el inventario de software activado, DockRay compara las versiones notificadas de los componentes con las vulnerabilidades conocidas y avisa de las coincidencias confirmadas. La cobertura depende de la tecnología compatible y de los avisos disponibles.