jpadilla pyjwt

22 published vulnerabilities name this product.

As the CNAs write it in their CVE records (vendor and product); the versions are theirs.

CVEVulnerable versionsTitleSeverityPublishedEPSSExploitation
CVE-2026-103001>= 2.11.0, <= 2.13.0PyJWT.decode() reintroduces options-dict mutation, enabling silent claim-verification bypass on dict reuseMEDIUM 6.50.3 %
CVE-2026-102265>= 2.13.0, < 2.14.0PyJWT: Uncaught RecursionError in jwt.decode() on deeply nested token headerMEDIUM 5.30.3 %
CVE-2026-102275>= 2.1.0, < 2.15.0PyJWT accepts inconsistent OKP x/d JWKs, causing public/private key identity confusionHIGH 8.20.2 %
CVE-2026-102274>= 2.9.0, < 2.14.0PyJWT: Malformed RSA JWK aborts parsing of an entire JWK SetHIGH 7.50.5 %
CVE-2026-102273>= 2.13.0, < 2.14.0PyJWT accepts public JWK containers as HMAC secretsHIGH 7.40.2 %
CVE-2026-102272>= 2.13.0, < 2.14.0PyJWT BOM BypassHIGH 7.40.2 %
CVE-2026-102271>= 2.4.0, < 2.14.0PyJWT: Public keys in DER form are accepted as HMAC secrets, bypassing the CVE-2022-29217 guardHIGH 7.40.2 %
CVE-2026-102270< 2.14.0PyJWT: ReDoS vulnerability when calling the `is_pem_format` function.MEDIUM 4.90.2 %
CVE-2026-102269< 2.14.0PyJWT: Non-canonical signature segments enable raw-token revocation bypassMEDIUM 5.40.2 %
CVE-2026-102268< 2.14.0PyJWT: Asymmetric-PEM detection bypass: whitespace/line-ending-mutated public keys skip the HS/asymmetric confusion guardCRITICAL 9.10.2 %
CVE-2026-102267< 2.14.0PyJWT: PyJWKClient follows redirects when fetching JWKSCRITICAL 9.10.2 %
CVE-2026-102266>= 2.13.0, < 2.14.0PyJWK accepts empty HMAC keys, bypassing PyJWT's empty-key validationCRITICAL 9.10.2 %
CVE-2026-101918>= 2.0.0a1, < 2.15.0PyJWT: Unauthenticated RecursionError DoS in pre-verification payload parse (PyJWKClient.get_signing_key_from_jwt / verify_signature=False)HIGH 7.50.4 %
CVE-2026-101917< 2.14.0PyJWT: PyJWKClient still amplifies unauthenticated JWKS fetches on unknown kid values (incomplete fix of CVE-2026-48524)HIGH 7.50.4 %
CVE-2026-48525>= 2.8.0, < 2.13.0PyJWT: Unauthenticated DoS via unbounded Base64URL decoding of unused payload segment in b64=false detached JWSMEDIUM 5.30.4 %
CVE-2026-48523>= 2.9.0, < 2.13.0PyJWT: Algorithm allow-list bypass when decoding with `PyJWK` / `PyJWKClient` keysMEDIUM 5.40.1 %
CVE-2026-48526< 2.13.0PyJWT: Public-key JWK accepted as HMAC secret enables forged HS256 tokens when mixed families are allowedHIGH 7.40.4 %
CVE-2026-48524< 2.13.0PyJWT: PyJWKClient unbounded JWKS endpoint requests via attacker-controlled kid values (DoS)LOW 3.70.4 %
CVE-2026-48522< 2.13.0PyJWKClient: missing scheme allowlist enables SSRF + token forgery via file://, ftp://, data: schemesMEDIUM 4.20.2 %
CVE-2026-32597< 2.12.0PyJWT accepts unknown `crit` header extensions (RFC 7515 §4.1.11 MUST violation)HIGH 7.50.3 %
CVE-2024-53861= 2.10.0Issuer field partial matches allowed in pyjwtHIGH 7.50.8 %
CVE-2022-29217>= 1.5.0, < 2.4.0Key confusion through non-blocklisted public key formats in PyJWTHIGH 7.51.4 %