Read the docs
TI-2022-11760 Aliases CVE-2022-29217GHSA-ffqj-6fqr-9h24

Key confusion through non-blocklisted public key formats in PyJWT

Priority LOW 38CWE-327Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
None
Attack complexity
Low
Impact type
Information disclosure
Confidentiality · integrity · availability
None · High · None
Fix status
Partial Red Hat: 10 without a fix

Attack profile from CVSS 3.1 · NVD. Fix status from CNA, GitHub and Red Hat. Impact type from CWE-327.

Summary

PyJWT is a Python implementation of RFC 7519. PyJWT supports multiple different JWT signing algorithms. With JWT, an attacker submitting the JWT token can choose the used signing algorithm. The PyJWT library requires that the application chooses what algorithms are supported. The application can specify `jwt.algorithms.get_default_algorithms()` to get support for all algorithms, or specify a single algorithm. The issue is not that big as `algorithms=jwt.algorithms.get_default_algorithms()` has to be used. Users should upgrade to v2.4.0 to receive a patch for this issue. As a workaround, always be explicit with the algorithms that are accepted and expected when decoding.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.01355 71st percentileScored 2026-11-07
Fix Partial pyjwt (jpadilla): 2.4.0pyjwt (PyPI): 2.4.0Red Hat: 10 without a fix

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
No
Technical impact
Total

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
jpadillapyjwt1.5.0 to before 2.4.02.4.0Patch availableCNA
—pyjwt (PyPI)1.5.0 to before 2.4.02.4.0Patch availableGHSA-ffqj-6fqr-9h24
  • pyjwt Vendorjpadilla Affected 1.5.0 to before 2.4.0 Fixed in 2.4.0 Patch available CNA
  • pyjwt (PyPI) Vendor— Affected 1.5.0 to before 2.4.0 Fixed in 2.4.0 Patch available GHSA-ffqj-6fqr-9h24

CPE configurations NVD · 3

CPEVersionsRoleVendor
cpe:2.3:a:pyjwt_project:pyjwt:*:*:*:*:*:*:*:*1.5.0 to before 2.4.0Vulnerablejpadilla
cpe:2.3:o:fedoraproject:fedora:35:*:*:*:*:*:*:*35VulnerableFedoraproject
cpe:2.3:o:fedoraproject:fedora:36:*:*:*:*:*:*:*36VulnerableFedoraproject
  • cpe:2.3:a:pyjwt_project:pyjwt:*:*:*:*:*:*:*:* Versions 1.5.0 to before 2.4.0 Vulnerable ·jpadilla
  • cpe:2.3:o:fedoraproject:fedora:35:*:*:*:*:*:*:* Versions 35 Vulnerable ·Fedoraproject
  • cpe:2.3:o:fedoraproject:fedora:36:*:*:*:*:*:*:* Versions 36 Vulnerable ·Fedoraproject

Remediation

  • Fix · CNA pyjwt (jpadilla) Fixed in 2.4.0
  • Fix · GHSA-ffqj-6fqr-9h24 pyjwt (PyPI) Fixed in 2.4.0 Advisory →

Vendor assessments

Red Hat

Red Hat rating: Moderate. Red Hat's page for this CVE →

ProductStatusPlan or fix
Red Hat Ansible Automation Platform 2AffectedNo fix yet
Red Hat Ceph Storage 4AffectedNo fix yet
Red Hat Ceph Storage 5AffectedNo fix planned: Will not fix
Red Hat Enterprise Linux 8AffectedNo fix planned: Will not fix
Red Hat Enterprise Linux 9AffectedNo fix planned: Will not fix
Red Hat OpenStack Platform 13 (Queens)AffectedNo fix planned: Out of support scope
Red Hat Openshift Container Storage 4AffectedNo fix planned: Out of support scope
Red Hat Quay 3AffectedNo fix yet
Red Hat Satellite 6AffectedNo fix yet
Red Hat Storage 3AffectedNo fix planned: Will not fix
Not affected: 6 products
  • Red Hat Enterprise Linux 7
  • Red Hat Enterprise Linux 9
  • Red Hat OpenStack Platform 16.1
  • Red Hat OpenStack Platform 16.2
  • Red Hat Openshift Data Foundation 4
  • Red Hat Satellite 6

Timeline

  1. 2026-10-02 Threatist record created from CVE-2022-29217
  2. 2026-10-03 Alias added: GHSA-ffqj-6fqr-9h24

References

  • TI-2026-65303 Improper signature verification in jpadilla pyjwt CVSS 3.1CRITICAL 9.1
  • TI-2026-65301 PyJWK accepts empty HMAC keys, bypassing PyJWT's empty-key validation CVSS 3.1CRITICAL 9.1
  • TI-2026-65219 PyJWT: Unauthenticated RecursionError DoS in pre-verification payload parse… CVSS 3.1HIGH 7.5
  • TI-2026-65218 PyJWT: PyJWKClient still amplifies unauthenticated JWKS fetches on unknown kid values (incomplete fix of CVE-2026-48524) CVSS 3.1HIGH 7.5
  • TI-2026-25107 PyJWT accepts unknown `crit` header extensions (RFC 7515 §4.1.11 MUST violation) CVSS 3.1HIGH 7.5
  • TI-2026-65310 PyJWT accepts inconsistent OKP x/d JWKs, causing public/private key identity confusion CVSS 3.1HIGH 8.2
See all 23 →

Sources