CVE-2022-39227 json
Python-jwt subject to Authentication Bypass by Spoofing
published 2022-09-01 4 y ago modified 2026-06-17 4 mo ago also GHSA-5p8v-58qm-c7fp , PYSEC-2022-259 , EUVD-2022-0219
- cvss
- 9.1
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 5.3%
- EPSS 5.3% chance of exploitation in 30 days, percentile 92%
- public exploits
- 0
- none known
Summary
python-jwt is a module for generating and verifying JSON Web Tokens. Versions prior to 3.3.4 are subject to Authentication Bypass by Spoofing, resulting in identity spoofing, session hijacking or authentication bypass. An attacker who obtains a JWT can arbitrarily forge its contents without knowing the secret key. Depending on the application, this may for example enable the attacker to spoof other user's identities, hijack their sessions, or bypass authentication. Users should upgrade to version 3.3.4. There are no known workarounds.
Patch / fix
- pypi python-jwt 3.3.4
- python-jwt_project python-jwt 3.3.4
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2022-39227 updated cvss 9.1
python-jwt: token forgery with new claims
-
Red Hat Ceph Storage 4 python2-jwt Red Hat OpenStack Platform 13 (Queens) python-jwt Red Hat Storage 3 python-jwtaffected: no fix available
-
Red Hat Enterprise Linux 7 python-jwt Red Hat Enterprise Linux 8 python-jwt, python3-jwtnot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- 2 y ago
Exploit prediction
5.34% chance of exploitation in the next 30 days, higher than 92% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 9.1 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N |
| NVD | 3.1 | 9.1 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N |
| GitHub | 3.1 | 9.1 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | python-jwt | <3.3.4 >=3.0.0, <3.3.4 |
3.3.4 |
Affected products
- davedoesdev python-jwt
Classification
- Weakness
-
- CWE-290 Authentication Bypass by Spoofing
References
-
github.com
/davedoesdev/python-jwt/commit/88ad9e67c53aa5f7c43ec4aa52ed34b7930068c9
web, patch
-
github.com
/davedoesdev/python-jwt/security/advisories/GHSA-5p8v-58qm-c7fp
web, patch, third-party-advisory
-
github.com
/davedoesdev/python-jwt/commit/6c5075469847b9e8b6e5336077d989d77a4d2bf1
web
-
github.com
/pypa/advisory-database/blob/main/vulns/python-jwt/PYSEC-2022-259.yaml
web, third-party-advisory
-
vicarius.io
/vsociety/posts/authentication-bypass-in-python-jwt
web
-
nvd.nist.gov
/vuln/detail/CVE-2022-39227
advisory
-
github.com
/davedoesdev/python-jwt
package
Sources
- CVE List CVE-2022-39227
- GitHub Advisory GHSA-5p8v-58qm-c7fp
- NVD CVE-2022-39227
- OSV PYSEC-2022-259
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.