Instituto Nacional de ciberseguridad. Sección Incibe
Instituto Nacional de Ciberseguridad. Sección INCIBE-CERT

Vulnerabilidad en las funciones de hashing HMAC en JWT (CVE-2021-41106)

Gravedad CVSS v3.1:
MEDIA
Tipo:
CWE-345 Verificación insuficiente de autenticidad de los datos
Fecha de publicación:
28/09/2021
Última modificación:
18/11/2025

Descripción

JWT es una biblioteca para trabajar con JSON Web Token y JSON Web Signature. Antes de las versiones 3.4.6, 4.0.4 y 4.1.5, los usuarios de los algoritmos basados en HMAC (HS256, HS384 y HS512) combinados con "Lcobucci\JWT\Signer\Key\LocalFileReference" como clave están emitiendo/validando sus tokens usando la ruta del archivo como clave de hashing - en lugar del contenido. Las funciones de hashing HMAC aceptan cualquier cadena como entrada y, dado que los usuarios pueden emitir y comprobar tokens, los usuarios son llevados a creer que todo funciona correctamente. Las versiones 3.4.6, 4.0.4 y 4.1.5 han sido parcheadas para cargar siempre el contenido del archivo, desaprobando la función "Lcobucci\JWT\Signer\Key\LocalFileReference", y sugiriendo "Lcobucci\JWT\Signer\Key\InMemory" como alternativa. Como solución, use "Lcobucci\JWT\SignerKey\InMemory" en lugar de "Lcobucci\JWT\SignerKey\LocalFileReference" para crear las instancias de las claves propias

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:a:lcobucci:jwt:*:*:*:*:*:*:*:* 3.4.0 (incluyendo) 3.4.6 (excluyendo)
cpe:2.3:a:lcobucci:jwt:*:*:*:*:*:*:*:* 4.0.0 (incluyendo) 4.0.4 (excluyendo)
cpe:2.3:a:lcobucci:jwt:*:*:*:*:*:*:*:* 4.1.0 (incluyendo) 4.1.5 (excluyendo)