{"id":"CVE-2016-9121","aliases":["GHSA-86r9-39j9-99wp","GO-2020-0010"],"url":"https://o3.security/vulnerability/CVE-2016-9121","summary":"Elliptic Curve Key Disclosure in go-jose","details":"go-jose before 1.0.4 suffers from an invalid curve attack for the ECDH-ES algorithm. When deriving a shared key using ECDH-ES for an encrypted message, go-jose neglected to check that the received public key on a message is on the same curve as the static private key of the receiver, thus making it vulnerable to an invalid curve attack.","published":"2017-03-28T02:59:00.213Z","modified":"2026-07-08T15:09:48.971443Z","cvss":{"score":9.1,"severity":"CRITICAL","vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N"},"epss":null,"cisaKev":null,"exploitsKnown":0,"affectedPackages":[{"ecosystem":"Go","name":"gopkg.in/square/go-jose.v1","fixedVersion":"1.0.4"},{"ecosystem":"Go","name":"github.com/square/go-jose","fixedVersion":"1.0.4"}],"fix":{"url":"https://github.com/square/go-jose/commit/c7581939a3656bb65e89d64da0a52364a33d2507","label":"square/go-jose@c758193"},"references":[{"type":"REPORT","url":"https://hackerone.com/reports/164590"},{"type":"FIX","url":"http://www.openwall.com/lists/oss-security/2016/11/03/1"},{"type":"FIX","url":"https://github.com/square/go-jose/commit/c7581939a3656bb65e89d64da0a52364a33d2507"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2016-9121"},{"type":"WEB","url":"https://pkg.go.dev/vuln/GO-2020-0010"},{"type":"WEB","url":"https://www.openwall.com/lists/oss-security/2016/11/03/1"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2026-07-08T15:09:48.971443Z"}}