Skip to content

Fix cargo audit vulnerabilities (aws-lc-sys, rustls-webpki)#4286

Merged
squadgazzz merged 4 commits intomainfrom
fix-cargo-audit-vulnerabilities
Mar 23, 2026
Merged

Fix cargo audit vulnerabilities (aws-lc-sys, rustls-webpki)#4286
squadgazzz merged 4 commits intomainfrom
fix-cargo-audit-vulnerabilities

Conversation

@squadgazzz
Copy link
Contributor

@squadgazzz squadgazzz commented Mar 23, 2026

Summary

Resolves all 7 cargo audit advisories 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-rs 1.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's rustls feature, which activates the legacy TLS path (aws-smithy-runtime/tls-rustlslegacy-rustls-ringrustls 0.21rustls-webpki 0.101.7). The 0.101.x line has no patch. Fixed by switching aws-sdk-s3 from features = ["rustls"] to features = ["default-https-client"], which uses the modern rustls-aws-lc backend instead. This removes rustls 0.21 from 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"] to autopilot.

Test plan

  • cargo check --workspace and cargo check -p autopilot --tests pass
  • cargo audit reports 0 vulnerabilities

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
Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.
@squadgazzz squadgazzz enabled auto-merge March 23, 2026 19:27
@squadgazzz squadgazzz added this pull request to the merge queue Mar 23, 2026
Merged via the queue into main with commit f476949 Mar 23, 2026
19 checks passed
@squadgazzz squadgazzz deleted the fix-cargo-audit-vulnerabilities branch March 23, 2026 20:15
@github-actions github-actions bot locked and limited conversation to collaborators Mar 23, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants