
CVE catalog
CVE-2026-102272
PyJWT is a Python implementation of JSON Web Token standards. From 2.13.0 until 2.14.0, HMACAlgorithm.prepare_key in jwt/algorithms.py is affected because raw-JWK detector does not normalize accepted
- Severity
- Critical · CVSS 9.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Published
- Updated
- Source
- [NVD] · [CVE record]
- EPSS
- 0.22% · Oct 25, 2026
PyJWT is a Python implementation of JSON Web Token standards. From 2.13.0 until 2.14.0, HMACAlgorithm.prepare_key in jwt/algorithms.py is affected because raw-JWK detector does not normalize accepted Unicode byte-order marks before checking for JSON. This occurs when a public JWK is prefixed with a UTF-8 BOM and used in a mixed-algorithm verification path. As a result, public JWK bypasses asymmetric-key detection and becomes the HMAC secret. Consequently, an attacker who knows the public key can forge authenticated tokens. This issue is fixed in version 2.14.0.
Vulnerable and fixed packages
Distribution-reported package versions and fixes. These do not depend on matching against the OpenFactory package catalog.
| Distribution | Package | Release | Version | Status |
|---|---|---|---|---|
| Debian | pyjwt | sid | 2.15.1-1 | fixed |
| Debian | pyjwt | forky | 2.15.1-1 | fixed |
| Debian | pyjwt | trixie | 2.10.1-2+deb13u1 | vulnerable |
| Debian | pyjwt | trixie-security | 2.10.1-2+deb13u1 | vulnerable |
| Debian | pyjwt | bookworm | 2.6.0-1+deb12u1 | not affected |
| Debian | pyjwt | bookworm-security | 2.6.0-1+deb12u1 | not affected |
| PyPI | pyjwt | Not reported | 2.14.0 | fixed |
| PyPI | pyjwt | Not reported | 2.14.0 | fixed |
| Cpe | pyjwt | Not reported | Not reported | unknown |
| Ubuntu | pyjwt | noble | 2.7.0-1ubuntu0.3 | fixed |
| Ubuntu | python3-jwt | noble | 2.7.0-1ubuntu0.3 | fixed |
| Ubuntu | pyjwt | pro | 1.7.0-2 | vulnerable |
| Ubuntu | pyjwt | pro | 1.7.1-1 | vulnerable |
| Ubuntu | pyjwt | pro | 1.7.1-2ubuntu1 | vulnerable |
| Ubuntu | pyjwt | pro | 1.7.1-2ubuntu2 | vulnerable |
| Ubuntu | pyjwt | pro | 1.7.1-2ubuntu2.1 | vulnerable |
| Ubuntu | pyjwt | pro | 1.7.1-2ubuntu2.1+esm1 | vulnerable |
| Ubuntu | pyjwt | pro | 1.7.1-2ubuntu2.1+esm2 | vulnerable |
| Ubuntu | pyjwt | pro | 1.7.1-2ubuntu2.1+esm3 | fixed |
| Ubuntu | pyjwt | 22.04 | 1.7.1-2ubuntu2 | vulnerable |
| Ubuntu | pyjwt | 22.04 | 2.1.0-1 | vulnerable |
| Ubuntu | pyjwt | 22.04 | 2.3.0-1 | vulnerable |
| Ubuntu | pyjwt | 22.04 | 2.3.0-1ubuntu0.1 | vulnerable |
| Ubuntu | pyjwt | 22.04 | 2.3.0-1ubuntu0.2 | vulnerable |
| Ubuntu | pyjwt | 22.04 | 2.3.0-1ubuntu0.3 | vulnerable |
| Ubuntu | pyjwt | 22.04 | 2.3.0-1ubuntu0.4 | vulnerable |
| Ubuntu | pyjwt | 22.04 | 2.3.0-1ubuntu0.5 | fixed |
| Ubuntu | pyjwt | 24.04 | 2.7.0-1 | vulnerable |
| Ubuntu | pyjwt | 24.04 | 2.7.0-1ubuntu0.1 | vulnerable |
| Ubuntu | pyjwt | 24.04 | 2.7.0-1ubuntu0.2 | vulnerable |
| Ubuntu | pyjwt | 24.04 | 2.7.0-1ubuntu0.3 | fixed |
| Ubuntu | pyjwt | 26.10 | 2.10.1-4ubuntu1 | vulnerable |
| Ubuntu | pyjwt | 26.10 | 2.12.1-1 | vulnerable |
| Ubuntu | pyjwt | 26.10 | 2.13.0-1 | vulnerable |
| Ubuntu | pyjwt | 26.10 | 2.13.0-1ubuntu1 | fixed |
| Ubuntu | pyjwt | 26.04 | 2.10.1-2 | vulnerable |
| Ubuntu | pyjwt | 26.04 | 2.10.1-3 | vulnerable |
| Ubuntu | pyjwt | 26.04 | 2.10.1-3build1 | vulnerable |
| Ubuntu | pyjwt | 26.04 | 2.10.1-4 | vulnerable |
| Ubuntu | pyjwt | 26.04 | 2.10.1-4ubuntu1 | vulnerable |
| Ubuntu | pyjwt | 26.04 | 2.10.1-4ubuntu1.1 | vulnerable |
| Ubuntu | pyjwt | 26.04 | 2.10.1-4ubuntu1.2 | fixed |
Fixed-version evidence
| Distribution | Package | Type | Release | Fixed version | Urgency | Origin | Bugs |
|---|---|---|---|---|---|---|---|
| Debian | pyjwt | source | sid | 2.14.0-1 | not yet assigned | Not reported | Not reported |
| Debian | pyjwt | source | forky | 2.14.0-1 | not yet assigned | Not reported | Not reported |
| Debian | pyjwt | source | trixie | (unfixed) | not yet assigned | Not reported | Not reported |
| Debian | pyjwt | source | bookworm | Not affected | unimportant | Not reported | Not reported |
| PyPI | pyjwt | PyPI | Not reported | 2.14.0 | Not reported | GHSA-R6X4-923Q-G947 | Not reported |
| PyPI | pyjwt | PyPI | Not reported | 2.14.0 | Not reported | PYSEC-2026-4150 | Not reported |
| Ubuntu | pyjwt | deb | noble | 2.7.0-1ubuntu0.3 | Not reported | Not reported | Not reported |
| Ubuntu | python3-jwt | deb | noble | 2.7.0-1ubuntu0.3 | Not reported | Not reported | Not reported |
| Ubuntu | pyjwt | deb | pro | 1.7.1-2ubuntu2.1+esm3 | Not reported | UBUNTU-CVE-2026-102272 | Not reported |
| Ubuntu | pyjwt | deb | 22.04 | 2.3.0-1ubuntu0.5 | Not reported | UBUNTU-CVE-2026-102272 | Not reported |
| Ubuntu | pyjwt | deb | 24.04 | 2.7.0-1ubuntu0.3 | Not reported | UBUNTU-CVE-2026-102272 | Not reported |
| Ubuntu | pyjwt | deb | 26.10 | 2.13.0-1ubuntu1 | Not reported | UBUNTU-CVE-2026-102272 | Not reported |
| Ubuntu | pyjwt | deb | 26.04 | 2.10.1-4ubuntu1.2 | Not reported | UBUNTU-CVE-2026-102272 | Not reported |
OpenFactory catalog packages
[Debian 13 (Trixie)]
- [python3-jwt]Affected
Source package: [pyjwt]
Details (4)
2.10.1-2+deb13u1· all · trixieAffected
nvd · pyjwt · debian · 13
2.10.1-2+deb13u1· all · trixieAffected
nvd · pyjwt · debian · 13
2.10.1-2+deb13u1· all · trixie-securityAffected
nvd · pyjwt · debian · 13
2.10.1-2+deb13u1· all · trixie-securityAffected
nvd · pyjwt · debian · 13
- [python-jwt-doc]Affected
Source package: [pyjwt]
Details (4)
2.10.1-2+deb13u1· all · trixieAffected
nvd · pyjwt · debian · 13
2.10.1-2+deb13u1· all · trixieAffected
nvd · pyjwt · debian · 13
2.10.1-2+deb13u1· all · trixie-securityAffected
nvd · pyjwt · debian · 13
2.10.1-2+deb13u1· all · trixie-securityAffected
nvd · pyjwt · debian · 13
[Debian 12 (Bookworm)]
- [python3-jwt]Not affected
Source package: [pyjwt]
Details (4)
2.6.0-1+deb12u1· all · bookwormNot affected
nvd · pyjwt · debian · bookworm
2.6.0-1+deb12u1· all · bookwormNot affected
nvd · pyjwt · debian · bookworm
2.6.0-1+deb12u1· all · bookworm-securityNot affected
nvd · pyjwt · debian · bookworm
2.6.0-1+deb12u1· all · bookworm-securityNot affected
nvd · pyjwt · debian · bookworm
Observed:
References
- [https://ftp.suse.com/pub/projects/security/csaf/opensuse-su-2026_11994-1.json]
- [https://nvd.nist.gov/vuln/detail/CVE-2026-102272]
- [https://osv.dev/vulnerability/DEBIAN-CVE-2026-102272]
- [https://osv.dev/vulnerability/PYSEC-2026-4150]
- [https://osv.dev/vulnerability/UBUNTU-CVE-2026-102272]
- [https://security-tracker.debian.org/tracker/CVE-2026-102272]
- [https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-102272.json]
- [https://ubuntu.com/security/notices/USN-8916-1]
[Debian Security Tracker] · [FIRST EPSS] · [GitHub Advisory Database] · [National Vulnerability Database (NVD)] · [OSV Package Vulnerability Database] · [Red Hat security advisories and VEX] · [SUSE security advisories and VEX] · [Ubuntu Security Notices (USN)]