{"id":"UBUNTU-CVE-2017-11424","details":"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.","modified":"2026-02-04T02:53:04.999079Z","published":"2017-08-24T00:00:00Z","related":["USN-3407-1"],"upstream":["CVE-2017-11424"],"references":[{"type":"REPORT","url":"https://ubuntu.com/security/CVE-2017-11424"},{"type":"ADVISORY","url":"https://ubuntu.com/security/notices/USN-3407-1"},{"type":"REPORT","url":"https://www.cve.org/CVERecord?id=CVE-2017-11424"}],"affected":[{"package":{"name":"pyjwt","ecosystem":"Ubuntu:16.04:LTS","purl":"pkg:deb/ubuntu/pyjwt@1.3.0-1ubuntu0.1?arch=source&distro=xenial"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.3.0-1ubuntu0.1"}]}],"versions":["1.0.0-0ubuntu1","1.3.0-1"],"ecosystem_specific":{"availability":"No subscription required","binaries":[{"binary_version":"1.3.0-1ubuntu0.1","binary_name":"python-jwt"},{"binary_name":"python3-jwt","binary_version":"1.3.0-1ubuntu0.1"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2017/UBUNTU-CVE-2017-11424.json"}}],"schema_version":"1.7.3","severity":[{"type":"CVSS_V3","score":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N"},{"type":"Ubuntu","score":"medium"}]}