Junglewise Threat Intelligence

CVE-2016-9123: Square go-jose integer overflow in CBC-HMAC decryption

CVE-2016-9123 · Severity: high · CVSS 7.5 · Published 2021-06-23

Technologies: github.com/square/go-jose (Go). Vendors: Go.

Executive brief

A vulnerability exists in the go-jose library, which is used to implement encryption and digital signatures in Go applications. On 32-bit systems, an attacker could bypass security checks for encrypted messages, potentially allowing them to modify data without detection. This could lead to unauthorized changes in sensitive information or system configurations.

Technical details

An integer overflow vulnerability (CWE-190) exists in the go-jose library when processing CBC-HMAC encrypted ciphertexts on 32-bit architectures. The flaw occurs during the decryption process, where a calculation error can lead to an authentication bypass. A remote, unauthenticated attacker can exploit this by providing specially crafted ciphertexts, allowing them to bypass integrity checks. This issue was addressed in version 1.0.5 by improving integer handling during tag verification.

Affected products

  • Square go-jose < 1.0.5

Timeline

  • 2016-09-03: patched: Fix committed to repository
  • 2016-11-03: disclosed: Public disclosure on oss-security list
  • 2017-03-28: advisory: NVD published CVE-2016-9123
  • 2021-06-23: advisory: GitHub Advisory published

References

Related threats