CVE Catalog

CVE-2026-44699

Critical
Published: Translated: NVD NIST

Summary

LibJWT is a C library for handling JSON Web Tokens. From versions 3.0.0 to 3.3.2, libjwt accepts an RSA JWK without the alg parameter as the verification key for HS256/HS384/HS512 tokens, allowing an attacker to forge a valid JWT without knowing any secret or RSA private key.

Risk Assessment

Organizations may be exposed to attacks that allow authentication bypass, potentially leading to unauthorized access to resources. Applications using JWKS where alg is omitted are particularly at risk.

Recommendation

It is recommended to update the libjwt library to version 3.3.3 or later to mitigate this vulnerability. Additionally, it is advisable to verify that RSA keys contain the alg parameter before use.

Original NVD description (English source)

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.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS