VendorsPyJWT Projectpyjwtany version
Vulnerabilities

PyJWT Project PyJWT any version

Ranked by severity, then by exploit likelihood. Click a CVE ID for its full record.

8CVEs
CVE-2017-11424
In PyJWT 1.5.0 and below the `invalid_strings` check in `HMACAlgorithm.prepare_key` does not account for all PEM encoded public keys. Specifically, the PKCS1 PEM encoded format would be allowed because it is prefaced with the string `-----BEGIN RSA PUBLIC KEY-----` which is not accounted for. This enables symmetric/asymmetric key confusion attacks against users using the PKCS1 PEM encoded public keys, which would allow an attacker to craft JWTs from scratch.
Published 2017-08-24 · Modified
7.5EPSS 0.018
CVE-2022-29217
Key confusion through non-blocklisted public key formats in PyJWT
Published 2022-05-24 · Modified
7.5EPSS 0.014
CVE-2026-32597
PyJWT accepts unknown `crit` header extensions (RFC 7515 §4.1.11 MUST violation)
Published 2026-03-12 · Modified
7.5EPSS 0.003
CVE-2026-48526
PyJWT: Public-key JWK accepted as HMAC secret enables forged HS256 tokens when mixed families are allowed
Published 2026-05-28 · Modified
7.4EPSS 0.004
CVE-2026-48523
PyJWT: Algorithm allow-list bypass when decoding with `PyJWK` / `PyJWKClient` keys
Published 2026-05-28 · Analyzed
5.4EPSS 0.002
CVE-2026-48525
PyJWT: Unauthenticated DoS via unbounded Base64URL decoding of unused payload segment in b64=false detached JWS
Published 2026-05-28 · Analyzed
5.3EPSS 0.004
CVE-2026-48522
PyJWKClient: missing scheme allowlist enables SSRF + token forgery via file://, ftp://, data: schemes
Published 2026-05-28 · Modified
4.2EPSS 0.002
CVE-2026-48524
PyJWT: PyJWKClient unbounded JWKS endpoint requests via attacker-controlled kid values (DoS)
Published 2026-05-28 · Analyzed
3.7EPSS 0.003