Every CVE Search/ Get API key

CVE-2016-9122

Go JOSE Signature Validation Bypass

7.5 HighFix available

go-jose before 1.0.4 suffers from multiple signatures exploitation. The go-jose library supports messages with multiple signatures. However, when validating a signed message the API did not indicate which signature was valid, which could potentially lead to confusion. For example, users of the library might mistakenly read protected header values from an attached signature that was different from the one originally validated.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
None
Integrity
High
Availability
None

Exploit likelihood

1.97%Up 1.0 points since Feb 4, 2022
90%50%10%1%

What each source reports

NVD Score used 7.5

go-jose before 1.0.4 suffers from multiple signatures exploitation. The go-jose library supports messages with multiple signatures. However, when validating a signed message the API did not indicate which signature was valid, which could potentially lead to confusion. For example, users of the library might mistakenly read protected header values from an attached signature that was different from the one originally validated.

Record
CVE-2016-9122
CVSS 3.0
7.5 HighCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
CVSS 2.0
5.0 MediumAV:N/AC:L/Au:N/C:N/I:P/A:N
Weakness
CWE-284
Updated
2026-11-02
CVE List No score

go-jose before 1.0.4 suffers from multiple signatures exploitation. The go-jose library supports messages with multiple signatures. However, when validating a signed message the API did not indicate which signature was valid, which could potentially lead to confusion. For example, users of the library might mistakenly read protected header values from an attached signature that was different from the one originally validated.

Record
CVE-2016-9122
Updated
2026-11-02
EUVDEUVD-2021-0989 No score

go-jose before 1.0.4 suffers from multiple signatures exploitation. The go-jose library supports messages with multiple signatures. However, when validating a signed message the API did not indicate which signature was valid, which could potentially lead to confusion. For example, users of the library might mistakenly read protected header values from an attached signature that was different from the one originally validated.

Record
EUVD-2021-0989
Updated
2026-11-03
GitHub AdvisoriesGHSA-77gc-fj98-665h 7.5

Go JOSE Signature Validation Bypass

Go JOSE before 1.1.0 suffers from multiple signatures exploitation. The go-jose library supports messages with multiple signatures. However, when validating a signed message the API did not indicate which signature was valid, which could potentially lead to confusion. For example, users of the library might mistakenly read protected header values from an attached signature that was different from the one originally validated

Record
GHSA-77gc-fj98-665h
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Weakness
CWE-284
Updated
2026-11-02
OSV 7.5

go-jose before 1.0.4 suffers from multiple signatures exploitation. The go-jose library supports messages with multiple signatures. However, when validating a signed message the API did not indicate which signature was valid, which could potentially lead to confusion. For example, users of the library might mistakenly read protected header values from an attached signature that was different from the one originally validated.

Record
CVE-2016-9122
CVSS 3.0
7.5 HighCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Updated
2026-11-02
OSVDEBIAN-CVE-2016-9122 7.5

go-jose before 1.0.4 suffers from multiple signatures exploitation. The go-jose library supports messages with multiple signatures. However, when validating a signed message the API did not indicate which signature was valid, which could potentially lead to confusion. For example, users of the library might mistakenly read protected header values from an attached signature that was different from the one originally validated.

Record
DEBIAN-CVE-2016-9122
CVSS 3.0
7.5 HighCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Updated
2026-11-02
OSVGHSA-77gc-fj98-665h 7.5

Go JOSE Signature Validation Bypass

Go JOSE before 1.1.0 suffers from multiple signatures exploitation. The go-jose library supports messages with multiple signatures. However, when validating a signed message the API did not indicate which signature was valid, which could potentially lead to confusion. For example, users of the library might mistakenly read protected header values from an attached signature that was different from the one originally validated

Record
GHSA-77gc-fj98-665h
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Weakness
CWE-284
Updated
2026-11-02
OSVGO-2022-0945 No score

Signature validation bypass in gopkg.in/square/go-jose.v1

The go-jose library suffers from multiple signatures exploitation. When validating a signed message, the API did not indicate which signature was valid, which creates the potential for confusion.

Record
GO-2022-0945
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
gopkg.in/square/go-jose.v1
Go
before 1.1.0
1.1.0
golang-gopkg-square-go-jose.v1
Debian:12
before 1.0.5-1
1.0.5-1
golang-gopkg-square-go-jose.v1
Debian:13
before 1.0.5-1
1.0.5-1
golang-gopkg-square-go-jose.v1
Debian:14
before 1.0.5-1
1.0.5-1

History

History
RecordedChangedSources
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2016-9122 is a high vulnerability (CVSS 7.5) in Go-jose Project Go-jose, published March 28, 2017. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 1.97%, the 80th percentile. Fixed in gopkg.in/square/go-jose.v1 1.1.0.

References

Show 4 moreShow less
MoveEnter Open