CVE-2026-44699

LibJWT is a C JSON Web Token Library. From 3.0.0 to 3.3.2, libjwt accepts an RSA JWK that does not contain an alg parameter as the verification key for an HS256/HS384/HS512 token. In the OpenSSL backend, this causes HMAC verification to run with a zero-length key, so an attacker can forge a valid JWT without knowing any secret or RSA private key. This is an algorithm-confusion authentication bypass. It affects applications that load RSA keys from JWKS where alg is omitted, which is valid JWK syntax and common in real deployments, and then choose the verification algorithm from the JWT header, for example in a kid lookup callback. This vulnerability is fixed in 3.3.3.
CVSS

No CVSS.

Configurations

No configuration.

History

26 Oct 2026, 14:10

Type Values Removed Values Added
Summary
  • (es) LibJWT es una biblioteca C de JSON Web Token. Desde la versión 3.0.0 hasta la 3.3.2, libjwt acepta una JWK RSA que no contiene un parámetro ’alg’ como clave de verificación para un token HS256/HS384/HS512. En el backend de OpenSSL, esto provoca que la verificación HMAC se ejecute con una clave de longitud cero, por lo que un atacante puede falsificar un JWT válido sin conocer ningún secreto o clave privada RSA. Esto es una omisión de autenticación por confusión de algoritmo. Afecta a las aplicaciones que cargan claves RSA de JWKS donde se omite ’alg’, lo cual es una sintaxis JWK válida y común en implementaciones reales, y luego eligen el algoritmo de verificación del encabezado JWT, por ejemplo, en una devolución de llamada de búsqueda de ’kid’. Esta vulnerabilidad está corregida en la versión 3.3.3.

Information

Published : 2026-05-15 17:16

Updated : 2026-10-26 14:10


NVD link : CVE-2026-44699

Mitre link : CVE-2026-44699

CVE.ORG link : CVE-2026-44699


JSON object : View

Products Affected

No product.

CWE
CWE-327

Use of a Broken or Risky Cryptographic Algorithm

CWE-347

Improper Verification of Cryptographic Signature