CVE-2017-8932 json
Incorrect computation for P-256 curves in crypto/elliptic
published 2017-07-06 9 y ago modified 2026-06-17 4 mo ago also GO-2022-0187 , EUVD-2017-17872
- cvss
- 5.9
- version 3.0, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 2.2%
- EPSS 2.2% chance of exploitation in 30 days, percentile 82%
- public exploits
- 0
- none known
Summary
A bug in the standard library ScalarMult implementation of curve P-256 for amd64 architectures in Go before 1.7.6 and 1.8.x before 1.8.2 causes incorrect results to be generated for specific input points. An adaptive attack can be mounted to progressively extract the scalar input to ScalarMult by submitting crafted points and observing failures to the derive correct output. This leads to a full key recovery attack against static ECDH, as used in popular JWT libraries.
Patch / fix
- go stdlib 1.7.6, 1.8.2
- golang RHEL 7 1.8.3-1.el7
- golang-bin RHEL 7 1.8.3-1.el7
- golang-src RHEL 7 1.8.3-1.el7
- golang-misc RHEL 7 1.8.3-1.el7
- golang-tests RHEL 7 1.8.3-1.el7
red hat advisories RHSA-2017:1859
- runc SLE Module for Containers 12, OpenStack Cloud 6 0.1.1+gitr2947_9c2d8d1-20.3
- docker SLE Module for Containers 12, OpenStack Cloud 6 17.04.0_ce-98.2
- containerd SLE Module for Containers 12, OpenStack Cloud 6 0.2.5+gitr639_422e31c-20.2
- docker-distribution SLE Module for Containers 12 2.6.1-15.2
- golang-github-docker-libnetwork SLE Module for Containers 12, OpenStack Cloud 6 0.0.0+git20170119.7b2b1fe-4.1
suse advisories SUSE-RU-2017:1965-1
- go openSUSE Tumbleweed 1.17-1.1
- go1.10 openSUSE Tumbleweed 1.10.8-8.2
- go1.11 openSUSE Tumbleweed 1.11.13-10.5
- go1.12 openSUSE Tumbleweed 1.12.17-4.8
- go1.9 openSUSE Tumbleweed 1.9.7-11.2
- go Package Hub 12 1.7.0-12.1
opensuse advisories openSUSE-SU-2024:10802-1openSUSE-SU-2024:10803-1openSUSE-SU-2024:10804-1openSUSE-SU-2024:10805-1openSUSE-SU-2024:10812-1openSUSE-SU-2017:1649-1
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2017-8932 updated cvss 4.8
golang: Elliptic curves carry propagation issue in x86-64 P-256
-
Red Hat OpenStack Platform 8 (Liberty) Operational Tools golang, golang-src, golang-pkg-linux-amd64, golang-pkg-bin-linux-amd64 Red Hat OpenStack Platform 9 (Mitaka) Operational Tools golang, golang-bin, golang-srcaffected: no fix planned “Will not fix”
-
Red Hat OpenShift Enterprise 3 golangunder investigation
-
Red Hat Enterprise Linux Server Optional (v. 7) golang 1.8.3-1.el7, golang-bin 1.8.3-1.el7, golang-src 1.8.3-1.el7, golang-misc 1.8.3-1.el7, golang-tests 1.8.3-1.el7fixed: vendor fix RHSA-2017:1859
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
Exploit prediction
2.23% chance of exploitation in the next 30 days, higher than 82% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| NVD | 3.0 | 5.9 | CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N |
| NVD | 2.0 | 4.3 | AV:N/AC:M/Au:N/C:P/I:N/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| go | stdlib | >=1.6.0-0, <1.7.6 >=1.8.0-0, <1.8.2 |
1.7.6 1.8.2 |
Classification
- Weakness
-
- CWE-682 Incorrect Calculation
References
-
github.com
/golang/go/commit/9294fa2749ffee7edbbb817a0ef9fe633136fa9c
issue-tracking, patch, third-party-advisory
-
lists.opensuse.org
/opensuse-updates/2017-06/msg00080.html
vendor-advisory, patch, third-party-advisory
-
lists.opensuse.org
/opensuse-updates/2017-06/msg00079.html
vendor-advisory, patch, third-party-advisory
-
go.dev
/cl/41070
patch
-
go.googlesource.com
/go/+/9294fa2749ffee7edbbb817a0ef9fe633136fa9c
patch
-
access.redhat.com
/errata/RHSA-2017:1859
vendor-advisory
-
lists.fedoraproject.org
/archives/list/package-announce%40lists.fedoraproject.org/message/LZH4T47ROLZ6YEZBDVXVS2KISTDMXAPS/
vendor-advisory
-
groups.google.com
/d/msg/golang-announce/B5ww0iFt1_Q/TgUFJV14BgAJ
mailing-list, vendor-advisory
-
go-review.googlesource.com
/c/41070/
vendor-advisory
-
bugzilla.redhat.com
/show_bug.cgi?id=1455191
issue-tracking, third-party-advisory
-
github.com
/golang/go/issues/20040
third-party-advisory
-
go.dev
/issue/20040
report
-
groups.google.com
/g/golang-announce/c/B5ww0iFt1_Q/m/TgUFJV14BgAJ
web
Sources
- CVE List CVE-2017-8932
- NVD CVE-2017-8932
- OSV GO-2022-0187
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.