Rust-Lang Rust vulnerabilities
24 known vulnerabilities affecting rust-lang/rust.
Total CVEs
24
CISA KEV
0
Public exploits
0
Exploited in wild
0
Severity breakdown
CRITICAL7HIGH11MEDIUM6
Vulnerabilities
Page 1 of 2
CVE-2024-24576P2CRITICALCVSS 10.0fixed in 1.77.2fixed in 1.81.02024-04-09
CVE-2024-24576 [CRITICAL] CWE-78 CVE-2024-24576: Rust is a programming language. The Rust Security Response WG was notified that the Rust standard li
Rust is a programming language. The Rust Security Response WG was notified that the Rust standard library prior to version 1.77.2 did not properly escape arguments when invoking batch files (with the `bat` and `cmd` extensions) on Windows using the `Command`. An attacker able to control the arguments passed to the spawned process could execute arbi
nvd
CVE-2024-3566P2CRITICALCVSS 9.8fixed in 1.77.22024-04-10
CVE-2024-3566 [CRITICAL] CWE-77 CVE-2024-3566: A command inject vulnerability allows an attacker to perform command injection on Windows applicatio
A command inject vulnerability allows an attacker to perform command injection on Windows applications that indirectly depend on the CreateProcess function when the specific conditions are satisfied.
nvd
CVE-2021-29922P3CRITICALCVSS 9.1fixed in 1.53.02021-08-07
CVE-2021-29922 [CRITICAL] CVE-2021-29922: library/std/src/net/parser.rs in Rust before 1.53.0 does not properly consider extraneous zero chara
library/std/src/net/parser.rs in Rust before 1.53.0 does not properly consider extraneous zero characters at the beginning of an IP address string, which (in some situations) allows attackers to bypass access control that is based on IP addresses, because of unexpected octal interpretation.
nvd
CVE-2021-28879P3CRITICALCVSS 9.8fixed in 1.52.02021-04-11
CVE-2021-28879 [CRITICAL] CWE-190 CVE-2021-28879: In the standard library in Rust before 1.52.0, the Zip implementation can report an incorrect size d
In the standard library in Rust before 1.52.0, the Zip implementation can report an incorrect size due to an integer overflow. This bug can lead to a buffer overflow when a consumed Zip iterator is used again.
nvd
CVE-2024-43402P3HIGHCVSS 8.8fixed in 1.81.02024-09-04
CVE-2024-43402 [HIGH] CVE-2024-43402: Rust is a programming language. The fix for CVE-2024-24576, where `std::process::Command` incorrectl
Rust is a programming language. The fix for CVE-2024-24576, where `std::process::Command` incorrectly escaped arguments when invoking batch files on Windows, was incomplete. Prior to Rust version 1.81.0, it was possible to bypass the fix when the batch file name had trailing whitespace or periods (which are ignored and stripped by Windows). To determine wheth
nvd
CVE-2018-1000810P3CRITICALCVSS 9.8v1.26.0v1.26.1+6 more2018-10-08
CVE-2018-1000810 [CRITICAL] CWE-190 CVE-2018-1000810: The Rust Programming Language Standard Library version 1.29.0, 1.28.0, 1.27.2, 1.27.1, 127.0, 126.2,
The Rust Programming Language Standard Library version 1.29.0, 1.28.0, 1.27.2, 1.27.1, 127.0, 126.2, 126.1, 126.0 contains a CWE-680: Integer Overflow to Buffer Overflow vulnerability in standard library that can result in buffer overflow. This attack appear to be exploitable via str::repeat, passed a large number, can overflow an internal buf
nvd
CVE-2021-31162P3CRITICALCVSS 9.8≥ 1.48.0, < 1.52.02021-04-14
CVE-2021-31162 [CRITICAL] CWE-415 CVE-2021-31162: In the standard library in Rust before 1.52.0, a double free can occur in the Vec::from_iter functio
In the standard library in Rust before 1.52.0, a double free can occur in the Vec::from_iter function if freeing the element panics.
nvd
CVE-2019-12083P3HIGHCVSS 8.1≥ 1.34.0, < 1.34.22019-05-13
CVE-2019-12083 [HIGH] CWE-125 CVE-2019-12083: The Rust Programming Language Standard Library 1.34.x before 1.34.2 contains a stabilized method whi
The Rust Programming Language Standard Library 1.34.x before 1.34.2 contains a stabilized method which, if overridden, can violate Rust's safety guarantees and cause memory unsafety. If the `Error::type_id` method is overridden then any type can be safely cast to any other type, causing memory safety vulnerabilities in safe code (e.g., out-of-bounds w
nvdosv
CVE-2020-36318P3CRITICALCVSS 9.8≥ 1.48.0, < 1.49.02021-04-11
CVE-2020-36318 [CRITICAL] CWE-415 CVE-2020-36318: In the standard library in Rust before 1.49.0, VecDeque::make_contiguous has a bug that pops the sam
In the standard library in Rust before 1.49.0, VecDeque::make_contiguous has a bug that pops the same element more than once under certain condition. This bug could result in a use-after-free or double free.
nvd
CVE-2019-16760P3HIGHCVSS 7.5fixed in 1.26.02019-09-30
CVE-2019-16760 [HIGH] CWE-16 CVE-2019-16760: Cargo prior to Rust 1.26.0 may download the wrong dependency if your package.toml file uses the `pac
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 malic
nvd
CVE-2021-28875P3HIGHCVSS 7.5fixed in 1.50.02021-04-11
CVE-2021-28875 [HIGH] CWE-252 CVE-2021-28875: In the standard library in Rust before 1.50.0, read_to_end() does not validate the return value from
In the standard library in Rust before 1.50.0, read_to_end() does not validate the return value from Read in an unsafe context. This bug could lead to a buffer overflow.
nvd
CVE-2020-36323P3HIGHCVSS 8.2fixed in 1.52.02021-04-14
CVE-2020-36323 [HIGH] CWE-134 CVE-2020-36323: In the standard library in Rust before 1.52.0, there is an optimization for joining strings that can
In the standard library in Rust before 1.52.0, there is an optimization for joining strings that can cause uninitialized bytes to be exposed (or the program to crash) if the borrowed string changes after its length is checked.
nvd
CVE-2015-20001P3HIGHCVSS 7.5fixed in 1.2.02021-04-11
CVE-2015-20001 [HIGH] CWE-119 CVE-2015-20001: In the standard library in Rust before 1.2.0, BinaryHeap is not panic-safe. The binary heap is left
In the standard library in Rust before 1.2.0, BinaryHeap is not panic-safe. The binary heap is left in an inconsistent state when the comparison of generic elements inside sift_up or sift_down_range panics. This bug leads to a drop of zeroed memory as an arbitrary type, which can result in a memory safety violation.
nvd
CVE-2020-36317P3HIGHCVSS 7.5fixed in 1.49.02021-04-11
CVE-2020-36317 [HIGH] CWE-787 CVE-2020-36317: In the standard library in Rust before 1.49.0, String::retain() function has a panic safety problem.
In the standard library in Rust before 1.49.0, String::retain() function has a panic safety problem. It allows creation of a non-UTF-8 Rust string when the provided closure panics. This bug could result in a memory safety violation when other string APIs assume that UTF-8 encoding is used on the same string.
nvd
CVE-2018-1000657P3HIGHCVSS 7.8≥ 1.3.0, < 1.22.02018-08-20
CVE-2018-1000657 [HIGH] CWE-119 CVE-2018-1000657: Rust Programming Language Rust standard library version Commit bfa0e1f58acf1c28d500c34ed258f09ae0218
Rust Programming Language Rust standard library version Commit bfa0e1f58acf1c28d500c34ed258f09ae021893e and later; stable release 1.3.0 and later contains a Buffer Overflow vulnerability in std::collections::vec_deque::VecDeque::reserve() function that can result in Arbitrary code execution, but no proof-of-concept exploit is currently published..
nvd
CVE-2018-1000622P3HIGHCVSS 7.8≥ 0.8, ≤ 1.27.02018-07-09
CVE-2018-1000622 [HIGH] CWE-427 CVE-2018-1000622: The Rust Programming Language rustdoc version Between 0.8 and 1.27.0 contains a CWE-427: Uncontrolle
The Rust Programming Language rustdoc version Between 0.8 and 1.27.0 contains a CWE-427: Uncontrolled Search Path Element vulnerability in rustdoc plugins that can result in local code execution as a different user. This attack appear to be exploitable via using the --plugin flag without the --plugin-path flag. This vulnerability appears to have b
nvd
CVE-2021-28878P3HIGHCVSS 7.5fixed in 1.52.02021-04-11
CVE-2021-28878 [HIGH] CWE-119 CVE-2021-28878: In the standard library in Rust before 1.52.0, the Zip implementation calls __iterator_get_unchecked
In the standard library in Rust before 1.52.0, the Zip implementation calls __iterator_get_unchecked() more than once for the same index (under certain conditions) when next_back() and next() are used together. This bug could lead to a memory safety violation due to an unmet safety requirement for the TrustedRandomAccess trait.
nvd
CVE-2021-28877P3HIGHCVSS 7.5fixed in 1.51.02021-04-11
CVE-2021-28877 [HIGH] CWE-119 CVE-2021-28877: In the standard library in Rust before 1.51.0, the Zip implementation calls __iterator_get_unchecked
In the standard library in Rust before 1.51.0, the Zip implementation calls __iterator_get_unchecked() for the same index more than once when nested. This bug can lead to a memory safety violation due to an unmet safety requirement for the TrustedRandomAccess trait.
nvd
CVE-2022-21658P4MEDIUMCVSS 6.3≥ 1.0.0, ≤ 1.58.0fixed in 1.58.12022-01-20
CVE-2022-21658 [MEDIUM] CWE-363 CVE-2022-21658: Rust is a multi-paradigm, general-purpose programming language designed for performance and safety,
Rust is a multi-paradigm, general-purpose programming language designed for performance and safety, especially safe concurrency. The Rust Security Response WG was notified that the `std::fs::remove_dir_all` standard library function is vulnerable a race condition enabling symlink following (CWE-363). An attacker could use this security issue to trick
nvd
CVE-2023-40030P4MEDIUMCVSS 6.1≥ 1.60.0, < 1.72.02023-08-24
CVE-2023-40030 [MEDIUM] CWE-79 CVE-2023-40030: Cargo downloads a Rust project’s dependencies and compiles the project. Starting in Rust 1.60.0 and
Cargo downloads a Rust project’s dependencies and compiles the project. Starting in Rust 1.60.0 and prior to 1.72, Cargo did not escape Cargo feature names when including them in the report generated by `cargo build --timings`. A malicious package included as a dependency may inject nearly arbitrary HTML here, potentially leading to cross-site scripti
nvd
1 / 2Next →