Vulnerability · Published Sep 28, 2026 · Assigned by GitHub_M

CVE-2026-102273PyJWT accepts public JWK containers as HMAC secrets

High 7.4

In plain English

A high-severity security flaw in pyjwt from jpadilla. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.2% (higher than 7% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 3.1)7.4High
Exploit odds (30 days)0.2%top 93.0% of all CVEs
Exploited in the wildNo reportsCISA SSVC: none
Attack toolingNoneno public tooling known

Official description

PyJWT is a Python implementation of JSON Web Token standards. From 2.13.0 until 2.14.0, PyJWT HMACAlgorithm.prepare_key is affected because HMAC key guard only recognizes top-level public JWK forms and misses container representations. This occurs when an application allows HMAC and asymmetric algorithms and passes a public JWK container as the raw key. As a result, public asymmetric key material is accepted as the HMAC secret. Consequently, an attacker who knows the public key can forge a token with arbitrary authenticated claims. This issue is fixed in version 2.14.0.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Debian:13pyjwtno fix listedDEBIAN-CVE-2026-102273
Debian:14pyjwt2.14.0-1DEBIAN-CVE-2026-102273
PyPIpyjwt2.14.0GHSA-w2cx-738m-mc7w
PyPIpyjwt2.14.0PYSEC-2026-4151
Ubuntu:22.04:LTSpyjwt2.3.0-1ubuntu0.5USN-8916-1
Ubuntu:22.04:LTSpyjwt2.3.0-1ubuntu0.5UBUNTU-CVE-2026-102273
Ubuntu:24.04:LTSpyjwt2.7.0-1ubuntu0.3USN-8916-1
Ubuntu:24.04:LTSpyjwt2.7.0-1ubuntu0.3UBUNTU-CVE-2026-102273
Ubuntu:26.04:LTSpyjwt2.10.1-4ubuntu1.2USN-8916-1
Ubuntu:26.04:LTSpyjwt2.10.1-4ubuntu1.2UBUNTU-CVE-2026-102273
Ubuntu:26.10pyjwt2.13.0-1ubuntu1UBUNTU-CVE-2026-102273
Ubuntu:26.10pyjwt2.13.0-1ubuntu1USN-8916-2

Affected products (as reported)

VendorProductVersions
jpadilla pyjwt >= 2.13.0, < 2.14.0

Weakness: CWE-347 · Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N

References