Authentication Bypass Affecting pyjwt package, versions [,1.5.1)
Snyk CVSS
Threat Intelligence
Do your applications use this vulnerable package?
In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.
Test your applications- Snyk ID SNYK-PYTHON-PYJWT-40693
- published 9 Nov 2017
- disclosed 21 Jun 2017
- credit Unknown
Introduced: 21 Jun 2017
CVE-2017-11424 Open this link in a new tabHow to fix?
Upgrade pyjwt
to version 1.5.1 or higher.
Overview
pyjwt
is a JSON Web Token implementation in Python.
Affected versions of the package are vulnerable to Authentication Bypass.
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.