CVE-2026-102266: jpadilla pyjwt · Improper Verification of Cryptographic Signature
Affects jpadilla pyjwtSource CVE Database V5
Not known to be exploited · CVSS 7.4 High : upgrade to 2.14.0 soon.
Data as of 12 Nov 2026, 23:24 UTC
- EPSS
- 0.2% chance of exploitation in 30 days – higher than 13% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
- Patch
- Available – fixed in 2.14.0
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:NExploitation evidence
Disclosed: evidence found.
CVE published 28 Sep 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponized: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 13 Nov 2026.
What to do
Upgrade jpadilla pyjwt to 2.14.0.
Affected software
| Product | Affected | Fixed in |
|---|---|---|
| jpadillapyjwt | Affected
| Fixed in
|
PyPIpyjwtpkg:pypi/pyjwtOther threats | Affected
| Fixed in
|
Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.
AI-suggested
As a mitigation, ensure that no empty or zero-length symmetric keys are present in JWK or JWKS configurations. Validate and sanitize all keys before use, and avoid using empty Base64URL keys. Consider upgrading to a fixed version once available or apply custom validation to reject empty keys in the PyJWK path.
Description
CVE-2026-102266 is a vulnerability in PyJWT 2.13.0 where verification of HS256 tokens using an empty symmetric octet JWK key bypasses the intended empty key rejection. While raw empty HMAC keys are rejected, empty keys supplied via PyJWK objects are accepted, allowing attackers to forge valid HS256 JWTs if the application uses an empty key in its JWK set. This occurs because the PyJWK verification path does not invoke the empty key validation, enabling signature verification with a zero-length key.