High severity · published Jul 17, 2026
CVE-2026-49852
joserfc: HS256/HS384/HS512 verify accepts empty/nil HMAC key (cross-language sibling of CVE-2026-45363)
8.7
CVSS
0.2%
EPSS
No
On KEV
Description
joserfc is a Python library that provides an implementation of several JSON Object Signing and Encryption (JOSE) standards. Prior to 1.6.8, joserfc.jwt.decode accepts attacker-forged HMAC-signed tokens when the caller-supplied verification key is the empty string or None, because HMACAlgorithm.sign and HMACAlgorithm.verify in src/joserfc/_rfc7518/jws_algs.py pass the output of OctKey.get_op_key(...) to hmac.new(...) and OctKey.import_key in src/joserfc/_rfc7518/oct_key.py only emits a SecurityWarning for keys shorter than 14 bytes without rejecting zero-length input. This issue is fixed in version 1.6.8.
Exploitation
Is it being used?
Exploit prediction (EPSS)0.2% · higher than 6% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
JO
joserfc · authlib
< 1.6.8 · source: vendor
Affected product
JO
joserfc
authlib
More from joserfc
9.1
CVE-2026-102946
joserfc: JWS signature verification bypass via empty signatures array in jws.deserialize_json
7.5
CVE-2026-27932
joserfc PBES2 p2c Unbounded Iteration Count enables Denial of Service (DoS)
6.5
CVE-2026-75509
joserfc claim-validation bypass via array-typed single-string claims (iss/sub/jti)
5.3
CVE-2026-48990
joserfc: b64=false RFC7797 JWS payloads bypass JWSRegistry payload-size limits during deserialization
2.3
CVE-2026-62995
joserfc accepts JWT with padding, leading to JWT malleability