CVE-2026-102273: CWE-347: Improper Verification of Cryptographic Signature in jpadilla pyjwt
PyJWT is a Python implementation of JSON Web Token standards. From 2.13.0 until 2.14.0, PyJWT HMACAlgorithm.prepare_key is affected because HMAC key guard only recognizes top-level public JWK forms and misses container representations. This occurs when an application allows HMAC and asymmetric algorithms and passes a public JWK container as the raw key. As a result, public asymmetric key material is accepted as the HMAC secret. Consequently, an attacker who knows the public key can forge a token with arbitrary authenticated claims. This issue is fixed in version 2.14.0.
AI Analysis
Technical Summary
PyJWT, a Python library implementing JSON Web Token standards, has a cryptographic signature verification vulnerability (CWE-347) in versions >=2.13.0 <2.14.0. The HMACAlgorithm.prepare_key method improperly verifies keys because it only recognizes top-level public JWK forms and misses container representations. When an application supports both HMAC and asymmetric algorithms and passes a public JWK container as the raw key, the library mistakenly accepts public asymmetric key material as the HMAC secret. This allows an attacker with knowledge of the public key to forge tokens with arbitrary authenticated claims. The issue is resolved in version 2.14.0.
Potential Impact
An attacker who knows the public key can exploit this vulnerability to forge JSON Web Tokens with arbitrary authenticated claims, potentially bypassing authentication or authorization controls in applications using affected PyJWT versions. This can lead to unauthorized access or privilege escalation. There are no known exploits in the wild at this time.
Mitigation Recommendations
Upgrade PyJWT to version 2.14.0 or later, where this vulnerability is fixed. No other mitigations are indicated by the vendor advisory.
CVE-2026-102273: CWE-347: Improper Verification of Cryptographic Signature in jpadilla pyjwt
Description
PyJWT is a Python implementation of JSON Web Token standards. From 2.13.0 until 2.14.0, PyJWT HMACAlgorithm.prepare_key is affected because HMAC key guard only recognizes top-level public JWK forms and misses container representations. This occurs when an application allows HMAC and asymmetric algorithms and passes a public JWK container as the raw key. As a result, public asymmetric key material is accepted as the HMAC secret. Consequently, an attacker who knows the public key can forge a token with arbitrary authenticated claims. This issue is fixed in version 2.14.0.
CVSS v3.1
Score 7.4high
Affected software
jpadilla
pyjwt
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
PyJWT, a Python library implementing JSON Web Token standards, has a cryptographic signature verification vulnerability (CWE-347) in versions >=2.13.0 <2.14.0. The HMACAlgorithm.prepare_key method improperly verifies keys because it only recognizes top-level public JWK forms and misses container representations. When an application supports both HMAC and asymmetric algorithms and passes a public JWK container as the raw key, the library mistakenly accepts public asymmetric key material as the HMAC secret. This allows an attacker with knowledge of the public key to forge tokens with arbitrary authenticated claims. The issue is resolved in version 2.14.0.
Potential Impact
An attacker who knows the public key can exploit this vulnerability to forge JSON Web Tokens with arbitrary authenticated claims, potentially bypassing authentication or authorization controls in applications using affected PyJWT versions. This can lead to unauthorized access or privilege escalation. There are no known exploits in the wild at this time.
Mitigation Recommendations
Upgrade PyJWT to version 2.14.0 or later, where this vulnerability is fixed. No other mitigations are indicated by the vendor advisory.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- GitHub_M
- Date Reserved
- 2026-09-28T20:11:16.658Z
- Cvss Version
- 3.1
- State
- PUBLISHED
Threat ID: 6abad292f7a7c541062fe5b3
Added to database: 09/28/2026, 20:48:18 UTC
Last enriched: 09/28/2026, 21:02:50 UTC
Last updated: 09/29/2026, 02:48:37 UTC
Views: 7
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.