Description
In PyJWT 1.5.0 and below the `invalid_strings` check in `HMACAlgorithm.prepare_key` does not account for all PEM encoded public keys. Specifically, the PKCS1 PEM encoded format would be allowed because it is prefaced with the string `-----BEGIN RSA PUBLIC KEY-----` which is not accounted for. This enables symmetric/asymmetric key confusion attacks against users using the PKCS1 PEM encoded public keys, which would allow an attacker to craft JWTs from scratch.
Published: 2017-08-24
Score: 7.5 High
EPSS: 1.3% Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

No analysis available yet.

Remediation

No remediation available yet.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DSA Debian DSA DSA-3979-1 pyjwt security update
EUVD EUVD EUVD-2017-0103 In PyJWT 1.5.0 and below the `invalid_strings` check in `HMACAlgorithm.prepare_key` does not account for all PEM encoded public keys. Specifically, the PKCS1 PEM encoded format would be allowed because it is prefaced with the string `-----BEGIN RSA PUBLIC KEY-----` which is not accounted for. This enables symmetric/asymmetric key confusion attacks against users using the PKCS1 PEM encoded public keys, which would allow an attacker to craft JWTs from scratch.
Github GHSA Github GHSA GHSA-r9jw-mwhq-wp62 PyJWT vulnerable to key confusion attacks
Ubuntu USN Ubuntu USN USN-3407-1 PyJWT vulnerability
History

No history.

Subscriptions

Debian Debian Linux
Pyjwt Project Pyjwt
cve-icon MITRE

Status: PUBLISHED

Assigner: duo

Published:

Updated: 2024-08-05T18:12:39.550Z

Reserved: 2017-07-18T00:00:00.000Z

Link: CVE-2017-11424

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Deferred

Published: 2017-08-24T16:29:00.197

Modified: 2025-04-20T01:37:25.860

Link: CVE-2017-11424

cve-icon Redhat

Severity : Moderate

Publid Date: 2017-06-22T00:00:00Z

Links: CVE-2017-11424 - Bugzilla

cve-icon OpenCVE Enrichment

No data.

Weaknesses