Skip to content
OpenAdvisories
Critical · 9.1 CVE-2016-9121 EUVD-2021-1289GHSA-86r9-39j9-99wpGO-2020-0010

Elliptic Curve Key Disclosure in go-jose

Published Mar 28, 2017 · Updated Aug 6, 2024 · Assigned by hackerone

Description

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.

Affected products

VendorProductAffectedFixed
— Go JOSE All versions before 1.0.4 Go JOSE All versions before 1.0.4 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 golang-gopkg-square-go-jose.v1 1.0.5-1 —
Debian 13 golang-gopkg-square-go-jose.v1 1.0.5-1 —
Debian 12 golang-gopkg-square-go-jose.v1 1.0.5-1 —

Affected packages

EcosystemPackageAffectedFixedRecord
Go github.com/square/go-jose < 1.0.4 1.0.4 GHSA-86r9-39j9-99wp
Go gopkg.in/square/go-jose.v1 < 1.0.4 1.0.4 GHSA-86r9-39j9-99wp

References