GHSA-r9jw-mwhq-wp62HighCVSS 7.5

PyJWT vulnerable to key confusion attacks

Published
May 13, 2022
Last Modified
October 15, 2024

🔗 CVE IDs covered (1)

📋 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.

🎯 Affected products1

  • pip/pyjwt:< 1.5.1

🔗 References (5)