Modification of assumed-immutable data in pyjwt - #VU150519

 

Modification of assumed-immutable data in pyjwt - #VU150519

Published: September 17, 2026


Vulnerability identifier: #VU150519
CSH Severity: Medium
CVSS v4: 8.3 [CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:H/VA:N/SC:N/SI:N/SA:N]
CVE-ID: N/A
CWE-ID: CWE-471
Exploitation vector: Remote access
Exploit availability: No public exploit available

Vulnerability details

The vulnerability allows a remote attacker to bypass claim verification.

The vulnerability exists due to modification of assumed-immutable data in PyJWT._merge_options() when reusing a mutable options dictionary across decode() or decode_complete() calls with different verification settings. A remote attacker can cause an application to accept a signed token with expired or mismatched registered claims as valid to bypass claim verification.

Signature verification is unaffected; exploitation requires reuse of the same options dictionary after a call with signature verification disabled.


Affected software

pyjwt

Remediation

Install security update from vendor's website.


External References