PT-2020-20365 · Amazon Web Services · Aws S3 Crypto Sdk For Golang
Sophie Schmieg
·
Published
2020-08-11
·
Updated
2026-04-30
·
CVE-2020-8912
CVSS v3.1
9.8
Critical
| Vector | AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
Name of the Vulnerable Software and Affected Versions
AWS S3 Crypto SDK for GoLang versions prior to V2
Description
A vulnerability exists in the in-band key negotiation of the AWS S3 Crypto SDK for GoLang. An attacker with write access to the targeted bucket can change the encryption algorithm of an object, potentially allowing them to reveal the authentication key used by AES-GCM. This can be achieved by switching from AES-GCM to AES-CTR in combination with a decryption oracle. The attack requires access to an endpoint that reveals decryption failures without revealing the plaintext. The vulnerability poses insider risks and privilege escalation risks, circumventing KMS controls for stored data.
Recommendations
Update the SDK to V2 or later and re-encrypt files to mitigate the risk. For versions prior to V2, consider temporarily disabling the use of AES-GCM encryption until a patch is available. Restrict access to the vulnerable API endpoints to minimize the risk of exploitation. Avoid using the
KMS key wrapping option for new files until the issue is resolved.Exploit
Fix
Use of a Broken Cryptographic Algorithm
Found an issue in the description? Have something to add? Feel free to write us 👾
Weakness Enumeration
Related Identifiers
Affected Products
Aws S3 Crypto Sdk For Golang