CVE-2026-102274 json
PyJWT: Malformed RSA JWK aborts parsing of an entire JWK Set
published last mo. modified last mo. also EUVD-2026-88542 , GHSA-w6j9-cwv2-h6wq , PYSEC-2026-4152
- cvss
- 5.9
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.5%
- EPSS 0.5% chance of exploitation in 30 days, percentile 46%
- public exploits
- 0
- none known
Summary
PyJWT is a Python implementation of JSON Web Token standards. From 2.9.0 until 2.14.0, PyJWKSet does not catch the plain ValueError raised for malformed RSA JWK components by RSAAlgorithm.from_jwk in jwt/api_jwk.py. This occurs when a JWK Set contains a malformed RSA key alongside otherwise usable keys. As a result, one malformed member aborts construction of the entire PyJWKSet. Consequently, applications can experience authentication failures or request-level denial of service. This issue is fixed in version 2.14.0.
Patch / fix
- pypi pyjwt 2.14.0
- pyjwt_project pyjwt 2.14.0
- pyjwt Debian 14 2.14.0-1
debian advisories DEBIAN-CVE-2026-102274
- pyjwt Ubuntu 22.04 LTS 2.3.0-1ubuntu0.6
- pyjwt Ubuntu 24.04 LTS 2.7.0-1ubuntu0.4
- pyjwt Ubuntu 26.10 2.13.0-1ubuntu1.1
- pyjwt Ubuntu 26.04 LTS 2.10.1-4ubuntu1.3
ubuntu advisories UBUNTU-CVE-2026-102274
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- python-PyJWT Linux Micro 6.1 2.12.1-slfo.1.1_3.1
- python-PyJWT SLES 16.0, Linux Micro 6.2, SLES for SAP applications 16.0 2.12.1-160000.3.1
- python-PyJWT Linux Micro 6.0 2.9.0-159998.1.1
suse advisories SUSE-SU-2026:24377-1SUSE-SU-2026:24126-1SUSE-SU-2026:24219-1SUSE-SU-2026:24134-1
- python-PyJWT openSUSE Leap 16.0 2.12.1-160000.3.1
opensuse advisories openSUSE-SU-2026:22074-1
- python-jwt Azure Linux 3.0 2.15.1-1
azure linux advisories AZL-105236
Azure Linux vulnerability data, Copyright (c) Microsoft Corporation, from https://github.com/microsoft/AzureLinuxVulnerabilityData via OSV, under the MIT licence; changed: normalised to fixed package versions per release. MIT
Is CVE-2026-102274 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerVendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-102274 updated cvss 5.9
pyjwt: pyjwt: Denial of Service via malformed RSA key in JWK set
-
Red Hat Ansible Automation Orchestrator 2026 ansible-automation-platform/automation-orchestrator-backend-rhel9 Red Hat Confidential Compute Attestation openshift-sandboxed-containers/osc-podvm-builder-rhel9 Red Hat Fence Agents Remediation Operator workload-availability/fence-agents-remediation-rhel9-operator Red Hat Lightspeed Core lightspeed-core/rag-tool-cpu-rhel9, lightspeed-core/lightspeed-stack-rhel9, lightspeed-core/rag-tool-cuda-12.9-rhel9 Red Hat Migration Toolkit for Applications 8 mta/mta-solution-server-rhel9 Red Hat OpenShift Lightspeed openshift-lightspeed/lightspeed-ocp-rag-rhel9, openshift-lightspeed/lightspeed-service-api-rhel9, openshift-lightspeed/lightspeed-agentic-sandbox-rhel9, openshift-lightspeed/lightspeed-to-dataverse-exporter-rhel9affected: workaround, no fix available “Fix deferred”
+14 more productsfewer
Red Hat AI Inference Server rhaiis/vllm-cuda-rhel9, rhaiis/vllm-rocm-rhel9 Red Hat Ansible Automation Platform 2 python3.12-pyjwt, automation-controller, ansible-automation-platform-25/hub-rhel8, ansible-automation-platform-26/hub-rhel9, ansible-automation-platform-27/hub-rhel9, ansible-automation-platform-25/gateway-rhel8, +22 more Red Hat Ceph Storage 4 python2-jwt Red Hat Ceph Storage 7 rhceph/rhceph-7-rhel9 Red Hat Ceph Storage 9 rhceph/rhceph-9-rhel9 Red Hat Enterprise Linux 9 fence-virt, fence-virtd, fence-agents, fence-virtd-cpg, fence-virtd-tcp, fence-agents-all, +51 more Red Hat Enterprise Linux 10 fence-agents-common Red Hat OpenShift AI (RHOAI) rhoai/odh-ogx-core-rhel9, rhoai/odh-vllm-gaudi-rhel9, rhoai/odh-kserve-agent-rhel9, rhoai/odh-kserve-router-rhel9, rhoai/odh-feature-server-rhel9, rhoai/odh-llm-d-kv-cache-rhel9, +22 more Red Hat OpenShift Container Platform 5 python-pyjwt Red Hat OpenShift Virtualization 4 openshift-virtualization/konflux-builds/v4-22/ocp-virt-validation-checkup-rhel9 Red Hat Quay 3 quay/quay-rhel8, quay/quay-rhel9 Red Hat Satellite 6 python-pyjwt, python3-pyjwt, python3.12-pyjwt, satellite/foreman-mcp-server-rhel9 Red Hat Trusted Artifact Signer rhtas/segment-reporting-rhel9, rhtas/model-transparency-rhel9 Red Hat Update Infrastructure 5 rhui5/rhua-rhel9, rhui5/rhua-tp-rhel9 -
Red Hat AI Inference Server 3.5 rhaii/vllm-cpu-rhel9 1791473614, rhaii/vllm-cuda-rhel9 1791473631, rhaii/vllm-rocm-rhel9 1791425869, rhaii/vllm-gaudi-rhel9 1791427182, rhaii/vllm-spyre-rhel9 1791818357fixed: vendor fix RHSA-2026:82415
-
Red Hat Enterprise Linux AI 3.5 rhelai3/bootc-cuda-rhel9 1793135861, rhelai3/bootc-rocm-rhel9 1793135863, rhelai3/bootc-aws-cuda-rhel9 1793194817, rhelai3/bootc-gcp-cuda-rhel9 1793194815, rhelai3/disk-image-cuda-rhel9 1793206758, rhelai3/bootc-azure-cuda-rhel9 1793194815, +1 morefixed: vendor fix RHSA-2026:92452
-
Red Hat AI Inference Server rhaii/vllm-tpu-rhel9, rhaiis/vllm-cpu-rhel9, rhaiis/vllm-tpu-rhel9, rhaii/vllm-neuron-rhel9 Red Hat Ansible Automation Platform 2 python-pyjwt, python3x-pyjwt, python3.11-pyjwt, ansible-automation-platform-24/hub-rhel8, ansible-automation-platform-24/controller-rhel8, ansible-automation-platform-24/lightspeed-rhel8, +4 more Red Hat Enterprise Linux 8 python-jwt, python3-jwt, rhel8/support-tools Red Hat Enterprise Linux AI (RHEL AI) 3 rhelai3/bootc-gaudi-rhel9 Red Hat Enterprise Linux command line assistant rhel-cla/rhel-knowledge-bridge-rhel10not affected: vulnerable code not present
-
Red Hat Hardened Images rust 1.98.1-1.hum1, llvm21 21.1.8-10.hum1, jaeger 2.20.0-0.11.hum1, swift-lang 6.4.0-0.5.hum1not affected: component not present
-
Red Hat OpenStack Platform 13 (Queens) python-jwt Red Hat OpenStack Platform 16.2 rhosp-rhel8/openstack-tempest, rhosp-rhel8/openstack-keystone, rhosp-rhel8/openstack-cinder-api, rhosp-rhel8/openstack-mistral-api, rhosp-rhel8/openstack-mistral-base, rhosp-rhel8/openstack-mistral-engine, +2 more Red Hat OpenStack Platform 17.1 python3-jwt, rhosp-rhel9/openstack-keystone, rhosp-rhel9/openstack-cinder-api Red Hat OpenStack Platform 18.0 python-jwt, rhoso/openstack-keystone-rhel9, rhoso/openstack-cinder-api-rhel9 Red Hat Satellite 6 satellite/iop-host-inventory-rhel9 Red Hat Update Infrastructure 4 for Cloud Providers python-pyjwtnot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- partial
- Assessed
- last mo.
Exploit prediction
0.55% chance of exploitation in the next 30 days, higher than 46% of all scored CVEs (FIRST EPSS, 2026-11-09).
Exploits and checks
- github.com https://github.com/jpadilla/pyjwt/security/advisories/GHSA-w6j9-cwv2-h6wq referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 5.9 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H |
| GitHub | 3.1 | 5.9 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H |
| NVD | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
| OSV | 3.1 | 5.9 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | pyjwt | >=2.9.0, <2.14.0 |
2.14.0 |
Affected products
- jpadilla pyjwt
Classification
- Weakness
-
- CWE-755 Improper Handling of Exceptional Conditions
References
-
github.com
/jpadilla/pyjwt/commit/8915570a0bfda9f0ff0e34e7fb09bdb9d71580cf
web, patch
-
github.com
/jpadilla/pyjwt/security/advisories/GHSA-w6j9-cwv2-h6wq
exploit, web, mitigation, vendor-advisory
-
github.com
/jpadilla/pyjwt/releases/tag/2.14.0
web, product, release-notes
-
nvd.nist.gov
/vuln/detail/CVE-2026-102274
advisory
-
github.com
/jpadilla/pyjwt
package
-
pypi.org
/project/pyjwt
package
-
github.com
/advisories/GHSA-w6j9-cwv2-h6wq
advisory
Sources
- CVE List CVE-2026-102274
- GitHub Advisory GHSA-w6j9-cwv2-h6wq
- NVD CVE-2026-102274
- OSV PYSEC-2026-4152
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.