CVE-2026-103001

EUVD-2026-90388
PyJWT is a Python implementation of JSON Web Token standards. From 2.11.0 through 2.13.0, PyJWT's PyJWT._merge_options() method can modify a caller-supplied mutable options mapping when verify_signature is false. If an application reuses that same mapping for a later decode() or decode_complete() call and changes verify_signature to true, the mapping can retain false values for expiration, not-before, issued-at, audience, issuer, subject, and JWT ID checks. A signed token with invalid registered claims can then be accepted without disabling signature verification, but applications that create a fresh options mapping for each call are not affected.
MAID
ProviderTypeBase ScoreAtk. VectorAtk. ComplexityPriv. RequiredVector
NISTPrimary
6.5 MEDIUM
NETWORK
HIGH
NONE
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:H/A:N
Base Score
CVSS 3.x
EPSS Score
Percentile: 17.49%
Affected Products (NVD)
VendorProductVersion
pyjwt_projectpyjwt
2.11.0 ≤
𝑥
< 2.13.0
𝑥
= Vulnerable software versions
Debian logo
Debian Releases
Debian Product
Codename
pyjwt
bookworm
2.6.0-1+deb12u1
fixed
bookworm (security)
2.6.0-1+deb12u1
fixed
forky
2.15.1-1
fixed
sid
2.15.1-1
fixed
trixie
2.10.1-2+deb13u1
fixed
trixie (security)
2.10.1-2+deb13u1
fixed
Ubuntu logo
Ubuntu Releases
Ubuntu Product
Codename
pyjwt
bionic
needs-triage
focal
needs-triage
jammy
needs-triage
noble
needs-triage
resolute
needs-triage
xenial
needs-triage
Azure Linux logo
Azure Linux Releases
Azure Package
Release
python-jwt
Azure Linux 3.0
0:2.15.1-1.azl3
fixed