What’s Vulnerable › Vulnerabilities
CVE-2020-8912: In-band key negotiation issue in AWS S3 Crypto SDK for GoLang
- Severity: low (CVSS 2.5 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.2% probability of exploitation in the next 30 days
- Public exploit or detection template: yes
- Published: 2020-08-11 · updated 2026-06-17
- Weakness: CWE-327
Description
A vulnerability in the in-band key negotiation exists in the AWS S3 Crypto SDK for GoLang versions prior to V2. An attacker with write access to the targeted bucket can change the encryption algorithm of an object in the bucket, which can then allow them to change AES-GCM to AES-CTR. Using this in combination with a decryption oracle can reveal the authentication key used by AES-GCM as decrypting the GMAC tag leaves the authentication key recoverable as an algebraic equation. It is recommended to update your SDK to V2 or later, and re-encrypt your files.
Affected products
- Google LLC AWS S3 Crypto SDK for GoLang: before 2.0 — fixed in 2.0
- Go Github.Com/Aws/Aws-Sdk-Go: all versions
How to fix
Upgrade to a fixed version: Google LLC AWS S3 Crypto SDK for GoLang 2.0. Check the vendor advisory for mitigations.
References
- https://aws.amazon.com/blogs/developer/updates-to-the-amazon-s3-encryption-client/?s=09
- https://github.com/google/security-research/security/advisories/GHSA-7f33-f4f5-xwgw
- https://aws.amazon.com/blogs/developer/updates-to-the-amazon-s3-encryption-client/?s=09
- https://github.com/google/security-research/security/advisories/GHSA-7f33-f4f5-xwgw
Get alerted when CVE-2020-8912 or the next vulnerability affects your stack