El CVE-2026-34950 es una vulnerabilidad crítica en la implementación de JSON Web Tokens (JWT) fast-jwt que permite a un atacante remoto ejecutar un ataque de confusión de algoritmos, pudiendo falsificar tokens y comprometer sistemas de autenticación. Esta brecha, con una puntuación CVSS de 9.1, revierte el parche aplicado en el CVE-2023-48223 debido a un error en una expresión regular.
Análisis técnico del CVE-2026-34950
La vulnerabilidad CVE-2026-34950 reside en la función publicKeyPemMatcher del archivo crypto.js de la biblioteca fast-jwt. Esta expresión regular utiliza un anclaje ^ que falla si la cadena de la clave pública contiene espacios en blanco iniciales. Un atacante puede explotar este defecto para burlar la validación y forzar al servidor a aceptar tokens JWT firmados con un algoritmo diferente al esperado, típicamente cambiando de RS256 (asimetría) a HS256 (simetría).
Este tipo de ataque, conocido como algorithm confusion o JWT alg none, no es nuevo. De hecho, el CVE-2026-34950 representa una regresión del parche implementado para el CVE-2023-48223. La consecuencia inmediata es que un atacante sin credenciales puede generar tokens JWT válidos aparentemente, suplantar identidades y obtener acceso no autorizado a recursos protegidos.
| CVE ID | CVE-2026-34950 |
| Severidad (CVSS) | 9.1 – CRÍTICA |
| Vector CVSS | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N |
| Productos afectados | fast-jwt versiones 6.1.0 y anteriores |
| Exploit público | No |
| Fecha publicación | 2026-04-06 |
Desde el punto de vista de la ciberinteligencia, observamos que las vulnerabilidades en bibliotecas de autenticación como fast-jwt son objetivos prioritarios para actores avanzados. La explotación del CVE-2026-34950 podría integrarse en kits de ataque automatizados en cuestión de días tras la divulgación de un proof-of-concept.
Sistemas y versiones afectadas
🔬 ¿Cuántos puntos de entrada tiene tu empresa para un atacante? En Iberia Intelligence realizamos auditorías de seguridad y tests de intrusión con metodología ofensiva real: identificamos vulnerabilidades explotables antes de que lo haga un actor malicioso y entregamos un informe ejecutivo con prioridades de remediación.
El impacto del CVE-2026-34950 se limita a aplicaciones y servicios que utilizan la biblioteca Node.js fast-jwt para la generación o verificación de tokens JWT. A continuación, detallamos las versiones vulnerables y las parcheadas.
| Producto | Versiones vulnerables | Versión parcheada |
|---|---|---|
| fast-jwt | Todas las versiones <= 6.1.0 | 6.1.1 o superior |
Si vuestra aplicación depende de fast-jwt en su archivo package.json con una versión afectada, el sistema es vulnerable. Para verificar la versión instalada, podéis ejecutar el siguiente comando en el directorio del proyecto:
npm list fast-jwt
Entornos de despliegue en riesgo
Los entornos más expuestos incluyen APIs REST, microservicios y aplicaciones web que utilizan JWT para autenticación y autorización. Servicios en la nube, contenedores Docker y plataformas serverless que ejecuten Node.js con una versión vulnerable de fast-jwt deben considerarse en peligro inmediato.
Cómo parchear: guía paso a paso
La remediación del CVE-2026-34950 es directa: actualizar la biblioteca fast-jwt a la versión 6.1.1 o superior. A continuación, detallamos el proceso para entornos basados en Node.js y npm.
Actualización mediante npm
El método más eficaz es utilizar el gestor de paquetes npm para actualizar la dependencia. Ejecutad los siguientes comandos en el directorio raíz de vuestro proyecto Node.js.
Primero, aseguraos de tener los últimos metadatos de los repositorios:
npm update
Luego, actualizad específicamente el paquete fast-jwt a la última versión estable:
npm install fast-jwt@latest
Si utilizáis un archivo package-lock.json o yarn.lock, aseguraos de que se regenera correctamente. Para proyectos que requieren una versión específica, podéis fijar la versión parcheada en package.json:
"dependencies": {
"fast-jwt": "^6.1.1"
}
Verificación de la actualización
Tras la instalación, confirmad que la versión vulnerable ha sido reemplazada. Ejecutad:
npm list fast-jwt
La salida debe mostrar una versión igual o superior a 6.1.1. Además, recomendamos ejecutar vuestra suite de pruebas para asegurar que la actualización no introduce incompatibilidades.
Medidas adicionales de mitigación
Si el parche no puede aplicarse de inmediato por razones de compatibilidad, existen workarounds para reducir la superficie de ataque. Estas medidas son temporales y no sustituyen la actualización.
Workaround temporal: validación manual de claves públicas
Podéis implementar un middleware de validación personalizado que asegure que las claves públicas no contengan espacios en blanco iniciales antes de que fast-jwt las procese. Este código de ejemplo ilustra una posible mitigación:
const fastJwt = require('fast-jwt');
function createSafeVerifier(publicKey) {
// Eliminar espacios en blanco iniciales y finales
const trimmedKey = publicKey.trim();
// Validar que la clave comience con '-----BEGIN PUBLIC KEY-----'
if (!trimmedKey.startsWith('-----BEGIN PUBLIC KEY-----')) {
throw new Error('Formato de clave pública inválido');
}
return fastJwt.createVerifier({ key: trimmedKey });
}
Además, considerad las siguientes acciones defensivas:
- Restringir el acceso de red: Aplicad reglas de firewall para limitar las conexiones a los endpoints de autenticación solo a direcciones IP de confianza.
- Monitorización activa: Configurad alertas en vuestros logs de autenticación para detectar intentos inusuales de validación de tokens o errores recurrentes de firma.
- Revisión de tokens en uso: Auditar los tokens JWT actuales en vuestros sistemas para identificar posibles firmas comprometidas.
- Verificad que la versión de fast-jwt es 6.1.1 o superior mediante
npm list fast-jwt. - Ejecutad pruebas integrales de autenticación y autorización en vuestra aplicación.
- Consultad el advisory oficial en GitHub para actualizaciones: GHSA-mvf2-f6gm-w987.
Como analistas, insistimos en que la gestión proactiva de vulnerabilidades en dependencias de terceros es crítica. Integrad herramientas de análisis de composición de software (SCA) en vuestro pipeline de desarrollo para detectar automáticamente bibliotecas vulnerables como fast-jwt.
Referencias y recursos oficiales
- NVD – CVE-2026-34950 — Base de datos nacional de vulnerabilidades (NIST)
- Referencia: github.com
Recursos y fuentes oficiales:
Descubre las vulnerabilidades de tu empresa antes que los atacantes
Nuestro equipo en Iberia Intelligence ofrece auditorías de seguridad, pentesting y análisis de superficie de ataque para empresas e instituciones. Metodología PTES/OWASP, informe ejecutivo + técnico, y seguimiento de remediación incluido.