{"schema_version":"1.3.1","id":"GO-2021-0319","modified":"2024-05-20T16:03:47Z","published":"2022-05-23T22:15:21Z","aliases":["CVE-2022-23806"],"summary":"Incorrect computation for some invalid field elements in crypto/elliptic","details":"Some big.Int values that are not valid field elements (negative or overflowing) might cause Curve.IsOnCurve to incorrectly return true. Operating on those values may cause a panic or an invalid curve operation. Note that Unmarshal will never return such values.","affected":[{"package":{"name":"stdlib","ecosystem":"Go"},"ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"1.16.14"},{"introduced":"1.17.0-0"},{"fixed":"1.17.7"}]}],"ecosystem_specific":{"imports":[{"path":"crypto/elliptic","symbols":["CurveParams.IsOnCurve","p384PointFromAffine","p521PointFromAffine"]}]}}],"references":[{"type":"FIX","url":"https://go.dev/cl/382455"},{"type":"FIX","url":"https://go.googlesource.com/go/+/7f9494c277a471f6f47f4af3036285c0b1419816"},{"type":"WEB","url":"https://groups.google.com/g/golang-announce/c/SUsQn0aSgPQ"},{"type":"REPORT","url":"https://go.dev/issue/50974"}],"credits":[{"name":"Guido Vranken"}],"database_specific":{"url":"https://pkg.go.dev/vuln/GO-2021-0319","review_status":"REVIEWED"}}