CVE intelligence and bounded remediation
CVE-2019-16760 — Cargo prior to Rust 1.26.0 may download the wrong dependency if your package.toml file uses the `package` configuration key
Cargo prior to Rust 1.26.0 may download the wrong dependency if your package.toml file uses the `package` configuration key. Usage of the `package` key to rename dependencies in `Cargo.toml` is ignored in Rust 1.25.0 and prior. When Rust 1.25.0 and prior is used Cargo may download the wrong dependency, which could be squatted on crates.io to be a malicious package. This not only affects manifests that you write locally yourself, but also manifests published to crates.io. Rust 1.0.0 through Rust 1.25.0 is affected by this advisory because Cargo will ignore the `package` key in manifests. Rust 1.26.0 through Rust 1.30.0 are not affected and typically will emit an error because the `package` key is unstable. Rust 1.31.0 and after are not affected because Cargo understands the `package` key. Users of the affected versions are strongly encouraged to update their compiler to the latest available one. Preventing this issue from happening requires updating your compiler to be either Rust 1.26.0 or newer. There will be no point release for Rust versions prior to 1.26.0. Users of Rust 1.19.0 to Rust 1.25.0 can instead apply linked patches to mitigate the issue.
- Severity
- High
- CVSS
- 7.5 (3.1)
- Published
- 2019-09-30
- CISA KEV
- Not currently listed
- Ecosystem
- software/application
- Weaknesses
- CWE-16, CWE-494
Affected products
- rust-lang / rust
Matched remediation archetype
Supply-chain, dependency, build, and update integrity
This catalog composition supplies bounded fallback guidance. Explicitly reviewed curated workflows load with the complete record below.
Check exposure
- Trace affected packages, source archives, build actions, plugins, installers, and updates from declared source to deployed artifact.
- Confirm provenance, signatures or digests, namespace ownership, lockfile resolution, registry configuration, and build-runner trust boundaries.
- Inventory direct, transitive, vendored, generated, and bundled copies across releases and distribution channels.
Remediate safely
- Move to a maintained trusted artifact or remove the dependency; pin immutable identities and verify provenance and integrity before use.
- Regenerate lockfiles and artifacts in a clean isolated build, minimize build credentials and network access, and produce an updated software bill of materials.
- Require reviewed update policy, protected publishing, and reproducible or independently attestable builds where supported.
Authoritative sources
Complete CVE record and remediation plan
The detailed catalog view below loads this exact record, its source evidence, and the full seven-phase agentic change plan.