Skip to content
OpenAdvisories

Ecosystem

crates.io

2,075 known vulnerabilities.

2,074 results · Feed

  • Unscored —

    surf is unmaintained

    The surf crate is unmaintained, and all versions are affected. For alternatives, consider using [reqwest](https://crates.io/crates/reqwest) or [ureq](https://crates.io/crates/ureq). See [this issue](https://github.com/http-rs/surf/issues/352) for more context.

  • Unscored —

    `pqcrypto-hqc` is unmaintained: upstream PQClean project being archived

    This crate provides Rust bindings to the HQC key encapsulation mechanism via C implementations from [PQClean](https://github.com/PQClean/PQClean). The PQClean project is being archived in or after July 2026 (see [PQClean/PQClean#604](https://github.com/PQClea…

  • Unscored —

    `pqcrypto-classicmceliece` is unmaintained: upstream PQClean project being archived

    This crate provides Rust bindings to the Classic McEliece key encapsulation mechanism via C implementations from [PQClean](https://github.com/PQClean/PQClean). The PQClean project is being archived in or after July 2026 (see [PQClean/PQClean#604](https://gith…

  • Unscored —

    `pqcrypto-mldsa` is unmaintained: upstream PQClean project being archived

    This crate provides Rust bindings to ML-DSA (FIPS 204) via C implementations from [PQClean](https://github.com/PQClean/PQClean). The PQClean project is being archived in or after July 2026 (see [PQClean/PQClean#604](https://github.com/PQClean/PQClean/issues/6…

  • Unscored —

    `pqcrypto-falcon` is unmaintained: upstream PQClean project being archived

    This crate provides Rust bindings to the Falcon (FN-DSA) signature scheme via C implementations from [PQClean](https://github.com/PQClean/PQClean). The PQClean project is being archived in or after July 2026 (see [PQClean/PQClean#604](https://github.com/PQCle…

  • Unscored —

    `pqcrypto` is unmaintained: upstream PQClean project being archived

    The `pqcrypto` crate and the entire `pqcrypto-*` ecosystem wrap C implementations from [PQClean](https://github.com/PQClean/PQClean). The PQClean project is being archived in or after July 2026 (see [PQClean/PQClean#604](https://github.com/PQClean/PQClean/iss…

  • Unscored —

    `pqcrypto-internals` is unmaintained: upstream PQClean project being archived

    This crate provides internal FFI utilities for the `pqcrypto-*` ecosystem, directly wrapping C implementations from [PQClean](https://github.com/PQClean/PQClean). The PQClean project is being archived in or after July 2026 (see [PQClean/PQClean#604](https://g…

  • Unscored —

    `pqcrypto-traits` is unmaintained: upstream PQClean project being archived

    This crate provides shared trait definitions for the `pqcrypto-*` ecosystem, which wraps C implementations from [PQClean](https://github.com/PQClean/PQClean). The PQClean project is being archived in or after July 2026 (see [PQClean/PQClean#604](https://githu…

  • Unscored —

    `pqcrypto-mlkem` is unmaintained: upstream PQClean project being archived

    This crate provides Rust bindings to ML-KEM (FIPS 203) via C implementations from [PQClean](https://github.com/PQClean/PQClean). The PQClean project is being archived in or after July 2026 (see [PQClean/PQClean#604](https://github.com/PQClean/PQClean/issues/6…

  • Unscored —

    `pqcrypto-sphincsplus` is unmaintained: upstream PQClean project being archived

    This crate provides Rust bindings to SPHINCS+/SLH-DSA (FIPS 205) via C implementations from [PQClean](https://github.com/PQClean/PQClean). The PQClean project is being archived in or after July 2026 (see [PQClean/PQClean#604](https://github.com/PQClean/PQClea…

  • Unscored —

    `logflux` was removed from crates.io for malicious code

    The `logflux` crate attempted to download and run a malicious payload on the user's machine. The malicious crate had 1 version published on 2026-04-26, approximately 1 month before removal, and had no evidence of actual usage. This crate had no dependencies o…

  • Unscored —

    Several memory corruption issues via safe APIs

    Several soundness violations exist in the Rust bindings for `MetaCall`, indicatively: **`MetaCallException::Clone`**: `Clone` is dangerous because it creates a second Rust object that still points to the same foreign `MetaCall` value, but does not actually ow…

  • Unscored —

    Bad-free in `MetaCallException::new`

    `exception_struct` is a local stack variable, but the code passes its address to the C language as `&mut exception_struct as *mut _ as *mut c_void`. Then, the returned `MetaCallException` value is stored here: ```rust Ok(Self { exception_struct: Arc::new(exce…

  • Medium —

    tar has a PAX header desynchronization issue

    ### Summary When a tar stream contains multiple "header" entries prior to a file entry, tar-rs applies the PAX header (`x`) to the _next_ entry in the stream, regardless of type. For example, a stream of `x -> L -> file` (PAX, GNU longname, file) would result…

  • Medium —

    astral-tokio-tar has a PAX Header Desynchronization issue

    ### Impact Versions of astral-tokio-tar prior to 0.6.2 contain a PAX header interpretation bug that allows manipulated entries to be made selectively visible or invisible during extraction with astral-tokio-tar versus other tar implementations. An attacker co…

  • Critical 9.6

    CodeWhale: run_tests Tool Enables RCE via Malicious Repository Without Approval

    CodeWhale is a DeepSeek + MiMo coding agent in terminal. From 0.3.0 to 0.8.23, the run_tests tool executes cargo test in the workspace with ApprovalRequirement::Auto, meaning it runs without any user approval prompt. cargo test compiles and executes arbitrary…

  • High 7.4

    CodeWhale: SSRF via HTTP Redirect Bypass in fetch_url Tool

    CodeWhale is a DeepSeek + MiMo coding agent in terminal. Prior to 0.8.22, the fetch_url tool validates the initial URL's resolved IP address against a restricted-IP blocklist (is_restricted_ip()) to prevent SSRF attacks against internal services (cloud metada…

  • High 7.4

    CodeWhale: SSRF‌ IPV6 bypass

    CodeWhale is a DeepSeek + MiMo coding agent in terminal. Prior to 0.8.26, although SSRF is validated against hostnames that resolve to private IPv6 addresses, when providing the IPV6 in‌‌ URL‌ as http://[::1], the SSRF defenses do not work. This vulnerability…

  • Critical 9.6

    CodeWhale: task_create Insecure Defaults Enable RCE via Prompt Injection in Project Files

    CodeWhale is a DeepSeek + MiMo coding agent in terminal. Prior to 0.8.26, the task_create tool spawns durable sub-agents that inherit two insecure defaults, allow_shell defaults to true (config.rs:1499: self.allow_shell.unwrap_or(true)) and auto_approve defau…

  • Unscored —

    `EbpfVm::invoke_function` performs out-of-bounds pointer arithmetic

    Affected versions of `solana_rbpf` expose the safe method `EbpfVm::invoke_function`. This method computes an obfuscated VM pointer by casting `self` to `*mut u64` and applying a randomized offset derived from `get_runtime_environment_key()`. The resulting poi…

  • High 8.2

    Anchor: Program<'info, System> is not properly validated

    Anchor is a framework providing several convenient developer tools for writing Solana programs. From 1.0.0 to before 1.0.2, an logic error causes anchor programs to accept any program id when requiring the system program id, causing false assumptions resultin…

  • Medium 6.1

    Tauri: Origin Confusion Allows Remote Pages to Invoke Local-Only IPC Commands

    Tauri is a framework for building binaries for all major desktop platforms. From 2.0 to 2.11.0, a flaw in Tauri's is_local_url() function causes it to incorrectly classify remote URLs as trusted local origins on Windows and Android. On these systems, Tauri ma…

  • High 7.3

    smallbitvec: Safe API Triggered Heap Buffer Overflow via Integer Overflow

    smallbitvec is a growable bit-vector for Rust, optimized for size. From 1.0.1 to 2.6.0, an integer overflow in the internal capacity calculation of smallbitvec can lead to an undersized heap allocation, resulting in a heap buffer overflow through safe APIs on…

  • High 7.8

    gitoxide - Command Injection via Partial .gitmodules Override in gix-submodule

    gix-submodule before 0.29.0 (gitoxide before 0.5.21, gix before 0.84.0) incorrectly validates the update field in .gitmodules, allowing attackers to bypass the CommandForbiddenInModulesConfiguration guard when a submodule has been initialized with only partia…

  • Unscored —

    Potentially Incorrect Output of Constant-Time Swap/Select on Aarch64

    The implementation of constant-time swap and select on aarch64 platforms used a `cmp` instruction in inline assembly to check whether an 8-bit wide selector was 0. The `cmp` instruction works on 32-bit registers, which included the unspecified high 24 bits of…

  • Medium 6.5

    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 th…

  • Low 2.3

    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 crat…

  • Unscored —

    Potential Panic in AVX2 SHAKE-256

    The AVX2-optimized implementation of SHAKE-256 intended for use in ML-KEM and ML-DSA would panic if the length of the output buffers was greater than 32 and not a multiple of 8, due to an out-of-bounds indexing operation. ## Impact This bug impacts users on A…

  • Unscored —

    audiopus_sys is unmaintained

    audiopus_sys is implicitly unmaintained and holds a reference to CMake versions with which CMake 4.0 is not backwards compatible, causing cargo builds to error. An effort to contact the maintainer was made on June 10th, 2025 with no reply. A separate 2025 PR …

  • High 7.5

    nimiq-keys: Unchecked Ed25519 signature length in TaggedPublicKey::verify causes remote node panic via DHT

    nimiq-blockchain provides persistent block storage for Nimiq's Rust implementation. In versions 1.3.0 and below, a malicious network peer can crash any Nimiq full node by publishing a crafted Kademlia DHT record. The maliciously crafted record would contain a…

  • Medium —

    Diesel: Command injection in Diesel's implementation of `COPY FROM`/`COPY TO`

    Diesel allows users to configure various options for PostgreSQL's `COPY FROM` and `COPY TO` statements. These configurations are partially provided as strings or characters. Diesel did not check if any these user-provided options contain a quote character `'`…

  • Medium —

    Diesel: Possible unaligned data access for implementations of `SqliteAggregate`

    Diesel allows to register custom aggregate SQL functions for SQLite via the `SqliteAggregate` interface. To store an instance of the custom aggregate processor Diesel relied on the `sqlite3_aggregate_context` function provided by sqlite. This function doesn't…

  • High —

    libcrux-ml-dsa: Signature Verification on AVX2 Platforms Mishandles Edge Case

    The AVX2 implementation of ML-DSA verification incorrectly implemented the `use_hint` function, mishandling an edge case that should lead to signature rejection. ## Impact An attacker could make the ML-DSA verifier accept a crafted invalid signature under a m…

  • High —

    libcrux: Potential Panic on Overlong Ciphertext Buffer

    An application that passes in a ciphertext buffer of length greater than `ptxt.len() + TAG_LEN` to `libcrux_chacha20poly1305::encrypt` or `libcrux_chacha20poly1305::xchacha20_poly1305::encrypt` would experience a panic. ## Impact An application where the leng…

  • Medium —

    rkyv: Panic safety bugs in `InlineVec::clear` and `SerVec::clear` enable arbitrary code execution

    `InlineVec::clear()` and `SerVec::clear()` in `rkyv` were not panic-safe. Both functions iterate over their elements and call `drop_in_place` on each, updating `self.len` only *after* the loop. If an element's `Drop` implementation panics during the loop, `se…

  • Medium 5.1

    rust-openssl: Heap buffer overflow when encrypting with AES key-wrap-with-padding

    rust-openssl provides OpenSSL bindings for the Rust programming language. From 0.10.0 to before 0.10.79, CipherCtxRef::cipher_update, CipherCtxRef::cipher_update_vec, and symm::Crypter::update incorrectly sized output buffers when used with AES key-wrap-with-…

  • High 8.7

    rust-openssl: undefined behavior in X509Ref::ocsp_responders for certificates with non-UTF-8 OCSP URLs

    rust-openssl provides OpenSSL bindings for the Rust programming language. From 0.9.7 to before 0.10.79, X509Ref::ocsp_responders returns OCSP responder URLs from a certificate's AIA extension as OpensslString, whose Deref<Target = str> wraps the raw bytes wit…

  • Medium 5.9

    Wasmtime: Panic when allocating a table exceeding the size of the host's address space

    Wasmtime is a runtime for WebAssembly. From 30.0.0 to 36.0.8, 43.0.2, and 44.0.1, Wasmtime's allocation logic for a WebAssembly table contained checked arithmetic which panicked on overflow. This overflow is possible to trigger, and thus panic, when a table w…

  • High 8.8
    CVE-2026-42559 Public exploit

    RMCP: DNS rebinding vulnerability in rmcp Streamable HTTP server transport

    RMCP is an official Rust SDK for the Model Context Protocol. Prior to version 1.4.0, the rmcp crate's Streamable HTTP server transport (crates/rmcp/src/transport/streamable_http_server/) did not validate the incoming Host header. This allowed a malicious publ…

  • Unscored —

    Double-free in `vmem` storage reachable from safe Rust

    When the `vmem` feature is enabled, `VmemStorage<T>::new(Box<[UnsafeSyncCell<T>]>)` (and every public constructor that funnels through it — `ConcurrentHeapRB::default(cap)`, `ConcurrentHeapRB::from(Vec<T>)`, `From<Box<[T]>>`, etc.) bit-copies the input buffer…