Read the docs

PyJWK accepts empty HMAC keys, bypassing PyJWT's empty-key validation

Priority HIGH 74CWE-347Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
None
Attack complexity
Low
Impact type
Security bypass
Confidentiality · integrity · availability
High · High · None
Fix status
Partial Red Hat: 15 fixed, 15 without a fix

Attack profile from CVSS 3.1 · NVD. 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, HMACAlgorithm.from_jwk is affected because PyJWK verification path used the decoded key without applying prepare_key validation. This occurs when a trusted JWK Set contains an oct entry with an empty k value. As a result, an attacker signs an HMAC token with the same zero-length key accepted by PyJWT. Consequently, forged token can carry arbitrary authenticated claims. This issue is fixed in version 2.14.0.

Why it matters now

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.00225 13th percentileScored 2026-11-07
Public exploit Yes 1 exploit referenceTagged by NVD
Fix Partial pyjwt (jpadilla): 2.14.0PyJWT (PyPI): 2.14.0Red Hat: 16 advisoriesRed Hat: 15 fixed, 15 without a fix

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
Poc
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

VendorProductAffected versionsFixed inStatusSource
jpadillapyjwt2.13.0 to before 2.14.02.14.0Patch availableCNA
—PyJWT (PyPI)2.13.0 to before 2.14.02.14.0Patch availableGHSA-9j54-fg26-wv3r
  • 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-9j54-fg26-wv3r

CPE configurations NVD · 1

CPEVersionsRoleVendor
cpe:2.3:a:pyjwt_project:pyjwt:2.13.0:*:*:*:*:*:*:*2.13.0Vulnerablejpadilla
  • cpe:2.3:a:pyjwt_project:pyjwt:2.13.0:*:*:*:*:*:*:* Versions 2.13.0 Vulnerable ·jpadilla

Remediation

  • Fix · CNA pyjwt (jpadilla) Fixed in 2.14.0
  • Fix · GHSA-9j54-fg26-wv3r PyJWT (PyPI) Fixed in 2.14.0 Advisory →

Red Hat 16 advisories

  • RHSA-2026:95012 Released 2026-11-04 · Red Hat rating Critical
    fence-agents security update
    • Red Hat Enterprise Linux AppStream EUS (v. 10.0) fence-agents-4.16.0-5.el10_0.14, fence-agents-aliyun-4.16.0-5.el10_0.14, fence-agents-all-4.16.0-5.el10_0.14 +47
  • RHSA-2026:94634 Released 2026-11-03 · Red Hat rating Critical
    fence-agents security update
    • Red Hat Enterprise Linux AppStream E4S (v.9.2) fence-agents-4.10.0-43.el9_2.27, fence-agents-common-4.10.0-43.el9_2.27, fence-agents-compute-4.10.0-43.el9_2.27 +11
    • Red Hat Enterprise Linux High Availability E4S (v.9.2) fence-agents-aliyun-4.10.0-43.el9_2.27, fence-agents-all-4.10.0-43.el9_2.27, fence-agents-amt-ws-4.10.0-43.el9_2.27 +40
    • Red Hat Enterprise Linux Resilient Storage E4S (v.9.2) fence-agents-aliyun-4.10.0-43.el9_2.27, fence-agents-all-4.10.0-43.el9_2.27, fence-agents-amt-ws-4.10.0-43.el9_2.27 +39
  • RHSA-2026:94557 Released 2026-11-03 · Red Hat rating Critical
    fence-agents security update
    • Red Hat Enterprise Linux AppStream E4S (v.9.4) fence-agents-4.10.0-62.el9_4.31, fence-agents-common-4.10.0-62.el9_4.31, fence-agents-compute-4.10.0-62.el9_4.31 +11
    • Red Hat Enterprise Linux High Availability E4S (v.9.4) fence-agents-aliyun-4.10.0-62.el9_4.31, fence-agents-all-4.10.0-62.el9_4.31, fence-agents-amt-ws-4.10.0-62.el9_4.31 +40
    • Red Hat Enterprise Linux Resilient Storage E4S (v.9.4) fence-agents-aliyun-4.10.0-62.el9_4.31, fence-agents-all-4.10.0-62.el9_4.31, fence-agents-amt-ws-4.10.0-62.el9_4.31 +39
