Skip to content
OpenAdvisories

Description

PyJWT is a JSON Web Token implementation in Python. Prior to 2.13.0, PyJWKClient passes its uri argument directly to urllib.request.urlopen() which uses Python stdlib's default OpenerDirector registering HTTPHandler, HTTPSHandler, FTPHandler, FileHandler, and DataHandler. There is currently no documented option to restrict which schemes PyJWKClient will fetch. If an application's jku URL ingestion path accepts attacker-influenced URLs (e.g., from JWT header, configuration file, OAuth flow parameter), the attacker can cause PyJWKClient to read arbitrary local files via file:// (SSRF on local filesystem), cause PyJWKClient to attempt FTP / data-URI fetches (broader SSRF surface), or forge tokens that PyJWT verifies as valid. The library does not directly return non-HTTP(S) URI contents to the attacker; the chained "plant a JWKS to forge tokens" scenario described in the original report requires additional application-layer flaws (attacker write access to a filesystem path, untrusted jku derivation) that this fix does not address. This vulnerability is fixed in 2.13.0.

Affected products

VendorProductAffectedFixed
jpadilla pyjwt < 2.13.0 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 pyjwt 2.13.0-1 —
Debian 13 pyjwt No fix yet —
Debian 12 pyjwt No fix yet —
ReleasePackageFixed inAdvisory
Ubuntu 26.04 LTS pyjwt 2.10.1-4ubuntu1.1 USN-8823-1
Ubuntu 25.10 pyjwt No fix yet —
Ubuntu 24.04 LTS pyjwt 2.7.0-1ubuntu0.2 USN-8823-1
Ubuntu 22.04 LTS pyjwt 2.3.0-1ubuntu0.4 USN-8823-1
Show 3 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu Pro 20.04 LTS pyjwt 1.7.1-2ubuntu2.1+esm2 USN-8823-1
Ubuntu Pro 18.04 LTS pyjwt 1.5.3+ds1-1ubuntu0.1+esm2 USN-8823-1
Ubuntu Pro 16.04 LTS pyjwt 1.3.0-1ubuntu0.1+esm2 USN-8823-1
ReleasePackageFixed inAdvisory
SLES 15 SP7 python-PyJWT 2.4.0-150200.3.14.1 SUSE-SU-2026:2627-1
SLES 15 SP6 python-PyJWT 2.4.0-150200.3.14.1 SUSE-SU-2026:2627-1, SUSE-SU-2026:2626-1
SLES 15 SP5 python-PyJWT 2.4.0-150200.3.14.1 SUSE-SU-2026:2627-1, SUSE-SU-2026:2626-1
SLES 15 SP4 python-PyJWT 2.4.0-150200.3.14.1 SUSE-SU-2026:2627-1, SUSE-SU-2026:2626-1
SLES 3 python-PyJWT 2.8.0-150400.8.13.1 SUSE-SU-2026:2626-1
Show 11 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
SLES for SAP 16.0 python-PyJWT 2.12.1-160000.2.1 SUSE-SU-2026:22170-1
SLES for SAP 15 SP6 python-PyJWT 2.4.0-150200.3.14.1 SUSE-SU-2026:2627-1, SUSE-SU-2026:2626-1
SLES for SAP 15 SP5 python-PyJWT 2.4.0-150200.3.14.1 SUSE-SU-2026:2627-1, SUSE-SU-2026:2626-1
SLES for SAP 15 SP4 python-PyJWT 2.4.0-150200.3.14.1 SUSE-SU-2026:2627-1, SUSE-SU-2026:2626-1
SLES 16.0 python-PyJWT 2.12.1-160000.2.1 SUSE-SU-2026:22170-1
SLE Micro 6.2 python-PyJWT 2.12.1-160000.2.1 SUSE-SU-2026:22220-1
SLE Micro 6.1 python-PyJWT 2.12.1-slfo.1.1_2.1 SUSE-SU-2026:22138-1
SLE Micro 6.0 python-PyJWT 2.9.0-3.1 SUSE-SU-2026:22238-1
SLE Micro 5.5 python-PyJWT 2.4.0-150200.3.14.1 SUSE-SU-2026:2627-1
SLE HPC 15 SP5 python-PyJWT 2.4.0-150200.3.14.1 SUSE-SU-2026:2627-1, SUSE-SU-2026:2626-1
SLE HPC 15 SP4 python-PyJWT 2.4.0-150200.3.14.1 SUSE-SU-2026:2627-1, SUSE-SU-2026:2626-1
ReleasePackageFixed inAdvisory
openSUSE Tumbleweed python-PyJWT 2.13.0-1.1 openSUSE-SU-2026:11024-1
openSUSE Leap 16.0 python-PyJWT 2.12.1-160000.2.1 openSUSE-SU-2026:21095-1

Amazon Linux

ReleasePackageFixed inAdvisory
Amazon Linux 2023 python3-jwt +1 2.4.0-1.amzn2023.0.5 ALAS2023-2026-2051

Azure Linux

ReleasePackageFixed inAdvisory
Azure Linux 3 python-jwt 2.13.0-1 —

Wolfi

ReleasePackageFixed inAdvisory
Wolfi rolling datadog-agent-7.72-core-integrations No fix yet —
Wolfi rolling datadog-agent-7.73-core-integrations 7.73.3-r23 —
Wolfi rolling datadog-agent-7.77-core-integrations 7.77.3-r16 —
Wolfi rolling datadog-agent-7.78-core-integrations 7.78.4-r10 —
Wolfi rolling datadog-agent-7.79-core-integrations 7.79.2-r6 —
Wolfi rolling datadog-agent-7.80-core-integrations 7.80.4-r3 —
Wolfi rolling ggshield 1.52.2-r1 —
Wolfi rolling kserve +1 0.20.0-r7 —
Wolfi rolling kserve-storage-controller 0.19.0-r2 —
Wolfi rolling superset-6.0 6.0.0-r17 —
Wolfi rolling superset-6.1 6.1.0-r2 —

Affected packages

EcosystemPackageAffectedFixedRecord
PyPI pyjwt >= 2.0.0, < 2.13.0 2.13.0 GHSA-993g-76c3-p5m4
PyPI pyjwt < 2.13.0 2.13.0 PYSEC-2026-175

Advisories 10

References