GHSA-g59m-gf8j-gjf5
LOWAWS SDK for Rust v1 adopted defense in depth enhancement for region parameter value
Blast Radius
aws-sdk-accessanalyzer🦀aws-sdk-account🦀aws-sdk-acm🦀aws-sdk-acmpca🦀aws-sdk-aiops🦀aws-sdk-amp🦀aws-sdk-amplify🦀aws-sdk-amplifybackend+398 moreReal-time download stats are indexed for npm and PyPI packages. This vulnerability affects crates.io packages — download data is not available via public APIs for these ecosystems.
Description
Summary
This notification is related to the use of specific values for the region input field when calling AWS services. An actor with access to the environment in which the SDK is used could set the region input field to an invalid value.
A defense-in-depth enhancement has been implemented in the AWS SDK for Rust. This enhancement validates that a region used to construct an endpoint URL is a valid host label. The change was released on November 6, 2025. This advisory is informational to help customers understand their responsibilities regarding configuration security.
Impact
Customer applications could be configured to improperly route AWS API calls to non-existent or non-AWS hosts. While the SDK was functioning safely within the requirements of the shared responsibility model, additional safeguards have been added to support secure customer implementations.
Impacted versions: All versions prior to November 6, 2025 release
Patches
On November 6, 2025, an enhancement [1] was made to the AWS SDK for Rust release, which validates the formatting of a region, providing additional safeguards.
Workarounds
No workarounds are needed, but as always developers should ensure that their application is following security best practices:
- Implement proper input validation in your application code
- Update to the latest AWS SDK for Rust release on a regular basis
- Follow AWS security best practices [2] for SDK configuration
References
Contact AWS Security via the vulnerability reporting page or email [email protected].
Acknowledgement
AWS Security thanks Guy Arazi for bringing these customer security considerations to our attention through the coordinated disclosure process.
[1] https://github.com/smithy-lang/smithy-rs/pull/4383 [2] https://docs.aws.amazon.com/sdk-for-rust/latest/dg/security.html
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| 🦀crates.io | aws-sdk-accessanalyzer | all versions | 1.96.0 |
| 🦀crates.io | aws-sdk-account | all versions | 1.92.0 |
| 🦀crates.io | aws-sdk-acm | all versions | 1.92.0 |
| 🦀crates.io | aws-sdk-acmpca | all versions | 1.94.0 |
| 🦀crates.io | aws-sdk-aiops | all versions | 1.18.0 |
| 🦀crates.io | aws-sdk-amp | all versions | 1.95.0 |
Detection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for aws-sdk-accessanalyzer. O3's reachability analysis confirms whether the vulnerable code path is actually invoked in your application, so you act on real exposure instead of every transitive match.
Fix
Update aws-sdk-accessanalyzer to 1.96.0 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms GHSA-g59m-gf8j-gjf5 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.
How O3 protects you
O3 pinpoints whether GHSA-g59m-gf8j-gjf5 is reachable in your code and exactly where to fix it, then blocks exploitation in production at runtime until the patched version is deployed.
Tailored to GHSA-g59m-gf8j-gjf5. Runtime protection reduces exposure until a permanent patch is applied and verified — it complements patching, it doesn't replace it.
Frequently Asked Questions
Is GHSA-g59m-gf8j-gjf5 in your dependencies?
O3 detects GHSA-g59m-gf8j-gjf5 across crates.io dependencies and uses function-level reachability to confirm whether the vulnerable code path is actually reachable — not just present. No false positives.