Vulnerability Name:

CVE-2017-11424 (CCN-131034)

Assigned:2017-07-18
Published:2017-07-18
Updated:2019-10-03
Summary: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.
CVSS v3 Severity:7.5 High (CVSS v3.1 Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N)
6.5 Medium (Temporal CVSS v3.1 Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N/E:U/RL:O/RC:C)
Exploitability Metrics:Attack Vector (AV): Network
Attack Complexity (AC): Low
Privileges Required (PR): None
User Interaction (UI): None
Scope:Scope (S): Unchanged
Impact Metrics:Confidentiality (C): None
Integrity (I): High
Availibility (A): None
5.3 Medium (CCN CVSS v3.1 Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N)
4.6 Medium (CCN Temporal CVSS v3.1 Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N/E:U/RL:O/RC:C)
Exploitability Metrics:Attack Vector (AV): Network
Attack Complexity (AC): Low
Privileges Required (PR): None
User Interaction (UI): None
Scope:Scope (S): Unchanged
Impact Metrics:Confidentiality (C): None
Integrity (I): Low
Availibility (A): None
CVSS v2 Severity:5.0 Medium (CVSS v2 Vector: AV:N/AC:L/Au:N/C:N/I:P/A:N)
Exploitability Metrics:Access Vector (AV): Network
Access Complexity (AC): Low
Authentication (Au): None
Impact Metrics:Confidentiality (C): None
Integrity (I): Partial
Availibility (A): None
5.0 Medium (CCN CVSS v2 Vector: AV:N/AC:L/Au:N/C:N/I:P/A:N)
Exploitability Metrics:Access Vector (AV): Network
Access Complexity (AC): Low
Athentication (Au): None
Impact Metrics:Confidentiality (C): None
Integrity (I): Partial
Availibility (A): None
Vulnerability Type:CWE-noinfo
Vulnerability Consequences:Bypass Security
References:Source: MITRE
Type: CNA
CVE-2017-11424

Source: DEBIAN
Type: Third Party Advisory
DSA-3979

Source: XF
Type: UNKNOWN
pyjwt-cve201711424-weak-security(131034)

Source: CCN
Type: PyJWT GIT Repository
Guard against PKCS1 PEM-encoded public keys #277

Source: CONFIRM
Type: Issue Tracking, Patch, Third Party Advisory
https://github.com/jpadilla/pyjwt/pull/277

Source: CCN
Type: WhiteSource Vulnerability Database
CVE-2017-11424

Vulnerable Configuration:Configuration 1:
  • cpe:/a:pyjwt_project:pyjwt:*:*:*:*:*:*:*:* (Version <= 1.5.0)

  • Configuration 2:
  • cpe:/o:debian:debian_linux:8.0:*:*:*:*:*:*:*
  • OR cpe:/o:debian:debian_linux:9.0:*:*:*:*:*:*:*

  • Configuration CCN 1:
  • cpe:/a:pyjwt_project:pyjwt:1.5.0:*:*:*:*:*:*:*

  • * Denotes that component is vulnerable
    Oval Definitions
    Definition IDClassTitleLast Modified
    oval:org.opensuse.security:def:201711424
    V
    CVE-2017-11424
    2019-09-27
    oval:com.ubuntu.xenial:def:201711424000
    V
    CVE-2017-11424 on Ubuntu 16.04 LTS (xenial) - medium.
    2017-08-24
    oval:com.ubuntu.xenial:def:2017114240000000
    V
    CVE-2017-11424 on Ubuntu 16.04 LTS (xenial) - medium.
    2017-08-24
    BACK
    pyjwt_project pyjwt *
    debian debian linux 8.0
    debian debian linux 9.0
    pyjwt_project pyjwt 1.5.0