Vulnerability HighRUSTSEC-2018-0006 · yaml-rust
RUSTSEC-2018-0006: Uncontrolled recursion leads to abort in deserialization
Short answerA security vulnerability in the yaml-rust crate: Uncontrolled recursion leads to abort in deserialization. High severity (CVSS 7.5). Fixed in 0.4.1: update to a fixed version.
| Crate | yaml-rust |
|---|---|
| Type | Vulnerability |
| Affected versions | Before 0.4.1. |
| Fixed in | 0.4.1 |
| Severity | High, CVSS 7.5 CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
| Published | 2018-09-17 |
| Last changed | 2023-11-08 |
| Also known as | CVE-2018-20993, GHSA-hv87-47h9-jcvq |
What to do
- See which version you have:
cargo tree -i yaml-rust(it also shows which of your dependencies pulls it in). - Update within your version requirement:
cargo update -p yaml-rust. If the fix is a newer major or minor than your requirement allows, raise it in Cargo.toml (for exampleyaml-rust = "0.4.1") or update the dependency that pulls it in. - Check again with
cargo audit, or paste your Cargo.lock into our Cargo.toml checker.
Details from the advisory
Affected versions of this crate did not prevent deep recursion while deserializing data structures.
This allows an attacker to make a YAML file with deeply nested structures that causes an abort while deserializing it.
The flaw was corrected by checking the recursion depth.
Note: clap 2.33 is not affected by this because it uses yaml-rust in a way that doesn't trigger the vulnerability. More specifically:
1. The input to the YAML parser is always trusted - is included at compile time via include_str!.
2. The nesting level is never deep enough to trigger the overflow in practice (at most 5).
References
- Package: crates.io/crates/yaml-rust
- Advisory: rustsec.org/advisories/RUSTSEC-2018-0006.html
- Web: github.com/chyh1990/yaml-rust/pull/109
From the RustSec Advisory Database (CC0-1.0) via the OSV export, downloaded Oct 24, 2026. Severity score computed from the published CVSS vector.
Other advisories for yaml-rust
Up next
Same crateyaml-rust: security historyEvery advisory for this crate, and whether it is safe to use today.Read it next →Did this answer your question?