CVE-2026-32597
Published: 13 March 2026
Summary
CVE-2026-32597 is a high-severity Insufficient Verification of Data Authenticity (CWE-345) vulnerability in Pyjwt Project Pyjwt. Its CVSS base score is 7.5 (High).
Operationally, exploitation aligns with the MITRE ATT&CK technique Exploit Public-Facing Application (T1190); ranked at the 2.4th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.
Threat & Defense at a Glance
Threat & Defense Details
Likely Mitigating ControlsAI
Per-CVE control mapping for this CVE has not run yet; the list below is derived from the weakness types (CWEs) cited in the NVD entry.
Addresses incorrect authorization by requiring independent verification of results and an opportunity to contest before any adverse action is taken.
Periodic review and update of procedures reduces incorrect authorization implementations over time.
Supervision identifies cases where authorization logic incorrectly permits unauthorized actions.
Defining permitted attribute values and auditing modifications reduces the chance of incorrect authorization outcomes due to tampered or missing labels.
The authorization process and usage restrictions help prevent incorrect authorization for remote access types.
Establishing configuration and connection requirements helps ensure correct rather than incorrect authorization for wireless access.
Establishing connection authorization processes for mobile devices helps ensure authorization decisions are correctly implemented rather than incorrect.
Monitoring account use, notifying on changes, and reviewing accounts for compliance corrects incorrect authorization assignments.
MITRE ATT&CK Enterprise TechniquesAI
Why these techniques?
Vulnerability enables remote crafting of invalid JWS tokens that bypass authenticity checks (CWE-345/863), directly facilitating T1190 (exploitation of public-facing apps for auth bypass) and T1606 (forging web credentials/JWTs that should be rejected per RFC).
NVD Description
PyJWT is a JSON Web Token implementation in Python. Prior to 2.12.0, PyJWT does not validate the crit (Critical) Header Parameter defined in RFC 7515 §4.1.11. When a JWS token contains a crit array listing extensions that PyJWT does not…
more
understand, the library accepts the token instead of rejecting it. This violates the MUST requirement in the RFC. This vulnerability is fixed in 2.12.0.
Deeper analysisAI
CVE-2026-32597 affects PyJWT, a Python implementation of JSON Web Tokens (JWTs), in versions prior to 2.12.0. The vulnerability stems from the library's failure to properly validate the "crit" (Critical) Header Parameter as defined in RFC 7515 §4.1.11. Specifically, when a JSON Web Signature (JWS) token includes a "crit" array listing extensions that PyJWT does not recognize, the library accepts the token rather than rejecting it, violating the RFC's MUST requirement. This issue is tracked under CWE-345 (Insufficient Verification of Data Authenticity) and CWE-863 (Incorrect Authorization), with a CVSS v3.1 base score of 7.5 (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N).
A remote, unauthenticated attacker can exploit this vulnerability by crafting a malicious JWS token that includes unrecognized "crit" header extensions. Any application relying on vulnerable PyJWT for token validation could then accept these invalid tokens, potentially enabling integrity violations such as bypassing authentication or authorization checks if the token is used in a security-critical context.
The PyJWT GitHub security advisory (GHSA-752w-5fwx-jx9f) confirms the issue and states that it is fixed in version 2.12.0, recommending that users upgrade to this or later versions to mitigate the vulnerability. No workarounds are detailed in the provided references.
Details
- CWE(s)