CVE-2026-48525: CWE-400: Uncontrolled Resource Consumption in jpadilla pyjwt
PyJWT is a JSON Web Token implementation in Python. From 2.8.0 to 2.12.1, when verifying detached JWS tokens using the unencoded-payload option ("b64": false, RFC 7797), PyJWT performs Base64URL decoding of the compact-serialization payload segment before enforcing the detached-payload rules. For b64=false, PyJWT later discards that decoded payload and replaces it with the caller-provided detached_payload. In practice, this turns the middle segment into an attacker-controlled “work amplifier”: a remote client can supply an arbitrarily large Base64URL payload segment that forces CPU work + memory allocations even if the signature is invalid. This creates an unauthenticated DoS vector against any endpoint that verifies detached JWS using PyJWT. This vulnerability is fixed in 2.13.0.
AI Analysis
Technical Summary
PyJWT, a Python JSON Web Token library, has an uncontrolled resource consumption vulnerability (CWE-400) in versions 2.8.0 through 2.12.1. When verifying detached JWS tokens with the unencoded-payload option (b64=false), PyJWT performs Base64URL decoding on the payload segment before applying detached-payload rules. This decoded payload is then discarded and replaced by the caller-provided detached_payload. However, the initial decoding step allows an attacker to supply a large Base64URL payload segment that forces significant CPU and memory allocation, even if the signature is invalid. This creates an unauthenticated denial-of-service attack vector. The vulnerability is resolved in PyJWT version 2.13.0.
Potential Impact
An attacker can cause excessive CPU and memory consumption on any endpoint verifying detached JWS tokens using PyJWT with the unencoded-payload option. This can lead to denial-of-service conditions without requiring authentication or valid signatures. There is no impact on confidentiality or integrity, only availability.
Mitigation Recommendations
Upgrade PyJWT to version 2.13.0 or later, where this vulnerability is fixed. No other mitigations are indicated. Patch status is not explicitly stated in the vendor advisory, but the fix is included starting with version 2.13.0.
CVE-2026-48525: CWE-400: Uncontrolled Resource Consumption in jpadilla pyjwt
Description
PyJWT is a JSON Web Token implementation in Python. From 2.8.0 to 2.12.1, when verifying detached JWS tokens using the unencoded-payload option ("b64": false, RFC 7797), PyJWT performs Base64URL decoding of the compact-serialization payload segment before enforcing the detached-payload rules. For b64=false, PyJWT later discards that decoded payload and replaces it with the caller-provided detached_payload. In practice, this turns the middle segment into an attacker-controlled “work amplifier”: a remote client can supply an arbitrarily large Base64URL payload segment that forces CPU work + memory allocations even if the signature is invalid. This creates an unauthenticated DoS vector against any endpoint that verifies detached JWS using PyJWT. This vulnerability is fixed in 2.13.0.
CVSS v3.1
Score 5.3medium
Affected software
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 JSON Web Token library, has an uncontrolled resource consumption vulnerability (CWE-400) in versions 2.8.0 through 2.12.1. When verifying detached JWS tokens with the unencoded-payload option (b64=false), PyJWT performs Base64URL decoding on the payload segment before applying detached-payload rules. This decoded payload is then discarded and replaced by the caller-provided detached_payload. However, the initial decoding step allows an attacker to supply a large Base64URL payload segment that forces significant CPU and memory allocation, even if the signature is invalid. This creates an unauthenticated denial-of-service attack vector. The vulnerability is resolved in PyJWT version 2.13.0.
Potential Impact
An attacker can cause excessive CPU and memory consumption on any endpoint verifying detached JWS tokens using PyJWT with the unencoded-payload option. This can lead to denial-of-service conditions without requiring authentication or valid signatures. There is no impact on confidentiality or integrity, only availability.
Mitigation Recommendations
Upgrade PyJWT to version 2.13.0 or later, where this vulnerability is fixed. No other mitigations are indicated. Patch status is not explicitly stated in the vendor advisory, but the fix is included starting with version 2.13.0.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- GitHub_M
- Date Reserved
- 2026-05-21T16:18:10.619Z
- Cvss Version
- 3.1
- State
- PUBLISHED
- Remediation Level
- null
Threat ID: 6a186056e29bf47b500b42db
Added to database: 05/28/2026, 15:33:42 UTC
Last enriched: 06/24/2026, 15:12:14 UTC
Last updated: 07/31/2026, 19:22:59 UTC
Views: 73
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.
External Links
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.