Fix cargo audit vulnerabilities (aws-lc-sys, rustls-webpki)#4286
Merged
squadgazzz merged 4 commits intomainfrom Mar 23, 2026
Merged
Fix cargo audit vulnerabilities (aws-lc-sys, rustls-webpki)#4286squadgazzz merged 4 commits intomainfrom
squadgazzz merged 4 commits intomainfrom
Conversation
Update transitive dependencies to resolve all 7 advisories:
- aws-lc-sys 0.35.0 → 0.39.0 (fixes RUSTSEC-2026-{0044,0045,0046,0047,0048})
- rustls-webpki 0.103.8 → 0.103.10 (fixes RUSTSEC-2026-0049)
- Switch aws-sdk-s3 from `rustls` to `default-https-client` feature to use
the modern TLS stack (rustls-aws-lc) instead of the legacy one
(legacy-rustls-ring) which pulled in rustls 0.21 and the vulnerable
rustls-webpki 0.101.7 (fixes RUSTSEC-2026-0049 for the 0.101.x line)
- Updated AWS SDK chain to latest compatible versions
2 tasks
Contributor
There was a problem hiding this comment.
Code Review
This pull request primarily updates numerous AWS SDK for Rust dependencies in Cargo.lock to newer versions. Key changes include version bumps for aws-config, aws-runtime, various aws-sdk-* crates, and aws-smithy-* crates. It also adjusts the aws-sdk-s3 feature in crates/s3/Cargo.toml from rustls to default-https-client, indicating a change in the default HTTPS client configuration. No critical issues were found during the review.
The AWS SDK dependency updates introduced deeper type nesting that exceeds the default compiler recursion limit when building tests.
The compiler needs 130; 160 provides reasonable headroom without being excessive.
AryanGodara
approved these changes
Mar 23, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Resolves all 7
cargo auditadvisories by updating dependencies.aws-lc-sys 0.35.0 → 0.39.0 — fixes 5 crypto-failure advisories (RUSTSEC-2026-{0044,0045,0046,0047,0048}) including PKCS7 verification bypasses (CVSS 7.5) and X.509 name constraint bypass. Updated via
aws-lc-rs1.15.2 → 1.16.2.rustls-webpki 0.103.8 → 0.103.10 — fixes CRL distribution point matching (RUSTSEC-2026-0049). Direct
cargo update.rustls-webpki 0.101.7 (same RUSTSEC-2026-0049) — this old version was dragged in by
aws-sdk-s3'srustlsfeature, which activates the legacy TLS path (aws-smithy-runtime/tls-rustls→legacy-rustls-ring→rustls 0.21→rustls-webpki 0.101.7). The 0.101.x line has no patch. Fixed by switchingaws-sdk-s3fromfeatures = ["rustls"]tofeatures = ["default-https-client"], which uses the modernrustls-aws-lcbackend instead. This removesrustls 0.21from the tree entirely.recursion_limit — the AWS SDK update introduced slightly deeper type nesting that overflows the default compiler recursion limit (needs 130, default is 128) when building autopilot tests. Added
#![recursion_limit = "160"]toautopilot.Test plan
cargo check --workspaceandcargo check -p autopilot --testspasscargo auditreports 0 vulnerabilities