Show 13 more Red Hat advisories
  • RHSA-2026:94523 Released 2026-11-03 · Red Hat rating Critical
    fence-agents security update
    • Red Hat Enterprise Linux AppStream EUS (v.9.6) fence-agents-4.10.0-86.el9_6.23, fence-agents-aliyun-4.10.0-86.el9_6.23, fence-agents-all-4.10.0-86.el9_6.23 +47
  • RHSA-2026:94500 Released 2026-11-03 · Red Hat rating Critical
    fence-agents security update
    • Red Hat Enterprise Linux AppStream (v. 9) fence-agents-4.10.0-110.el9_8.8, fence-agents-aliyun-4.10.0-110.el9_8.8, fence-agents-all-4.10.0-110.el9_8.8 +47
  • RHSA-2026:94501 Released 2026-11-03 · Red Hat rating Critical
    fence-agents security update
    • Red Hat Enterprise Linux AppStream (v. 10) fence-agents-4.16.0-21.el10_2.7, fence-agents-aliyun-4.16.0-21.el10_2.7, fence-agents-all-4.16.0-21.el10_2.7 +47
  • RHSA-2026:92452 Released 2026-10-29 · Red Hat rating Critical
    Red 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 Critical
    Red 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:87124 Released 2026-10-21 · Red Hat rating Critical
    Red 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 Critical
    Red 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 Important
    Red 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:82415 Released 2026-10-13 · Red Hat rating Critical
    Red 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 Critical
    Red 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 Critical
    Red 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 Critical
    Red 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 Critical
    Red Hat AI Inference 3.5.2 (ROCm)
    • Red Hat AI Inference Server 3.5 registry.redhat.io/rhaii/vllm-rocm-rhel9

Vendor assessments

Red Hat

Red Hat rating: Important. Red Hat's page for this CVE →

