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 malicious user to craft JWTs from scratch.
Vulnerable Product | Search on Vulmon | Subscribe to Product |
---|---|---|
pyjwt project pyjwt |
||
debian debian linux 8.0 |
||
debian debian linux 9.0 |