CVE-2026-44699

CVE-2026-44699 is a critical-severity vulnerability with a CVSS 4.0 base score of 9.1. It is not currently listed as actively exploited by CISA, and its EPSS exploit-prediction score is low. The underlying weakness is classified as CWE-327.

Key facts

Description

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.

Frequently asked questions

What is 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.
How severe is CVE-2026-44699?
CVE-2026-44699 has a CVSS 4.0 base score of 9.1, rated critical severity.
Is CVE-2026-44699 being actively exploited?
It is not currently listed in CISA's KEV catalog. Its EPSS exploit-prediction score is 0% (11th percentile), an estimate of the probability of exploitation in the next 30 days.
How do I fix CVE-2026-44699?
Review the linked vendor and NVD advisories for patched versions and mitigations, then upgrade or apply the recommended workaround. Given its critical severity, prioritise patching exposed systems.
Does CVE-2026-44699 have an EU (EUVD) identifier?
Yes. CVE-2026-44699 is tracked in the ENISA EU Vulnerability Database (EUVD) as EUVD-2026-30560.
When was CVE-2026-44699 published?
CVE-2026-44699 was published on 2026-05-15 and last updated on 2026-06-17.

References

Other CWE-327 (Use of a Broken or Risky Cryptographic Algorithm) vulnerabilities

Browse all CWE-327 (Use of a Broken or Risky Cryptographic Algorithm) vulnerabilities →