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. 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
External References: 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
Latest related upstream fix is in version 1.34.0: https://github.com/aws/aws-sdk-go/commit/12ff57a16373dda5a0c22eafdf0fa1c4c224f7c4
Statement: The following products include components that use the AWS SDK (aws/aws-sdk-go), however they do not include code that encrypts or decrypts files in S3 buckets (aws/aws-sdk-go/service/s3/s3crypto). The below products are not affected by this flaw: * Red Hat Cluster Application Migration * Red Hat OpenShift Container Platform * Red Hat OpenShift ServiceMesh * Red Hat OpenShift Container Storage * Red Hat Ceph Storage * Red Hat Gluster Storage
This issue has been addressed in the following products: 3scale API Management Via RHSA-2021:3851 https://access.redhat.com/errata/RHSA-2021:3851
This bug is now closed. Further updates for individual products will be reflected on the CVE page(s): https://access.redhat.com/security/cve/cve-2020-8912