p PatchFirst

PatchFirst · Latest vulnerabilities

rustc vulnerabilities

Vulnerabilities published for rustc in the last 30 days: 0. Listed in the KEV catalogue: 0.

Filter vulnerabilities
Clear filters

Vulnerabilities: 23

  1. CVE-2026-5223

    Medium · CVSS 6.5EPSS 0.29%No fix published

    Crates in third party registries can override the cached source of other crates

    Cargo incorrectly handled symlinks inside of crate tarballs downloaded from third-party registries, allowing a malicious crate to override the source code of another crate from the same registry. The severity of the vulnerability is **medium** for users of third-party registries. Users of crates.io are **not affected**, as crates.io forbids uploading crates containing any symlink.

    Published Updated
  2. CVE-2026-5222

    Low · CVSS 2.3EPSS 0.48%No fix published

    Cargo can be coerced to share credentials between registries

    Cargo between 1.68 and 1.96 incorrectly normalized the URLs of third-party registries using the sparse index protocol. If a hosting provider allowed multiple registries to be hosted with arbitrary names within the same domain, an attacker able to publish crates in a registry could obtain the credentials of others users of the same registry. The severity of the vulnerability is **low**, due to the extremely niche requirements needed to achieve the attack.

    Published Updated
  3. CVE-2026-33056

    Medium · CVSS 5.1EPSS 0.39%No fix published

    tar-rs: unpack_in can chmod arbitrary directories by following symlinks

    tar-rs is a tar archive reading/writing library for Rust. In versions 0.4.44 and below, when unpacking a tar archive, the tar crate's unpack_dir function uses fs::metadata() to check whether a path that already exists is a directory. Because fs::metadata() follows symbolic links, a crafted tarball containing a symlink entry followed by a directory entry with the same name causes the crate to treat the symlink target as a valid existing directory — and subsequently apply chmod to it. This allows an attacker to modify the permissions of arbitrary directories outside the extraction root. This issue has been fixed in version 0.4.45.

    Published Updated
  4. CVE-2026-33055

    Medium · CVSS 5.1EPSS 0.41%No fix published

    tar-rs incorrectly ignores PAX size headers if header size is nonzero

    tar-rs is a tar archive reading/writing library for Rust. Versions 0.4.44 and below have conditional logic that skips the PAX size header in cases where the base header size is nonzero. As part of CVE-2025-62518, the astral-tokio-tar project was changed to correctly honor PAX size headers in the case where it was different from the base header. This is almost the inverse of the astral-tokio-tar issue. Any discrepancy in how tar parsers honor file size can be used to create archives that appear differently when unpacked by different archivers. In this case, the tar-rs (Rust tar) crate is an outlier in checking for the header size - other tar p

    Published Updated
  5. CVE-2022-21658

    High · CVSS 7.3EPSS 1.38%Fix available

    Race condition in std::fs::remove_dir_all in rustlang

    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 a privileged program into deleting files and directories the attacker couldn't otherwise access or delete. Rust 1.0.0 through Rust 1.58.0 is affected by this vulnerability with 1.58.1 containing a patch. Note that the following build targets don't have usable APIs to properly mitigate the attack,

    • Update to 1.57.0+dfsg1-1
    Published Updated
  6. CVE-2021-42574

    High · CVSS 8.3EPSS 12.88%Fix available

    CVE-2021-42574

    An issue was discovered in the Bidirectional Algorithm in the Unicode Specification through 14.0. It permits the visual reordering of characters via control sequences, which can be used to craft source code that renders different logic than the logical ordering of tokens ingested by compilers and interpreters. Adversaries can leverage this to encode source code for compilers accepting Unicode such that targeted vulnerabilities are introduced invisibly to human reviewers. NOTE: the Unicode Consortium offers the following alternative approach to presenting this concern. An issue is noted in the nature of international text that can affect appli

    • Update to 1.57.0+dfsg1-1
    Published Updated
  7. CVE-2021-29922

    Critical · CVSS 9.1EPSS 2.62%Fix available

    CVE-2021-29922

    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.

    • Update to 1.53.0+dfsg1-1
    Published Updated
  8. CVE-2015-20001

    High · CVSS 7.5EPSS 1.32%Fix available

    CVE-2015-20001

    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.

    • Update to 1.2.0+dfsg1-1
    Published Updated
  9. CVE-2020-36317

    High · CVSS 7.5EPSS 1.5%Fix available

    CVE-2020-36317

    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.

    • Update to 1.53.0+dfsg1-1
    Published Updated
  10. CVE-2021-28878

    High · CVSS 7.5EPSS 2%Fix available

    CVE-2021-28878

    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.

    • Update to 1.53.0+dfsg1-1
    Published Updated
  11. CVE-2021-28876

    Medium · CVSS 5.3EPSS 1.57%Fix available

    CVE-2021-28876

    In the standard library in Rust before 1.52.0, the Zip implementation has a panic safety issue. It calls __iterator_get_unchecked() more than once for the same index when the underlying iterator panics (in certain conditions). This bug could lead to a memory safety violation due to an unmet safety requirement for the TrustedRandomAccess trait.

    • Update to 1.53.0+dfsg1-1
    Published Updated
  12. CVE-2019-1010299

    Medium · CVSS 5.3EPSS 1.52%Fix available

    CVE-2019-1010299

    The Rust Programming Language Standard Library 1.18.0 and later is affected by: CWE-200: Information Exposure. The impact is: Contents of uninitialized memory could be printed to string or to log file. The component is: Debug trait implementation for std::collections::vec_deque::Iter. The attack vector is: The program needs to invoke debug printing for iterator over an empty VecDeque. The fixed version is: 1.30.0, nightly versions after commit b85e4cc8fadaabd41da5b9645c08c68b8f89908d.

    • Update to 1.30.0+dfsg1-1
    Published Updated

Check your server

Check your installed stack and versions against the current vulnerability feeds.

Check your server →