CVE-2026-32597 PyJWT accepts unknown `crit` header extensions (RFC 7515 §4.1.11 MUST violation)

High 7.5 Published Updated

PyJWT fails to reject tokens with unknown critical extensions, allowing attackers to bypass security checks intended by the token issuer.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2026-32597?

CVE-2026-32597 is a high-severity vulnerability in jpadilla pyjwt, published on 12 Mar 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official 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 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.

Weakness: CWE-863, CWE-347, CWE-345

Which versions are affected by CVE-2026-32597?

3 open source packages ship an affected version, including pyjwt and PyJWT. It affects 1 product.

PackageAffectedFixed in
pyjwt PyPIAll versions2.12.0
pyjwt PyPIAll versions2.12.0
PyJWT PyPIAll versions2.12.0
Linux distribution packages (33)
python-PyJWT SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOSAll versions2.4.0-150200.3.11.1
python-PyJWT SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOSAll versions2.8.0-150400.8.10.1
python-PyJWT SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSSAll versions2.4.0-150200.3.11.1
python-PyJWT SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSSAll versions2.8.0-150400.8.10.1
python-PyJWT SUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOSAll versions2.4.0-150200.3.11.1
python-PyJWT SUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOSAll versions2.8.0-150400.8.10.1
python-PyJWT SUSE:Linux Enterprise High Performance Computing 15 SP5-LTSSAll versions2.4.0-150200.3.11.1
python-PyJWT SUSE:Linux Enterprise High Performance Computing 15 SP5-LTSSAll versions2.8.0-150400.8.10.1
python-PyJWT SUSE:Linux Enterprise Micro 5.5All versions2.4.0-150200.3.11.1
python-PyJWT SUSE:Linux Enterprise Module for Basesystem 15 SP7All versions2.4.0-150200.3.11.1
python-PyJWT SUSE:Linux Enterprise Module for Public Cloud 12All versions1.5.3-3.19.1
python-PyJWT SUSE:Linux Enterprise Module for Public Cloud 15 SP4All versions2.8.0-150400.8.10.1
python-PyJWT SUSE:Linux Enterprise Module for Python 3 15 SP7All versions2.8.0-150400.8.10.1
python-PyJWT SUSE:Linux Enterprise Server 15 SP4-LTSSAll versions2.4.0-150200.3.11.1
python-PyJWT SUSE:Linux Enterprise Server 15 SP4-LTSSAll versions2.8.0-150400.8.10.1
python-PyJWT SUSE:Linux Enterprise Server 15 SP5-LTSSAll versions2.4.0-150200.3.11.1
python-PyJWT SUSE:Linux Enterprise Server 15 SP5-LTSSAll versions2.8.0-150400.8.10.1
python-PyJWT SUSE:Linux Enterprise Server 15 SP6-LTSSAll versions2.4.0-150200.3.11.1
python-PyJWT SUSE:Linux Enterprise Server 15 SP6-LTSSAll versions2.8.0-150400.8.10.1
python-PyJWT SUSE:Linux Enterprise Server 16.0All versions2.12.1-160000.1.1
python-PyJWT SUSE:Linux Enterprise Server for SAP Applications 15 SP4All versions2.4.0-150200.3.11.1
python-PyJWT SUSE:Linux Enterprise Server for SAP Applications 15 SP4All versions2.8.0-150400.8.10.1
python-PyJWT SUSE:Linux Enterprise Server for SAP Applications 15 SP5All versions2.4.0-150200.3.11.1
python-PyJWT SUSE:Linux Enterprise Server for SAP Applications 15 SP5All versions2.8.0-150400.8.10.1
python-PyJWT SUSE:Linux Enterprise Server for SAP Applications 15 SP6All versions2.4.0-150200.3.11.1
python-PyJWT SUSE:Linux Enterprise Server for SAP Applications 15 SP6All versions2.8.0-150400.8.10.1
python-PyJWT SUSE:Linux Enterprise Server for SAP applications 16.0All versions2.12.1-160000.1.1
python-PyJWT SUSE:Linux Micro 6.0All versions2.9.0-2.1
python-PyJWT SUSE:Linux Micro 6.2All versions2.12.1-160000.1.1
python-PyJWT openSUSE:Leap 15.6All versions2.8.0-150400.8.10.1
python-PyJWT openSUSE:Leap 16.0All versions2.12.1-160000.1.1
python-PyJWT openSUSE:TumbleweedAll versions2.12.1-1.1
python-social-auth-core openSUSE:TumbleweedAll versions4.8.7-1.1

Products include Pyjwt Project Pyjwt.

How do I fix CVE-2026-32597?

Upgrade pyjwt to 2.12.0 or later.

Is CVE-2026-32597 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-32597 exists.

Sources

Also known as AZL-93030, BELL-CVE-2026-32597, CLEANSTART-2026-AJ13963, CLEANSTART-2026-TW81518, CLSA-2026-1775608265, CLSA-2026-1786522025 and 36 more.

Is CVE-2026-32597 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free