Back to list

PyJWT: PyJWK accepts empty HMAC keys, bypassing PyJWT's empty-key validation — GHSA-9J54-FG26-WV3R

GitHub · GitHub · GHSA-9J54-FG26-WV3R

ID
GHSA-9J54-FG26-WV3R
Date
Source
GitHub
Vendor
GitHub
Threat
high
CVSS
7.4
EPSS
0.00175

Summary

### Summary A service that verifies HS256 tokens using an empty oct JWK through PyJWK, including a PyJWK obtained from PyJWKSet, can therefore accept attacker-generated tokens as authenticated. PyJWT 2.13.0 rejects an empty HMAC key when it is supplied through the raw `str`/`bytes` key path, but accepts the same zero-length key when it is supplied as a symmetric `PyJWK`. An `oct` JWK containing an empty Base64URL…

Timeline

Published by source
2026-09-29

Risk context

  • Reported severity or threat level: high.
  • Reported CVSS score: 7.4 out of 10.
  • Reported EPSS value: 0.00175.
  • Review exposure for the affected product or family: pip: PyJWT.

Product

pip: PyJWT

What to do

General, cautious steps (verify details in the official source):

  • Prioritize patching or mitigation immediately (treat as actively risky).
  • Identify affected product versions in your inventory and verify whether you are impacted.
  • Apply vendor patches/updates or recommended mitigations as soon as available.
  • Read the official advisory for exact affected versions and remediation steps.

Official advisory

Evidence and provenance

Canonical advisory ID
GHSA-9J54-FG26-WV3R
Source
GitHub
Vendor
GitHub
Published by source
2026-09-29
Last source activity
2026-09-29
Additional identifiers
CVE-2026-102266
Curated by
hlukh.ch

Related advisories and connections

These advisories are connected by shared CVE, product, vendor, source, or time signals.