medium4.8
CVE-2026-102269
PyJWT: Non-canonical signature segments enable raw-token revocation bypass
Impact
PyJWT is a Python implementation of JSON Web Token standards. Prior to 2.14.0, PyJWT signature segment is affected because signature segment decoding accepts characters outside the canonical Base64URL representation. This occurs when non-Base64URL characters are appended to a valid compact JWS signature segment. As a result, base64url_decode produces the same signature bytes for different serialized segments. Consequently, raw-token revocation checks can fail to recognize an equivalent modified token. This issue is fixed in version 2.14.0.
Affected packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| pip | PyJWT | <= 2.13.0 | 2.14.0 |
Affected products
| Vendor | Product | Affected versions |
|---|---|---|
| Pyjwt Project | Pyjwt | before 2.14.0 |
Weakness classification
References
- NVD record
- CVE.org record
- GitHub advisory
- https://github.com/advisories/GHSA-hxm8-2xgr-2p9m
- https://github.com/jpadilla/pyjwt/security/advisories/GHSA-hxm8-2xgr-2p9m
- https://nvd.nist.gov/vuln/detail/CVE-2026-102269
- https://github.com/jpadilla/pyjwt/commit/e6f48401001609a8f99e71fcaf355fb895d508a8
- https://github.com/jpadilla/pyjwt/releases/tag/2.14.0