1310 matches found
RUSTSEC-2026-0296 `unzip` is unmaintained
The unzip crate has only ever released a single version, 0.1.0 published 2017-12-23, and has seen no further activity. It appears to be unmaintained, and its known path-traversal "zip-slip" vulnerability will not be fixed. Consider migrating to an actively maintained alternative such as zip...
RUSTSEC-2026-0304 Finished streaming calls keep reading a stalled request body indefinitely
Affected versions of connectrpc start a background task to read the request body of every client-streaming and bidirectional-streaming call, before the interceptors or the handler run. A call can finish before it has consumed its request: the handler can return without reading all of its request...
RUSTSEC-2026-0293 Double free / use-after-free in `Consumer::skip` and `Consumer::clear` when an element's `Drop` panics
Consumer::skip and Consumer::clear are not panic-safe. They drop the consumed elements in place and only afterwards call advancereadindex to move the ring buffer's read index past them. If an element's Drop panics mid-loop, advancereadindex is never reached, so the read index still points at the...
RUSTSEC-2026-0306 `hex_decode_unchecked` AVX2 path reads past `src`
fasterhex::hexdecodeunchecked is a safe function. On x86 and x8664, when AVX2 is enabled, hexdecodeavx2 keeps decoding while dst.len = 32 and then loads 32 bytes from src and 32 bytes from src32... Nothing in that loop requires src to contain 64 bytes. A safe caller can pass a short src and a dst...
RUSTSEC-2026-0309 `SinglyLinkedList::remove` dereferences a null link
In versions before 0.2.1, SinglyLinkedList::remove is safe and walks the intrusive list with an unchecked dereference. On an empty list, or when node is not in the list, currentelm.next reads a null pointer. That is undefined behavior. The list head is a raw mut Node, and safe code can construct...
RUSTSEC-2026-0328 `decompress`: tar-family extractors write archive entries without a path-traversal check (tar-slip)
The tar-family extractors in decompress .tar, .tar.gz, .tar.xz, .tar.bz2, .tar.zst build each output path from the raw archive entry path and write to it with no traversal check, so a malicious archive can write files outside the destination directory, a "tar-slip" / zip-slip path traversal CWE-2...
RUSTSEC-2026-0294 Unsoundness in UTF-8 'String' trait
The String API in iceoryx2-bb-container exposes its contents as mutable bytes through safe APIs, while String::asstr converts those bytes into a Rust string slice without validating UTF-8. An application can therefore create an invalid &str and trigger undefined behavior using entirely safe Rust...
RUSTSEC-2026-0287 cosmian_kyber is unmaintained
cosmiankyber is a fork of Argyle-Software/kyber that has seen no maintainer activity. It inherits the fork parent's broken AVX2 constant-time code, and the open fix pull request Cosmian/kyber6 has gone unanswered. Recommended alternatives: - aws-lc-rs - graviola...
RUSTSEC-2026-0289 pqc_kyber is unmaintained
The crate has had no releases since 0.7.1 2023-08-23, and the upstream repository shows no maintainer activity. Open pull requests, including a fix for a chosen-ciphertext key-recovery flaw in the AVX2 backend Argyle-Software/kyber121, have gone unanswered. Recommended alternatives: - aws-lc-rs -...
RUSTSEC-2026-0286 Out-of-bounds read when decoding CKA_ALLOWED_MECHANISMS
cryptoki treated the CKAALLOWEDMECHANISMS ulValueLen byte count as a CKMECHANISMTYPE element count. A valid nonempty attribute returned through the safe Session::getattributes API could cause construction of an out-of-bounds slice and undefined behavior. Possible consequences include a process...
RUSTSEC-2026-0340 Peer minimum ACK delay can panic quinn-proto when ACK_FREQUENCY transmission is enabled
When sending ACKFREQUENCY frames is enabled through TransportConfig::ackfrequencyconfigSome.., the peer's transport parameters could cause AckFrequencyState::candidatemaxackdelay to call Duration::clamp with a minimum greater than its maximum, which panics. For example, a peer advertising a...
RUSTSEC-2026-0285 TLS 1.3 handshake messages incorrectly accepted across encryption level boundaries
Rustls accepted TLS 1.3 handshake messages sent at the wrong encryption level when they followed a key-changing message in the same record. For example, a plaintext EncryptedExtensions message packed into the same record as the ServerHello was accepted. RFC 8446 section 5.1 requires that handshak...
RUSTSEC-2026-0343 Outgoing datagram buffer accounting can panic the sender in quinn-proto
The limit on memory used to buffer outgoing datagrams, introduced in 0.11.17, subtracted an evicted datagram's size from the buffered byte counter twice when Datagrams::send was called with drop = true as Connection::senddatagram in the quinn crate does while the buffer was full. Under sustained...
RUSTSEC-2026-0338 Remote peer can panic quinn-proto with zero-length STREAM frames during unordered reads
When a stream is read in unordered mode for example through RecvStream::readfalse in quinn-proto or readunordered in quinn, quinn-proto proactively deduplicates received data by recording received ranges in a RangeSet through its replace method. When an incoming STREAM frame carried an empty...
RUSTSEC-2026-0283 clear_on_drop is unmaintained
This crate is no longer maintained. Use the zeroize crate instead. Instead of ClearOnDrop, use Zeroizing Instead of clearstack, use zeroizestack...
RUSTSEC-2026-0298 Use-after-free when a future's `Drop` panics while the container is dropped
Storage::clear walks the slab, empties each entry and frees the Task allocation once its reference count reaches zero. self.tasks.setlen0 only runs after the loop. Emptying an entry drops the user future it holds, and T carries no bounds excluding a panicking Drop. If one unwinds, the length is...
RUSTSEC-2026-0291 Double free in `OwnedAlloc::drop_in_place` when the contained value's `Drop` panics
OwnedAlloc::dropinplace destroys the contained value by hand, then commits the ownership transfer with mem::forgetself — which lives inside intoraw and so runs only after the destruction. T::drop is user code and may panic. If it does, the forget is skipped and the still-live OwnedAlloc unwinds,...
RUSTSEC-2026-0297 `unzip`: archive extraction is vulnerable to path traversal (zip-slip)
Summary Unzipper::unzip extracts each archive entry to a path built from the entry's raw, attacker-controlled name without any traversal check. A ZIP archive whose entry names contain ../ components or an absolute path can therefore cause files to be written outside the destination directory chos...
RUSTSEC-2026-0282 Double free in `AlignedBox<[T]>::realloc_with_default` when an element's `Drop` panics
Shrinking an AlignedBox takes ownership of the buffer out of self.container with ManuallyDrop::take, destroys the elements past the new length, and only then commits the new Box back into self.container. ManuallyDrop::take moves ownership but not the bits, so until that commit self.container stil...
RUSTSEC-2026-0332 `WaveFormat::parse` reads past the end of a `&WAVEFORMATEX`
WaveFormat::parse is a safe function that takes a &WAVEFORMATEX, which is only valid for reads of sizeof:: 18 bytes. When the header has wFormatTag == WAVEFORMATEXTENSIBLE and cbSize = 22, the function reinterprets the reference as a WAVEFORMATEXTENSIBLE and reads 40 bytes. Nothing in the signatu...
RUSTSEC-2026-0280 `greentic-setup-dev` 1.3.34027618345 was removed from crates.io due to containing malicious code
A new version of the greentic-setup-dev crate was published with a variant of the PolinRider malware included that would fire when a project depending on greentic-setup-dev was opened in Visual Studio Code. One malicious version was published on 2026-09-06, approximately 27 hours before removal...
RUSTSEC-2026-0281 `greentic-setup` 1.3.1-dev.34027618345 was removed from crates.io due to containing malicious code
A new version of the greentic-setup crate was published with a variant of the PolinRider malware included that would fire when a project depending on greentic-setup was opened in Visual Studio Code. One malicious version was published on 2026-09-06, approximately 27 hours before removal. This cra...
RUSTSEC-2026-0292 Double free / use-after-free in `Chunk` and `InlineArray` removal methods when an element's `Drop` panics
Chunk::clear, dropleft, dropright and InlineArray::clear, truncate drop the removed elements before updating the metadata that records which slots hold live values — the left/right index pair for Chunk, the length field for InlineArray. If an element's Drop panics during the drop, that update is...
RUSTSEC-2026-0300 Use-after-free in `clear` and `retain` when an element's `Drop` panics
SkipList::clear drops the node chain and only then resets tail and len. The drop runs each element's Drop, and T carries no bounds excluding a panicking one. If it unwinds, tail still points at the freed node while len stays non-zero. back, backmut, lastkeyvalue and last dereference tail through...
RUSTSEC-2026-0278 `zbus_polkit`: authorization bypass via PID reuse
Subject::newforowner in the zbuspolkit crate encodes the uid entry of a unix-process polkit subject as an unsigned 32-bit integer D-Bus type u, whereas the org.freedesktop.PolicyKit1.Authority interface specifies a signed 32-bit integer D-Bus type i. Because of this type mismatch, polkit silently...
RUSTSEC-2026-0272 Panic-safety unsoundness in `Stack::pop`, `Fifo::pop_front` and `Value::replace_stable` (use-after-free / double-free)
Three removal and replacement paths destroy an initialized value before committing the metadata change that removes it. Destruction runs T::drop, which is user code and may panic. If it does, the commit is skipped and the container still claims ownership of the already-destroyed value, so its own...
RUSTSEC-2026-0277 Path traversal in apimock-server's file-serving fallback
The file-serving fallback joined a request-derived path onto the configured response directory and checked only that the result existed, never that it stayed inside that directory. A request containing a raw .. segment could read any file readable by the process, returned with HTTP 200. Read-only...
RUSTSEC-2026-0276 Path traversal in apimock's file-serving fallback
The file-serving fallback joined a request-derived path onto the configured response directory and checked only that the result existed, never that it stayed inside that directory. A request containing a raw .. segment could read any file readable by the process, returned with HTTP 200. Read-only...
RUSTSEC-2026-0284 Double free in `Map::into_iter` and an uninitialized `Arc` in `SharedIncin::clear`
Two independent soundness problems, both reachable from safe Rust. Map::intoiter drops builder the caller-supplied hasher H and incin by hand, then commits the ownership transfer with mem::forgetself. H::drop is user code and may panic. If it does, mem::forgetself is skipped and the still-live Ma...
RUSTSEC-2026-0331 Panic on Decoding Short Hybrid Keys
The deserialization functions X25519MlKem768Draft00PrivateKey::decode X25519MlKem768Draft00PublicKey::decode and XWingKemDraft06PublicKey::decode would panic during an indexing operation when provided an input slice that is shorter than the length of the given key type, i.e. shorter than 2400 byt...
RUSTSEC-2026-0267 Panic-safety unsoundness in `BitVecCore::clear` (double-free / use-after-free)
BitVecCore::clear drops every occupied element with dropinplace and only afterwards clears the occupancy bits and resets len. If an element's Drop panics, those metadata updates are skipped, so the slot of the already-dropped element stays marked as occupied. BitVecCore::drop calls clear again,...
RUSTSEC-2026-0268 Guest controlled-size host heap allocation through WASIp3 streams
This is an entry in the RustSec database for the Wasmtime security advisory located at https://github.com/bytecodealliance/wasmtime/security/advisories/GHSA-x84v-gj2h-g759 For more information see the GitHub-hosted security advisory...
RUSTSEC-2026-0266 `internment` 0.8.7 was removed from crates.io due to a malicious dependency
A new version of the internment crate was published with a direct dependency on proc-macro1, which would execute a malicious build script. The compromised version of this crate was published on 2026-08-20, and was removed approximately 90 minutes later. The compromised version was used as part of...
RUSTSEC-2026-0269 Filesystem sandbox escape when paths or symlinks contain trailing slashes
This is an entry in the RustSec database for the Wasmtime security advisory located at https://github.com/bytecodealliance/wasmtime/security/advisories/GHSA-vqjp-4c8c-hfgg For more information see the GitHub-hosted security advisory...
RUSTSEC-2026-0261 `aronenao` was removed from crates.io due to malicious code
We identified that aronenao contained malicious code executed through a build script. This crate had 11 versions, with the most recent one being published at 2026-08-18. The crate was removed from crates.io and the user account was locked. This crate was used as part of a malware campaign targete...
RUSTSEC-2026-0260 `arrayref` 0.3.10 was removed from crates.io due to a malicious dependency
A new version of the arrayref crate was published with a direct dependency on proc-macro1, which would execute a malicious build script. This compromised version was published on 2026-08-20 and removed approximately 86 minutes later. It was downloaded 2,285 times, which constituted less than 10% ...
RUSTSEC-2026-0263 `tinymember` was removed from crates.io due to affiliation with malicious code
While tinymember did not directly contain malicious code, it was owned by the same user as arone and aronenao, which contained suspicious build scripts. This crate had 2 versions published on 2026-08-18 that had a total of 27 downloads. There were no crates depending on this crate on crates.io. T...
RUSTSEC-2026-0259 `arone` was removed from crates.io due to malicious code
We identified that arone contained malicious code executed through a build script. This crate had 7 versions, with the most recent one being published at 2026-08-18. The crate was removed from crates.io on 2026-08-20 and the user account was locked. This crate was used as part of a malware campai...
RUSTSEC-2026-0264 `proc-macro-en` was removed from crates.io due to malicious code
We identified that proc-macro-en contained the same build script as proc-macro1 and it was part of the same supply chain attack. This crate had one single version published at 2026-08-20. The crate was removed from crates.io and related user account was locked. This crate was used as part of a...
RUSTSEC-2026-0265 `proc-macro1` was removed from crates.io due to malicious code
It was reported proc-macro1 contained a build script that would download a malicious payload. This crate had two versions, both published on 2026-08-20. The crate was removed from crates.io and related user accounts were locked. This crate was used as part of a malware campaign targeted at users ...
RUSTSEC-2026-0262 `append-only-vec` 0.1.9 was removed from crates.io due to a malicious dependency
A new version of the append-only-vec crate was published with a direct dependency on proc-macro1, which would execute a malicious build script. The compromised version of this crate was published on 2026-08-20, and was removed approximately 107 minutes later. The compromised crate version was use...
RUSTSEC-2026-0271 FTP command injection via CRLF in control channel arguments
Affected versions of suppaftp wrote command arguments user name, password, paths, SITE arguments and custom commands to the FTP control channel without validation. An argument containing a carriage return \r or a line feed \n terminated the intended command line and let a second, attacker-chosen...
RUSTSEC-2026-0258 h2 unbounded empty DATA frames
The h2 crate, used internally by hyper, had a flaw that would accept and queue empty DATA frames without limit. If streams were not actively drained, this could lead to unbounded memory usage, or a panic if the length overflows. Low severity. Patched in v0.4.16...
RUSTSEC-2026-0342 Zero-length DATAGRAM frames bypass the receive buffer limit in quinn-proto
quinn-proto bounds its queue of received datagrams by charging each queued frame's payload length against TransportConfig::datagramreceivebuffersize, evicting the oldest datagrams when the limit is exceeded. A DATAGRAM frame with an empty payload was charged zero bytes, so it never triggered...
RUSTSEC-2026-0339 Unbounded growth of pending connection ID retirements in quinn-proto
When processing a NEWCONNECTIONID frame, quinn-proto queues a RETIRECONNECTIONID frame for each connection ID that the peer asked it to retire. The normal path bounds this queue and closes the connection with a CONNECTIONIDLIMITERROR if the bound would be exceeded. However, the path handling a...
RUSTSEC-2026-0341 Stream reassembly memory-exhaustion guard in quinn-proto can be bypassed
The fix for RUSTSEC-2026-0185 in 0.11.15 added a cap on the number of chunks buffered by the Assembler that reassembles out-of-order stream data. However, the cap was only checked inside the branch that triggers defragmentation, which only runs when the estimated over-allocation exceeds a thresho...
RUSTSEC-2026-0288 cosmian_kyber: AVX2 backend skips Fujisaki-Okamoto implicit rejection, enabling chosen-ciphertext key recovery
Summary cosmiankyber is a fork of Argyle-Software/kyber and inherits a broken constant-time conditional-move routine cmov in its AVX2 backend. When built with the opt-in avx2 feature on x8664, cmov is a no-op: it never performs the copy. That cmov is the step that applies the Fujisaki-Okamoto FO...
RUSTSEC-2026-0290 pqc_kyber: AVX2 backend skips Fujisaki-Okamoto implicit rejection, enabling chosen-ciphertext key recovery
Summary When pqckyber is built with the opt-in avx2 feature on x8664, its constant-time conditional-move routine cmov is a no-op: it never performs the copy. That cmov is exactly the step that applies the Fujisaki-Okamoto FO implicit rejection during decapsulation. With it disabled, decapsulating...
RUSTSEC-2026-0275 Legacy `azure_core` writes the `authorization` header value to logs
Applications built on the legacy Azure SDK for Rust azurecore 0.21.0 and earlier write the value of the outgoing authorization header to their logs whenever debug-level logging is enabled, and in every affected version also at trace level. The leaked values are live credentials — Microsoft Entra ...
RUSTSEC-2026-0334 BIP-322 address ownership verification bypass for P2WPKH and P2SH-P2WPKH addresses
Affected versions of bip322 accepted a BIP-322 proof created with an attacker-controlled private key as a valid signature for an unrelated victim P2WPKH or P2SH-P2WPKH address, allowing complete authentication bypass in applications using verifysimple, verifysimpleencoded, verifyfull, or...