PyJWT accepts public JWK containers as HMAC secrets
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- High
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- High · High · None
- Fix status
- Partial Red Hat: 11 fixed, 12 without a fix
Attack profile from CVSS 3.1 · CNA. Fix status from CNA, GitHub and Red Hat. Impact type from CWE-347.
Summary
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.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| jpadilla | pyjwt | 2.13.0 to before 2.14.0 | 2.14.0 | Patch available | CNA |
| — | PyJWT (PyPI) | 2.13.0 to before 2.14.0 | 2.14.0 | Patch available | GHSA-w2cx-738m-mc7w |
- pyjwt Vendorjpadilla Affected 2.13.0 to before 2.14.0 Fixed in 2.14.0 Patch available CNA
- PyJWT (PyPI) Vendor— Affected 2.13.0 to before 2.14.0 Fixed in 2.14.0 Patch available GHSA-w2cx-738m-mc7w
Remediation
- Fix · CNA pyjwt (jpadilla) Fixed in 2.14.0
- Fix · GHSA-w2cx-738m-mc7w PyJWT (PyPI) Fixed in 2.14.0 Advisory →
Red Hat 22 advisories
- RHSA-2026:95267 Released 2026-11-04 · Red Hat rating CriticalRHTAS 1.5.1 - Tech Preview Release Of the Sigstore A2A 0.0.2
- Red Hat Trusted Artifact Signer 1.5 registry.redhat.io/rhtas/rh-sigstore-a2a-rhel9
- RHSA-2026:95261 Released 2026-11-04 · Red Hat rating CriticalRHTAS 1.5.1 - Release of Model Transparency 1.0.6
- Red Hat Trusted Artifact Signer 1.5 registry.redhat.io/rhtas/model-transparency-rhel9
- RHSA-2026:92667 Released 2026-10-29 · Red Hat rating Criticalsatellite/foreman-mcp-server-rhel9 container image available as a Technology Preview
- Red Hat Satellite 6.18 registry.redhat.io/satellite/foreman-mcp-server-rhel9
Show 19 more Red Hat advisories
- RHSA-2026:92666 Released 2026-10-29 · Red Hat rating Criticalsatellite/foreman-mcp-server-rhel9 container image available as a Technology Preview
- Red Hat Satellite 6.19 registry.redhat.io/satellite/foreman-mcp-server-rhel9
- RHSA-2026:92452 Released 2026-10-29 · Red Hat rating CriticalRed Hat Enterprise Linux AI 3.5.2 enhancement update
- Red Hat Enterprise Linux AI 3.5 registry.redhat.io/rhelai3/bootc-aws-cuda-rhel9, registry.redhat.io/rhelai3/bootc-azure-cuda-rhel9, registry.redhat.io/rhelai3/bootc-azure-rocm-rhel9 +3
- RHSA-2026:92449 Released 2026-10-29 · Red Hat rating CriticalRed Hat Enterprise Linux AI 3.5.2 enhancement update
- Red Hat Enterprise Linux AI 3.5 registry.redhat.io/rhelai3/disk-image-cuda-rhel9
- RHSA-2026:90440 Released 2026-10-26 · Red Hat rating ImportantRed Hat Enterprise Linux AI 3.4.6 security update
- Red Hat Enterprise Linux AI 3.4 registry.redhat.io/rhelai3/bootc-aws-cuda-rhel9, registry.redhat.io/rhelai3/bootc-azure-cuda-rhel9, registry.redhat.io/rhelai3/bootc-azure-rocm-rhel9 +3
- RHSA-2026:90432 Released 2026-10-26 · Red Hat rating ImportantRed Hat Enterprise Linux AI 3.4.6 security update
- Red Hat Enterprise Linux AI 3.4 registry.redhat.io/rhelai3/disk-image-cuda-rhel9
- RHSA-2026:87124 Released 2026-10-21 · Red Hat rating CriticalRed Hat Ansible Automation Platform 2.7 Container Release Update
- Red Hat Ansible Automation Platform 2.7 registry.redhat.io/ansible-automation-platform-27/de-supported-rhel9, registry.redhat.io/ansible-automation-platform-27/eda-controller-rhel9, registry.redhat.io/ansible-automation-platform-27/ee-supported-rhel9 +8
- RHSA-2026:87120 Released 2026-10-21 · Red Hat rating CriticalRed Hat Ansible Automation Platform 2.6 Container Release Update
- Red Hat Ansible Automation Platform 2.6 registry.redhat.io/ansible-automation-platform-26/eda-controller-rhel9, registry.redhat.io/ansible-automation-platform-26/ee-supported-rhel9, registry.redhat.io/ansible-automation-platform-26/gateway-rhel9 +8
- RHSA-2026:87004 Released 2026-10-21 · Red Hat rating ImportantRed Hat Ansible Automation Platform 2.6 Product Security and Bug Fix Update
- Red Hat Ansible Automation Platform 2.6 for RHEL 9 automation-gateway-server-2.6.20261019-1.el9ap, automation-platform-ui-2.6.15-1.el9ap, python3.12-pulpcore-3.49.71-1.el9ap +2
- RHSA-2026:84734 Released 2026-10-19 · Red Hat rating CriticalRHOAI 3.4.5 - Red Hat OpenShift AI
- Red Hat OpenShift AI 3.4 registry.redhat.io/rhoai/odh-ai-gateway-payload-processing-rhel9, registry.redhat.io/rhoai/odh-automl-rhel9, registry.redhat.io/rhoai/odh-autorag-rhel9 +47
- RHSA-2026:83121 Released 2026-10-14 · Red Hat rating ImportantRed Hat AI Inference 3.4.6 (rocm)
- Red Hat AI Inference Server 3.4 registry.redhat.io/rhaii/vllm-rocm-rhel9
- RHSA-2026:83120 Released 2026-10-14 · Red Hat rating ImportantRed Hat AI Inference 3.4.6 (cuda)
- Red Hat AI Inference Server 3.4 registry.redhat.io/rhaii/vllm-cuda-rhel9
- RHSA-2026:83114 Released 2026-10-14 · Red Hat rating ImportantRed Hat AI Inference 3.4.6 (spyre)
- Red Hat AI Inference Server 3.4 registry.redhat.io/rhaii/vllm-spyre-rhel9
- RHSA-2026:83112 Released 2026-10-14 · Red Hat rating ImportantRed Hat AI Inference 3.4.6 (cpu)
- Red Hat AI Inference Server 3.4 registry.redhat.io/rhaii/vllm-cpu-rhel9
- RHSA-2026:82415 Released 2026-10-13 · Red Hat rating CriticalRed Hat AI Inference 3.5.2 (cpu)
- Red Hat AI Inference Server 3.5 registry.redhat.io/rhaii/vllm-cpu-rhel9
- RHSA-2026:82371 Released 2026-10-13 · Red Hat rating CriticalRed Hat AI Inference 3.5.2 (spyre)
- Red Hat AI Inference Server 3.5 registry.redhat.io/rhaii/vllm-spyre-rhel9
- RHSA-2026:82368 Released 2026-10-13 · Red Hat rating CriticalRed Hat AI Inference 3.5.2 (cuda)
- Red Hat AI Inference Server 3.5 registry.redhat.io/rhaii/vllm-cuda-rhel9
- RHSA-2026:82061 Released 2026-10-13 · Red Hat rating CriticalRed Hat AI Inference Tech Preview 3.5.2 (Gaudi)
- Red Hat AI Inference Server 3.5 registry.redhat.io/rhaii/vllm-gaudi-rhel9
- RHSA-2026:82059 Released 2026-10-13 · Red Hat rating CriticalRed Hat AI Inference 3.5.2 (ROCm)
- Red Hat AI Inference Server 3.5 registry.redhat.io/rhaii/vllm-rocm-rhel9
- RHSA-2026:79378 Released 2026-10-08 · Red Hat rating CriticalRed Hat Ansible Automation Platform 2.7 Container Release Update
- Red Hat Ansible Automation Platform 2.7 registry.redhat.io/ansible-automation-platform-27/controller-rhel9, registry.redhat.io/ansible-automation-platform-27/ee-supported-rhel9, registry.redhat.io/ansible-automation-platform-27/gateway-rhel9 +4
Vendor assessments
Red Hat
Red Hat rating: Important. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Ansible Automation Orchestrator 2026 | Affected | No fix yet |
| Fence Agents Remediation Operator | Affected | No fix yet |
| Lightspeed Core | Affected | No fix yet |
| Migration Toolkit for Applications 8 | Affected | No fix yet |
| OpenShift Lightspeed | Affected | No fix yet |
| Red Hat AI Inference Server | Affected | No fix planned: Will not fix |
| Red Hat Ansible Automation Platform 2 | Affected | No fix yet |
| Red Hat Ceph Storage 7 | Affected | No fix yet |
| Red Hat OpenShift AI (RHOAI) | Affected | No fix yet |
| Red Hat Quay 3 | Affected | No fix yet |
| Red Hat Satellite 6 | Affected | No fix yet |
| Red Hat Update Infrastructure 5 | Affected | No fix yet |
| Red Hat AI Inference Server 3.4 | Fixed | RHSA-2026:83112, RHSA-2026:83114, RHSA-2026:83120, RHSA-2026:83121 |
| Red Hat AI Inference Server 3.5 | Fixed | RHSA-2026:82059, RHSA-2026:82061, RHSA-2026:82368, RHSA-2026:82371, RHSA-2026:82415 |
| Red Hat Ansible Automation Platform 2.6 | Fixed | RHSA-2026:87120 |
| Red Hat Ansible Automation Platform 2.6 for RHEL 9 | Fixed | RHSA-2026:87004 |
| Red Hat Ansible Automation Platform 2.7 | Fixed | RHSA-2026:79378, RHSA-2026:87124 |
| Red Hat Enterprise Linux AI 3.4 | Fixed | RHSA-2026:90432, RHSA-2026:90440 |
| Red Hat Enterprise Linux AI 3.5 | Fixed | RHSA-2026:92449, RHSA-2026:92452 |
| Red Hat OpenShift AI 3.4 | Fixed | RHSA-2026:84734 |
| Red Hat Satellite 6.18 | Fixed | RHSA-2026:92667 |
| Red Hat Satellite 6.19 | Fixed | RHSA-2026:92666 |
| Red Hat Trusted Artifact Signer 1.5 | Fixed | RHSA-2026:95261, RHSA-2026:95267 |
Not affected: 28 products
- Confidential Compute Attestation
- OpenShift Lightspeed
- Red Hat AI Inference Server
- Red Hat Ansible Automation Platform 2
- Red Hat Ansible Automation Platform 2.6
- Red Hat Ansible Automation Platform 2.6 for RHEL 10
- Red Hat Ansible Automation Platform 2.6 for RHEL 9
- Red Hat Ansible Automation Platform 2.7
- Red Hat Ceph Storage 4
- Red Hat Ceph Storage 9
- Red Hat Enterprise Linux 10
- Red Hat Enterprise Linux 8
- Red Hat Enterprise Linux 9
- Red Hat Enterprise Linux AI (RHEL AI) 3
- Red Hat Enterprise Linux command line assistant
- Red Hat Hardened Images
- Red Hat OpenShift AI (RHOAI)
- Red Hat OpenShift AI 3.4
- Red Hat OpenShift Container Platform 5
- Red Hat OpenShift Virtualization 4
- Red Hat OpenStack Platform 13 (Queens)
- Red Hat OpenStack Platform 16.2
- Red Hat OpenStack Platform 17.1
- Red Hat OpenStack Platform 18.0
- Red Hat Satellite 6
- Red Hat Trusted Artifact Signer
- Red Hat Update Infrastructure 4 for Cloud Providers
- Red Hat Update Infrastructure 5
Timeline
- 2026-10-02 Threatist record created from CVE-2026-102273
- 2026-10-03 Alias added: GHSA-w2cx-738m-mc7w
- 2026-10-07 Affected versions changed · Red Hat
- 2026-10-08 Affected versions changed · Red Hat
- 2026-10-09 Fix available: RHSA-2026:79378 · Red Hat
- 2026-10-09 Fix available: Red Hat Ansible Automation Platform 2.7 · Red Hat
- 2026-10-13 Fix available: RHSA-2026:82061 · Red Hat
- 2026-10-13 Fix available: RHSA-2026:82059 · Red Hat
- 2026-10-13 Fix available: Red Hat AI Inference Server 3.5 · Red Hat
- 2026-10-14 Fix available: RHSA-2026:82368 · Red Hat
- 2026-10-14 Fix available: RHSA-2026:82415 · Red Hat
- 2026-10-14 Fix available: RHSA-2026:82371 · Red Hat
- 2026-10-16 Fix available: RHSA-2026:83112 · Red Hat
- 2026-10-16 Fix available: RHSA-2026:83114 · Red Hat
- 2026-10-16 Fix available: RHSA-2026:83120 · Red Hat
- 2026-10-16 Fix available: RHSA-2026:83121 · Red Hat
- 2026-10-16 Fix available: Red Hat AI Inference Server 3.4 · Red Hat
- 2026-10-20 Fix available: RHSA-2026:84734 · Red Hat
- 2026-10-20 Fix available: Red Hat OpenShift AI 3.4 · Red Hat
- 2026-10-21 Fix available: RHSA-2026:87004 · Red Hat
- 2026-10-21 Fix available: Red Hat Ansible Automation Platform 2.6 for RHEL 9 · Red Hat
- 2026-10-22 Fix available: RHSA-2026:87124 · Red Hat
- 2026-10-22 Fix available: RHSA-2026:87120 · Red Hat
- 2026-10-22 Fix available: Red Hat Ansible Automation Platform 2.6 · Red Hat
- 2026-10-29 Fix available: Red Hat Enterprise Linux AI 3.4 · Red Hat
- 2026-10-30 Fix available: RHSA-2026:92452 · Red Hat
- 2026-10-30 Fix available: RHSA-2026:92449 · Red Hat
- 2026-10-30 Fix available: RHSA-2026:90432 · Red Hat
- 2026-10-30 Fix available: RHSA-2026:90440 · Red Hat
- 2026-10-30 Fix available: Red Hat Enterprise Linux AI 3.5 · Red Hat
- 2026-10-30 Affected versions changed · Red Hat
- 2026-10-30 Fix available: Red Hat Satellite 6.18, Red Hat Satellite 6.19 · Red Hat
- 2026-10-31 Fix available: RHSA-2026:92666 · Red Hat
- 2026-10-31 Fix available: RHSA-2026:92667 · Red Hat
- 2026-11-05 Fix available: Red Hat Trusted Artifact Signer 1.5 · Red Hat
- 2026-11-06 Fix available: RHSA-2026:95261 · Red Hat
- 2026-11-06 Fix available: RHSA-2026:95267 · Red Hat
References
Advisory 2
More jpadilla Pyjwt vulnerabilities
- TI-2026-65303 Improper signature verification in jpadilla pyjwt CVSS 3.1CRITICAL 9.1
- TI-2026-65301 PyJWK accepts empty HMAC keys, bypassing PyJWT's empty-key validation CVSS 3.1CRITICAL 9.1
- TI-2026-65219 PyJWT: Unauthenticated RecursionError DoS in pre-verification payload parse… CVSS 3.1HIGH 7.5
- TI-2026-65218 PyJWT: PyJWKClient still amplifies unauthenticated JWKS fetches on unknown kid values (incomplete fix of CVE-2026-48524) CVSS 3.1HIGH 7.5
- TI-2026-25107 PyJWT accepts unknown `crit` header extensions (RFC 7515 §4.1.11 MUST violation) CVSS 3.1HIGH 7.5
- TI-2026-65310 PyJWT accepts inconsistent OKP x/d JWKs, causing public/private key identity confusion CVSS 3.1HIGH 8.2
Sources
- CVE-2026-102273 · CVE Program
- CVE-2026-102273 · NVD
- FIRST EPSS
- GHSA-w2cx-738m-mc7w · GitHub Advisory Database · CC BY 4.0
- CVE-2026-102273 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences