CVE Feed
3.7 Low

PyJWT is a JSON Web Token implementation in Python.

CVE-2026-48524

[!NOTE] The vulnerability surfaces only when a JWKS fetch fails; an attacker can attempt to provoke that with sustained unknown-kid traffic, but the outcome depends on upstream JWKS-endpoint behavior (rate limiting, transient errors) which is beyond the attacker's control. Impact is reduced auth availability until the next successful fetch, not complete denial of service. Summary PyJWKClient.getsigningkey() forces a fresh HTTP request to the JWKS endpoint for every JWT with an unknown kid value, with no rate limiting. Since kid comes from the unverified token header, an attacker can trigger unlimited outbound requests. Additionally, fetchdata() finally block clears the JWKS cache on network error. Root Cause jwt/jwksclient.py:172-198 - getsigningkey(kid) calls getsigningkeys(refresh=True) for unknown kids, bypassing TTL cache with no cooldown. jwt/jwksclient.py:120-122 - finally block writes None to cache on error, clearing valid data. Impact DoS against JWKS endpoint (unlimited requests per invalid token) DoS against application (network I/O latency) Cascading failure (rate limiting clears cache, breaking legitimate auth) Suggested Fix 1. Add refresh cooldown (refuse refresh more…

Assessment

CVSS
3.7 (v3.1)
Severity
Low
EPSS
0.4% chance of exploitation in the next 30 days
Known exploited
Not listed in CISA KEV
Exploit availability
Nothing found in Exploit-DB, Metasploit, Nuclei or public PoC repositories
Published
28 May 2026
Last updated
26 October 2026
Affected
jpadilla · pyjwt · pyjwt
Weakness
CWE-460, CWE-755
Assigner
security-advisories@github.com

CVSS vectorCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L

At the source

References

Community proofs of concept

No community proof of concept yet. If you have one for a published vulnerability and the right to share it, add it below — it will appear here once reviewed.

Submit a proof of concept
Before you submit *

Query this programmatically

Agents can read this through the MCP endpoint, or over HTTP:

curl https://cve.zerocrew.in/api/cve/CVE-2026-48524