CVE-2026-48526

PyJWT: Public-key JWK accepted as HMAC secret enables forged HS256 tokens when mixed families are allowed

Published May 28, 2026 CVSS 3.1 · 7.4 High EPSS < 1% KEV · Not listed
Description
PyJWT is a JSON Web Token implementation in Python. Prior to 2.13.0, when the verifier is decoding JSON Web Tokens, while supporting both asymmetric and HMAC algorithms, the library does not validate use of JSON Web Keys in HMAC algorithm, allowing attacker to use the issuer public key as the secret key for HMAC algorithm. This vulnerability is fixed in 2.13.0.

Remediation

No solution or workaround provided in the CVE record

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Github GHSA Github GHSA GHSA-xgmm-8j9v-c9wx PyJWT: Public-key JWK accepted as HMAC secret enables forged HS256 tokens when mixed families are allowed
References
Link Providers
https://access.redhat.com/errata/RHSA-2026:25902 cve-icon
https://access.redhat.com/errata/RHSA-2026:25928 cve-icon
https://access.redhat.com/errata/RHSA-2026:26206 cve-icon
https://access.redhat.com/errata/RHSA-2026:28571 cve-icon
https://access.redhat.com/errata/RHSA-2026:30076 cve-icon
https://access.redhat.com/errata/RHSA-2026:30088 cve-icon
https://access.redhat.com/errata/RHSA-2026:30089 cve-icon
https://access.redhat.com/errata/RHSA-2026:33683 cve-icon
https://access.redhat.com/errata/RHSA-2026:34160 cve-icon
https://access.redhat.com/errata/RHSA-2026:34365 cve-icon
https://access.redhat.com/errata/RHSA-2026:34374 cve-icon
https://access.redhat.com/errata/RHSA-2026:35835 cve-icon
https://access.redhat.com/errata/RHSA-2026:35836 cve-icon
https://access.redhat.com/errata/RHSA-2026:35837 cve-icon
https://access.redhat.com/errata/RHSA-2026:35845 cve-icon
https://access.redhat.com/errata/RHSA-2026:36350 cve-icon
https://access.redhat.com/errata/RHSA-2026:37275 cve-icon
https://access.redhat.com/errata/RHSA-2026:40967 cve-icon
https://access.redhat.com/errata/RHSA-2026:41066 cve-icon
https://access.redhat.com/errata/RHSA-2026:42132 cve-icon
https://access.redhat.com/errata/RHSA-2026:42142 cve-icon
https://access.redhat.com/errata/RHSA-2026:42144 cve-icon
https://access.redhat.com/errata/RHSA-2026:42644 cve-icon
https://access.redhat.com/errata/RHSA-2026:42796 cve-icon
https://access.redhat.com/errata/RHSA-2026:43038 cve-icon
https://access.redhat.com/errata/RHSA-2026:48085 cve-icon
https://access.redhat.com/errata/RHSA-2026:50222 cve-icon
https://access.redhat.com/errata/RHSA-2026:50223 cve-icon
https://access.redhat.com/errata/RHSA-2026:50263 cve-icon
https://access.redhat.com/errata/RHSA-2026:50319 cve-icon
https://access.redhat.com/errata/RHSA-2026:50336 cve-icon
https://access.redhat.com/errata/RHSA-2026:50340 cve-icon
https://access.redhat.com/errata/RHSA-2026:50904 cve-icon
https://access.redhat.com/errata/RHSA-2026:60520 cve-icon
https://access.redhat.com/security/cve/CVE-2026-48526 cve-icon
https://bugzilla.redhat.com/show_bug.cgi?id=2482734 cve-icon
https://github.com/jpadilla/pyjwt/security/advisories/GHSA-xgmm-8j9v-c9wx cve-icon cve-icon cve-icon
https://nvd.nist.gov/vuln/detail/CVE-2026-48526 cve-icon
https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-48526.json cve-icon
https://www.cve.org/CVERecord?id=CVE-2026-48526 cve-icon
History
Type Values Removed Values Added
First Time appeared Pyjwt Project
Pyjwt Project pyjwt
CPEs cpe:2.3:a:pyjwt_project:pyjwt:*:*:*:*:*:*:*:*
Vendors & Products Pyjwt Project
Pyjwt Project pyjwt
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'total'}, 'version': '2.0.3'}

Type Values Removed Values Added
First Time appeared Jpadilla
Jpadilla pyjwt
Vendors & Products Jpadilla
Jpadilla pyjwt
Type Values Removed Values Added
Description PyJWT is a JSON Web Token implementation in Python. Prior to 2.13.0, when the verifier is decoding JSON Web Tokens, while supporting both asymmetric and HMAC algorithms, the library does not validate use of JSON Web Keys in HMAC algorithm, allowing attacker to use the issuer public key as the secret key for HMAC algorithm. This vulnerability is fixed in 2.13.0.
Title PyJWT: Public-key JWK accepted as HMAC secret enables forged HS256 tokens when mixed families are allowed
Weaknesses CWE-287
CWE-347
References
Metrics cvssV3_1

{'score': 7.4, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N'}

Weaknesses

Sources

Status
PUBLISHED
Assigner
GitHub_M
Published
Updated
Sep 10, 2026, 12:04 PM
Reserved
May 21, 2026, 4:18 PM
Status
Modified
Published
May 28, 2026, 4:16 PM
Modified
Oct 26, 2026, 1:10 PM
Severity
Important
Public date
May 28, 2026, 3:09 PM