ProductStatusPlan or fix
Ansible Automation Orchestrator 2026AffectedNo fix yet
Fence Agents Remediation OperatorAffectedNo fix yet
Lightspeed CoreAffected—
Migration Toolkit for Applications 8AffectedNo fix yet
Red Hat AI Inference ServerAffected—
Red Hat Ansible Automation Platform 2AffectedNo fix yet
Red Hat Ceph Storage 4AffectedNo fix yet: Fix deferred
Red Hat Ceph Storage 7AffectedNo fix yet: Fix deferred
Red Hat Ceph Storage 9AffectedNo fix yet: Fix deferred
Red Hat Enterprise Linux AI (RHEL AI) 3Affected—
Red Hat OpenShift AI (RHOAI)AffectedNo fix yet
Red Hat Satellite 6Affected—
Red Hat Trusted Artifact SignerAffected—
Red Hat Update Infrastructure 4 for Cloud ProvidersAffected—
Red Hat Update Infrastructure 5Affected—
Red Hat AI Inference Server 3.5Fixed RHSA-2026:82059, RHSA-2026:82061, RHSA-2026:82368, RHSA-2026:82371, RHSA-2026:82415
Red Hat Ansible Automation Platform 2.6Fixed RHSA-2026:87120
Red Hat Ansible Automation Platform 2.6 for RHEL 9Fixed RHSA-2026:87004
Red Hat Ansible Automation Platform 2.7Fixed RHSA-2026:87124
Red Hat Enterprise Linux AI 3.5Fixed RHSA-2026:92449, RHSA-2026:92452
Red Hat Enterprise Linux AppStream (v. 10)Fixed RHSA-2026:94501
Red Hat Enterprise Linux AppStream (v. 9)Fixed RHSA-2026:94500
Red Hat Enterprise Linux AppStream E4S (v.9.2)Fixed RHSA-2026:94634
Red Hat Enterprise Linux AppStream E4S (v.9.4)Fixed RHSA-2026:94557
Red Hat Enterprise Linux AppStream EUS (v. 10.0)Fixed RHSA-2026:95012
Red Hat Enterprise Linux AppStream EUS (v.9.6)Fixed RHSA-2026:94523
Red Hat Enterprise Linux High Availability E4S (v.9.2)Fixed RHSA-2026:94634
Red Hat Enterprise Linux High Availability E4S (v.9.4)Fixed RHSA-2026:94557
Red Hat Enterprise Linux Resilient Storage E4S (v.9.2)Fixed RHSA-2026:94634
Red Hat Enterprise Linux Resilient Storage E4S (v.9.4)Fixed RHSA-2026:94557
Not affected: 19 products
  • Confidential Compute Attestation
  • OpenShift Lightspeed
  • 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 Enterprise Linux 8
  • Red Hat Enterprise Linux command line assistant
  • Red Hat Hardened Images
  • Red Hat OpenShift AI (RHOAI)
  • Red Hat OpenShift Container Platform 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 Quay 3

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-102266
  2. 2026-10-03 Alias added: GHSA-9j54-fg26-wv3r
  3. 2026-10-08 CVSS score added · NVD
  4. 2026-10-13 Fix available: RHSA-2026:82061 · Red Hat
  5. 2026-10-13 Fix available: RHSA-2026:82059 · Red Hat
  6. 2026-10-13 Fix available: Red Hat AI Inference Server 3.5 · Red Hat
  7. 2026-10-14 Fix available: RHSA-2026:82368 · Red Hat
  8. 2026-10-14 Fix available: RHSA-2026:82415 · Red Hat
  9. 2026-10-14 Fix available: RHSA-2026:82371 · Red Hat
  10. 2026-10-15 Affected versions changed · Red Hat
  11. 2026-10-21 Affected versions changed · Red Hat
  12. 2026-10-21 Fix available: RHSA-2026:87004 · Red Hat
  13. 2026-10-21 Fix available: Red Hat Ansible Automation Platform 2.6 for RHEL 9 · Red Hat
  14. 2026-10-22 Fix available: RHSA-2026:87124 · Red Hat
  15. 2026-10-22 Fix available: RHSA-2026:87120 · Red Hat
  16. 2026-10-22 Fix available: Red Hat Ansible Automation Platform 2.6, Red Hat Ansible Automation Platform 2.7 · Red Hat
  17. 2026-10-30 Fix available: RHSA-2026:92452 · Red Hat
  18. 2026-10-30 Fix available: RHSA-2026:92449 · Red Hat
  19. 2026-10-30 Fix available: Red Hat Enterprise Linux AI 3.5 · Red Hat
  20. 2026-10-30 Affected versions changed · Red Hat
  21. 2026-11-03 Fix available: RHSA-2026:94500 · Red Hat
  22. 2026-11-03 Fix available: RHSA-2026:94501 · Red Hat
  23. 2026-11-03 Fix available: RHSA-2026:94523 · Red Hat
  24. 2026-11-03 Fix available: RHSA-2026:94557 · Red Hat
  25. 2026-11-03 Fix available: Red Hat Enterprise Linux AppStream (v. 10), Red Hat Enterprise Linux AppStream (v. 9), Red Hat Enterprise Linux AppStream E4S (v.9.4) +3 · Red Hat
  26. 2026-11-04 Fix available: RHSA-2026:94634 · Red Hat
  27. 2026-11-04 Fix available: Red Hat Enterprise Linux AppStream E4S (v.9.2), Red Hat Enterprise Linux High Availability E4S (v.9.2), Red Hat Enterprise Linux Resilient Storage E4S (v.9.2) · Red Hat
  28. 2026-11-04 Fix available: RHSA-2026:95012 · Red Hat
  29. 2026-11-04 Fix available: Red Hat Enterprise Linux AppStream EUS (v. 10.0) · Red Hat
  30. 2026-11-04 Affected versions changed · Red Hat

References

  • TI-2026-65303 Improper signature verification in jpadilla pyjwt 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
  • TI-2026-65307 PyJWT BOM Bypass CVSS 3.1HIGH 7.4
See all 23 →

Sources