CLI does not correctly implement strict modeGHSA-2xwp-m7mq-7q3r
Fix: aws/aws-encryption-sdk-cli@7d21b80GHSA-2xwp-m7mq-7q3r is a security vulnerability in aws-encryption-sdk-cli. A fix is available for aws-encryption-sdk-cli — see the affected versions and patch details below.
Real-World Exposure
aws-encryption-sdk-cli🐍aws-encryption-sdk-cliReal-time download stats are indexed for npm and PyPI packages. This vulnerability affects PyPI packages — download data is not available via public APIs for these ecosystems.
Description
In the affected versions, the AWS Encryption CLI operated in "discovery mode" even when "strict mode" was specified. Although decryption only succeeded if the user had permission to decrypt with at least one of the CMKs, decryption could be successful using a CMK that was not included in the user-defined set when the CLI was operating in "strict mode."
Affected users should upgrade to Encryption CLI v1.8.x or v2.1.x as soon as possible.
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| 🐍PyPI | aws-encryption-sdk-cli | all versions | 1.8.0pip install --upgrade 'aws-encryption-sdk-cli==1.8.0' |
| 🐍PyPI | aws-encryption-sdk-cli | ≥ 2.0.0&&< 2.1.0 | 2.1.0pip install --upgrade 'aws-encryption-sdk-cli==2.1.0' |
Detection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for aws-encryption-sdk-cli, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.
Fix
Update aws-encryption-sdk-cli to 1.8.0 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms GHSA-2xwp-m7mq-7q3r is resolved across your whole dependency graph.
Workarounds
If you can't upgrade right away: gate or disable the affected feature, validate untrusted input at the boundary, and avoid passing attacker-controlled data into the vulnerable path. O3's runtime protection blocks exploitation in production as an interim safeguard until the upgrade lands.
Frequently Asked Questions
Is GHSA-2xwp-m7mq-7q3r in your dependencies?
Find it across PyPI, including transitive dependencies.