Skip to content
OpenAdvisories

Ecosystem

crates.io

2,056 known vulnerabilities.

2,055 results · Feed

  • Unscored —

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

    `build_dep` attempted to send telemetry from the build environment to an arbitrary URL. The malicious crate had 1 version published on 2025-03-03, approximately 20 months before removal, and had no evidence of actual usage. This crate had no dependencies on c…

  • Unscored —

    `sec-gemini` was removed from crates.io for malicious code

    `sec-gemini` attempted to send telemetry from the build environment to an arbitrary URL. The malicious crate had 1 versions published on 2025-06-19, approximately 17 months before removal, and had no evidence of actual usage. This crate had no dependencies on…

  • Unscored —

    Large-window Brotli bodies bypass decompression memory limits

    With the `compress-brotli` feature enabled, the decoder accepts the non-standard large-window Brotli format. A crafted stream can cause its internal buffer to grow to about 1 GiB before the decoded output reaches the configured size limit. An 850-byte request…

  • Unscored —

    Degraded secret zeroization capabilities

    In version 0.11.1 and earlier of vodozemac, the Olm root key ratchet did not zeroize its HKDF output after use. Each ratchet step left a copy of the new root key and chain key in freed heap memory. ## Impact An attacker who can read the process's memory, for …

  • Unscored —

    Request smuggling through malformed chunked request trailers

    The HTTP/1 chunked decoder accepts a bare line feed after the final chunk as the start of a trailer instead of rejecting the malformed request. When an upstream proxy reuses a connection and either pipelines the requests or does not take steps to validate the…

  • Unscored —

    Degraded secret zeroization capabilities

    Versions 0.11.0 and 0.11.1 of vodozemac have degraded secret zeroization capabilities, due to changes in third-party cryptographic dependencies (chacha-20poly1305, sha2, hmac), which moved secret zeroization capabilities behind a feature flag while vodozemac …

  • Unscored —

    Hidden file disclosure through Windows short names

    On Windows volumes with 8.3 short names, `actix_files::Files` can serve hidden files through their short-name aliases. The default path check rejects segments that start with a dot, but an alias such as `ENV~1` or `GIT~1` passes this check. A remote client ca…

  • Unscored —

    Compressed request bodies can exhaust memory before extractor limits apply

    Body extractors do not pass their size limits to the decompression layer. A small compressed request can therefore cause a large allocation before the extractor rejects the decoded body. A remote attacker can use this to exhaust memory or CPU resources and ca…

  • Low 2.3

    A russh SSH server accepts a publickey authentication whose signature uses a different algorithm than the one named in the request

    russh is a Rust SSH client and server library. From version 0.34.0-beta.1 until version 0.64.0, its SSH server does not require the signature algorithm in a public-key authentication signature to match the algorithm named in the authentication request. A clie…

  • Medium 6.5

    Unbounded response body buffering in Streamable HTTP clients

    Before 3.9.0, the built-in Streamable HTTP clients in rmcp read non-streaming HTTP response bodies into memory with no size limit. Both the reqwest client (`transport-streamable-http-client-reqwest`) and the Unix socket client (`transport-streamable-http-clie…

  • Unscored —

    `ocipkg` is unmaintained

    The author of `ocipkg` has archived the repository and declared the crate no longer maintained. [Version 0.4.1](https://crates.io/crates/ocipkg/0.4.1) is stated to be the final release. "No further updates, including security fixes, are planned." ## Alternati…

  • Medium 6.5

    Panic on an HEVC tile layout that does not match the active SPS

    An HEVC picture parameter set (PPS) stores explicit tile column widths and row heights computed against the sequence parameter set (SPS) active when it was parsed. A crafted stream can redefine that SPS afterwards, so that the tile sizes add up to more than t…

  • Medium 6.5

    Memory exhaustion when parsing a crafted `iloc` box

    `heifer-isobmff` read the item and extent counts of the `iloc` box (item locations) from the file and allocated memory for them before checking that the box was large enough to hold that many entries. Extents that declare no field at all take zero bytes each,…

  • Medium 6.5

    Panic on chroma QP offsets enabled with an empty offset list

    An HEVC Range Extensions stream can set `cu_chroma_qp_offset_enabled_flag` in a slice while its picture parameter set carries an empty chroma QP offset list. The decoder then read the list at the signalled index, which panicked on the out-of-range access. A p…

  • Low 3.7

    Wasmtime 46.0.0 before 48.0.7 and 49.0.0 before 49.0.4 Forwarded Trailers Header Filter Bypass

    Wasmtime 46.0.0 before 48.0.7 and 49.0.0 before 49.0.4 fails to check forwarded trailers against the WasiHttpHooks::is_forbidden_header hook in wasi-http p3. WASIp3 guests can forward a request or response body so its trailers skip embedder-customized forbidd…

  • Low 3.7

    Wasmtime before 36.0.19, 37.0.0 before 48.0.7, and 49.0.0 before 49.0.4 wasi-http Request Smuggling

    Wasmtime before 36.0.19, 37.0.0 before 48.0.7, and 49.0.0 before 49.0.4 contains a request smuggling vulnerability in wasi-http that allows guests to set multiple conflicting content-length headers. Malicious guests can make the host send HTTP requests with c…

  • Medium 5.3

    Wasmtime 46.0.0 before 48.0.7 and 49.0.0 before 49.0.4 HTTP Response Splitting via wasi-http

    Wasmtime 46.0.0 before 48.0.7 and 49.0.0 before 49.0.4 contains a response splitting vulnerability in wasi-http p3 that allows guests to set unvalidated content-length headers. Malicious wasip3 guests can splice an existing body into a new response with an in…

  • High 7.8

    SurrealDB before 3.3.0 Use-After-Free via affinitypool spawn_local in KV Backends

    SurrealDB before 3.3.0 contains a use-after-free vulnerability in surrealdb-core KV backends that pass borrowed transaction state into affinitypool::spawn_local closures relying on future Drop for safety. Rust embedders that leak a dispatched future (e.g. via…

  • High 7.9

    Out-of-bounds read when decoding internal keys shorter than 16 bytes

    `InternalKeyRef::from_encoded` is a safe constructor whose only length check is `debug_assert!(encoded.len() >= 16)`, which is compiled out in release builds. Its accessors perform unchecked length arithmetic on the slice: `user_key()` slices `&encoded[..len …

  • High 7.8

    Data race and double free via unsound `Send`/`Sync` in `reblessive`

    `dbs::Executor` drives every SurrealQL statement through `reblessive::tree::TreeStack`. In `reblessive 0.4.3` the runtime types unconditionally assert `Send`/`Sync` (`unsafe impl Send/Sync for Stack`, `TreeStack` and `Runner`), while the public entry points a…

  • Unscored —

    `astral-tokio-tar` is unmaintained

    Astral ended maintenance of `astral-tokio-tar` on November 3, 2026. All versions of the crate are deprecated and unmaintained. For strict tar encoding and decoding, Astral recommends [`tar-codec`] as a possible replacement. [0.7.1 release]: https://github.com…

  • Critical 9.1

    Apache Arrow Rust: Improper validation of RunEndEncoded arrays allows out of bounds reads

    Out-of-bounds read vulnerability in Apache Arrow Rust (`arrow` crate), from version 33.0.0 through to versions 57.3.1, 58.4.0, 59.3.1 and 60.0.0. Improper validation of RunEndEncoded arrays in the ArrayData interface can allow reading data beyond the bounds o…

  • Medium 5.5

    Unbounded memory allocation in `evtx` parsing a `.wevtcache` file

    Affected versions of `evtx` did not bound a per-entry payload length read from a `.wevtcache` file before allocating a buffer sized from it, allowing a tiny crafted file to force a multi-gigabyte allocation and abort the process (out-of-memory denial of servi…

  • Medium 4.7

    Path traversal in `rio-vt` Kitty graphics protocol handler allows out-of-bounds file delete (and read)

    The Kitty graphics protocol handler in `rio-vt` builds a filesystem path from an attacker-controlled APC escape sequence and, for the temp-file medium, only checks that the path *contains the substring* `"tty-graphics-protocol"` before it opens, reads, and `r…

  • High 8.2

    `ant-releases`: extracting a release archive can write files outside the destination directory (path traversal / zip-slip)

    `ant-releases` downloads and unpacks release archives from the `safe_network` / `autonomi` repositories. When it extracts an archive, it builds each output path by joining the archive entry's **own name** onto the destination directory, with no check for `..`…

  • Medium 5.3

    `codeq`: decoding untrusted input can allocate memory from an unchecked length prefix (denial of service)

    `codeq` is a serialization library whose `Decode` trait reads length-prefixed values. For `String` and `Vec<u8>`, the length-prefixed `Decode` implementations read a 4-byte big-endian length and allocate a buffer of that size **before** reading the payload. B…

  • High 7.1

    `ocipkg`: unpacking an OCI archive can write and delete files outside the local image store (path traversal)

    When `ocipkg` unpacks an OCI archive, the destination directory is derived from the image name, which `ocipkg` reads from the archive's **own** `index.json` (`org.opencontainers.image.ref.name`). That name is attacker-controlled, and `ImageName::parse` accept…

  • Unscored —

    BLAKE2b produces wrong tag when using `reset()` with a different-length key

    ## Summary `hazardous::mac::blake2b::Blake2b::reset()` does not correctly reset the state when a key is supplied that has a different length than the one used upon initialization with `hazardous::mac::blake2b::Blake2b::new()`, because it errorneously uses a c…

  • Unscored —

    LLVM introduces timing-vulnerable optimizations into ML-KEM and ML-DSA operations intended to be constant-time

    ## Summary On targets that do not have a conditional move/select operations, LLVM compiles the internal `conditional_sub_u32()` function, into one that will contain a conditional jump on secret-dependent data, which could leak information about encapsulation …

  • High 7.5

    `nix-nar`: `Decoder::unpack` writes archive entries outside the destination directory (path traversal)

    `Decoder::unpack` does not safely contain the paths it extracts, so a malicious NAR archive can create files **outside** the destination directory — a path traversal (CWE-22). In `src/dec.rs` (`Decoder::unpack`): - A symlink entry's target is written without …

  • Medium 5.5

    SQLite before 3.54.0 Information Disclosure via WAL Page Size Mismatch

    SQLite before 3.54.0 contains an information disclosure vulnerability that allows attackers to read uninitialized page-cache memory by supplying a WAL file with an undersized page size. Attackers can craft a database and WAL file whose oversized record payloa…

  • Low —

    Cedar: JSON template is in scope missing slot-id validation allows link panic and decision divergence

    Cedar users must be using all of the following features to be affected by this advisory: JSON format policies, policy templates, and the `is in` scope condition. This advisory only affects JSON-formatted Cedar policy templates containing `is in` scope conditi…

  • Medium 4.8

    Wasmtime 46.0.0 before 48.0.6 and 49.0.0 before 49.0.3 Panic via Zero-Length Stream Writes

    Wasmtime 46.0.0 before 48.0.6 and 49.0.0 before 49.0.3 contains a denial of service vulnerability that allows guest code to trigger a host panic through out-of-bounds zero-length stream operations. Malicious guests can perform zero-length component model stre…

  • Medium 4.8

    Wasmtime 46.0.0 before 48.0.6 and 49.0.0 before 49.0.3 Host Panic via call_async Drop

    Wasmtime 46.0.0 before 48.0.6 and 49.0.0 before 49.0.3 contains a denial of service vulnerability where dropping the Future returned by TypedFunc::call_async can panic the host. When the guest task has not started, cleanup code searches only one location for …

  • Medium 5.3

    Wasmtime 46.0.0 before 48.0.6 and 49.0.0 before 49.0.3 Host Panic via realloc

    Wasmtime 46.0.0 before 48.0.6 and 49.0.0 before 49.0.3 contains a denial of service vulnerability that allows malicious Wasm modules to panic the host because the may_leave flag is not cleared during realloc. Attackers can call into the host from realloc whil…

  • Medium 4.8

    Wasmtime 46.0.0 before 48.0.6 and 49.0.0 before 49.0.3 Host Panic via Func::call

    Wasmtime 46.0.0 before 48.0.6 and 49.0.0 before 49.0.3 contains a leftover assertion in component::Func::call that rejects guest exports using the async ABI option. An attacker who supplies a component with an async-lifted export can crash the host process wh…

  • Medium 4.8

    Wasmtime 46.0.0 before 48.0.6 and 49.0.0 before 49.0.3 Host Panic via thread.yield

    Wasmtime 46.0.0 before 48.0.6 and 49.0.0 before 49.0.3 contains a denial of service vulnerability that allows malicious components to panic the host via thread.yield in start functions. Attackers can supply a component whose start function calls an async-lowe…

  • Medium 4.8

    Wasmtime 46.0.0 before 48.0.6 and 49.0.0 before 49.0.3 Panic After Trap

    Wasmtime 46.0.0 before 48.0.6 and 49.0.0 before 49.0.3 contains a denial of service vulnerability that allows pending calls to trigger an assertion failure after a trap poisons the Store. Attackers supplying misbehaving guest code can cause a trap and let ear…

  • Medium 5.3

    Wasmtime 42.0.0 before 48.0.6 and 49.0.0 before 49.0.3 Stack Overflow via Type Registry

    Wasmtime 42.0.0 before 48.0.6 and 49.0.0 before 49.0.3 contains a stack overflow vulnerability that allows guests to crash the host through recursive type drops. Guests can define a long chain of recursive types so that removing the top-level type triggers un…

  • Medium 4.8

    Wasmtime 42.0.0 before 48.0.6 and 49.0.0 before 49.0.3 Async-Entrypoint Enforcement Bypass

    Wasmtime 42.0.0 before 48.0.6 and 49.0.0 before 49.0.3 contains insufficient checks in Store when mixing async-style and sync-style WebAssembly calls. Embedders re-entering WebAssembly via sync APIs from host functions called asynchronously can trigger runtim…