Lucene search
+L
Osv-rustsecMost viewed

1310 matches found

osv-rustsec
osv-rustsec
•added 2019/06/06 12:00 p.m.•50 views

RUSTSEC-2019-0009 Double-free and use-after-free in SmallVec::grow()

Attempting to call grow on a spilled SmallVec with a value equal to the current capacity causes it to free the existing data. This performs a double free immediately and may lead to use-after-free on subsequent accesses to the SmallVec contents. An attacker that controls the value passed to grow...

9.8CVSS8.7AI score0.01862EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2026/06/12 12:00 p.m.•49 views

RUSTSEC-2026-0179 Unbounded SCRAM iteration count allows a malicious server to cause CPU-exhaustion denial of service

A malicious, compromised, or man-in-the-middle server can supply an arbitrarily large SCRAM-SHA-256 PBKDF2 iteration count during authentication. The client runs it inline with no upper bound, pinning a tokio worker thread for minutes per connection, possibly stalling the whole async runtime...

8.7CVSS5.5AI score
SaveExploits0References4
osv-rustsec
osv-rustsec
•added 2022/11/10 12:00 p.m.•49 views

RUSTSEC-2022-0075 Bug in pooling instance allocator

bug in Wasmtime's implementation of its pooling instance allocator where when a linear memory is reused for another instance the initial heap snapshot of the prior instance can be visible, erroneously to the next instance. Mitigations are described here...

8.6CVSS8.4AI score0.00713EPSS
SaveExploits0References5
osv-rustsec
osv-rustsec
•added 2021/05/01 12:00 p.m.•49 views

RUSTSEC-2021-0058 Null pointer deref in `X509_issuer_and_serial_hash()`

The OpenSSL public API function X509issuerandserialhash attempts to create a unique hash value based on the issuer and serial number data contained within an X509 certificate. However it fails to correctly handle any errors that may occur while parsing the issuer field which might occur if the...

5.9CVSS6.5AI score0.0741EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2021/01/04 12:00 p.m.•49 views

RUSTSEC-2021-0039 panic in user-provided `Endian` impl triggers double drop of T

Affected versions of the crate does not guard against panic from user-provided impl of Endian trait, which is a safe trait that users can implement. If a user-provided implementation of the Endian trait panics, double-drop is triggered due to the duplicated ownership of T created by ptr::read...

7.5CVSS7.6AI score0.01135EPSS
SaveExploits1References3
osv-rustsec
osv-rustsec
•added 2020/11/02 12:00 p.m.•49 views

RUSTSEC-2020-0145 Use-after-free when cloning a partially consumed `Vec` iterator

The IntoIter Clone implementation clones the whole underlying Vec. If the iterator is partially consumed the consumed items will be copied, thus creating a use-after-free access. A proof of concept is available in the original bug report...

7.5CVSS7.4AI score0.01233EPSS
SaveExploits1References3
osv-rustsec
osv-rustsec
•added 2020/05/27 12:00 p.m.•49 views

RUSTSEC-2020-0028 `LocalRequest::clone` creates multiple mutable references to the same object

The affected version of rocket contains a Clone trait implementation of LocalRequest that reuses the pointer to inner Request object. This causes data race in rare combinations of APIs if the original and the cloned objects are modified at the same time...

8.1CVSS7.9AI score0.00969EPSS
SaveExploits1References3
osv-rustsec
osv-rustsec
•added 2019/11/16 12:00 p.m.•49 views

RUSTSEC-2019-0033 Integer Overflow in HeaderMap::reserve() can cause Denial of Service

HeaderMap::reserve used usize::nextpoweroftwo to calculate the increased capacity. However, nextpoweroftwo silently overflows to 0 if given a sufficiently large number in release mode. If the map was not empty when the overflow happens, the library will invoke self.grow0 and start infinite probin...

7.5CVSS7.3AI score0.0246EPSS
SaveExploits1References3
osv-rustsec
osv-rustsec
•added 2018/06/21 12:00 p.m.•49 views

RUSTSEC-2018-0001 An integer underflow could lead to panic

A mistake in error handling in untrusted before 0.6.2 could lead to an integer underflow and panic if a user of the crate didn't properly check for errors returned by untrusted. Combination of these two programming errors one in untrusted and another by user of this crate could lead to a panic an...

7.5CVSS7.2AI score0.01411EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2026/06/11 12:00 p.m.•48 views

RUSTSEC-2026-0177 Missing `Sync` bound on `PyCFunction::new_closure` closures

PyCFunction::newclosure and the temporary newclosurebound complement in the 0.21–0.22 series required the supplied closure to be Send + 'static but not Sync. The resulting PyCFunction is a Python callable that can be invoked from any Python thread, which means the closure may be called concurrent...

5.5AI score
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2021/11/16 12:00 p.m.•48 views

RUSTSEC-2021-0124 Data race when sending and receiving after closing a `oneshot` channel

If a tokio::sync::oneshot channel is closed via the oneshot::Receiver::close method, a data race may occur if the oneshot::Sender::send method is called while the corresponding oneshot::Receiver is awaited or calling tryrecv. When these methods are called concurrently on a closed channel, the two...

8.1CVSS8AI score0.01152EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2021/10/17 12:00 p.m.•48 views

RUSTSEC-2021-0120 abomonation transmutes &T to and from &[u8] without sufficient constraints

This transmute is at the core of the abomonation crates. It's so easy to use it to violate alignment requirements that no test in the crate's test suite passes under miri. The use of this transmute in serialization/deserialization also incorrectly assumes that the layout of a reprRust type is...

7.5CVSS7.2AI score0.00972EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2021/09/24 12:00 p.m.•48 views

RUSTSEC-2021-0115 `#[zeroize(drop)]` doesn't implement `Drop` for `enum`s

Affected versions of this crate did not implement Drop when zeroizedrop was used on an enum. This can result in memory not being zeroed out after dropping it, which is exactly what is intended when adding this attribute. The flaw was corrected in version 1.2 and zeroizedrop on enums now properly...

9.8CVSS9.4AI score0.01191EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2021/03/18 12:00 p.m.•48 views

RUSTSEC-2021-0041 Denial of service through parsing payloads with too big exponent

The parseduration::parse function allows for parsing duration strings with exponents like 5e5s where under the hood, the BigInt type along with the pow function are used for such payloads. Passing an arbitrarily big exponent makes the parseduration::parse function to process the payload for a ver...

7.5CVSS7.3AI score0.00981EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2021/01/26 12:00 p.m.•48 views

RUSTSEC-2021-0014 Record::read : Custom `Read` on uninitialized buffer may cause UB

Affected versions of this crate passes an uninitialized buffer to a user-provided Read implementation. Record::read Arbitrary Read implementations can read from the uninitialized buffer memory exposure and also can return incorrect number of bytes written to the buffer. Reading from uninitialized...

7.5CVSS7.4AI score0.01498EPSS
SaveExploits1References3
osv-rustsec
osv-rustsec
•added 2020/02/11 12:00 p.m.•48 views

RUSTSEC-2020-0023 Lifetime boundary for `raw_slice` and `raw_slice_mut` are incorrect

The affected version of rulinalg has incorrect lifetime boundary definitions for RowMut::rawslice and RowMut::rawslicemut. They do not conform with Rust's borrowing rule and allows the user to create multiple mutable references to the same location. This may result in unexpected calculation resul...

9.8CVSS9.4AI score0.01668EPSS
SaveExploits1References3
osv-rustsec
osv-rustsec
•added 2020/01/16 12:00 p.m.•48 views

RUSTSEC-2020-0002 Parsing a specially crafted message can result in a stack overflow

Affected versions of this crate contained a bug in which decoding untrusted input could overflow the stack. On architectures with stack probes like x86, this can be used for denial of service attacks, while on architectures without stack probes like ARM overflowing the stack is unsound and can...

9.8CVSS8.3AI score0.03401EPSS
SaveExploits1References3
osv-rustsec
osv-rustsec
•added 2019/08/24 12:00 p.m.•48 views

RUSTSEC-2019-0023 Cloned interners may read already dropped strings

Affected versions of this crate did not clone contained strings when an interner is cloned. Interners have raw pointers to the contained strings, and they keep pointing the strings which the old interner owns, after the interner is cloned. If a new cloned interner is alive and the old original...

7.5CVSS7.3AI score0.01547EPSS
SaveExploits1References3
osv-rustsec
osv-rustsec
•added 2018/08/25 12:00 p.m.•48 views

RUSTSEC-2018-0004 Malicious input could cause uninitialized memory to be exposed

Affected versions of Claxon made an invalid assumption about the decode buffer size being a multiple of a value read from the bitstream. This could cause parts of the decode buffer to not be overwritten. If the decode buffer was newly allocated and uninitialized, this uninitialized memory could b...

6.5CVSS6.5AI score0.01372EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2026/06/22 12:00 p.m.•47 views

RUSTSEC-2026-0185 Remote memory exhaustion in quinn-proto from unbounded out-of-order stream reassembly

The Assembler component that assembles unordered stream fragments into consecutive chunks of the stream incurs some overhead for non-contiguous fragments. Readers that read from a RecvStream in order through an AsyncRead impl for example will be sensitive to peers that send fragments while leavin...

7.5CVSS5.9AI score0.00841EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2026/06/21 12:00 p.m.•47 views

RUSTSEC-2026-0187 Stack overflow in lopdf via deeply nested PDF objects

lopdf::Document::loadmem and the other load entry points parses nested PDF arrays and dictionaries with unbounded recursion. A small crafted PDF whose Catalog contains a deeply nested array /X … , on the order of 10,000 levels exhausts the call stack and aborts the process with SIGABRT. Because...

7.5CVSS5.8AI score
SaveExploits0References5
osv-rustsec
osv-rustsec
•added 2026/03/08 12:00 p.m.•47 views

RUSTSEC-2026-0038 RustSec Advisory

Impact Vulnerability Type: Improper Control of Generation of Code 'Code Injection' CWE-94 / Improper Check for Unusual or Exceptional Conditions CWE-754 / Improper Input Validation CWE-20 / Use of Low-Level Functionality CWE-695 / Improper Privilege Management CWE-269 / External Control of System...

9.4CVSS6AI score0.00203EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2021/07/07 12:00 p.m.•47 views

RUSTSEC-2021-0078 Lenient `hyper` header parsing of `Content-Length` could allow request smuggling

hyper's HTTP header parser accepted, according to RFC 7230, illegal contents inside Content-Length headers. Due to this, upstream HTTP proxies that ignore the header may still forward them along if it chooses to ignore the error. To be vulnerable, hyper must be used as an HTTP/1 server and using ...

5.3CVSS5AI score0.01126EPSS
SaveExploits1References3
osv-rustsec
osv-rustsec
•added 2021/03/03 12:00 p.m.•47 views

RUSTSEC-2021-0036 Intern<T>: Data race allowed on T

Affected versions of this crate unconditionally implements Sync for Intern. This allows users to create data race on T: !Sync, which may lead to undefined behavior for example, memory corruption. The flaw was corrected in commit 2928a87 by adding the trait bound T: Sync in the Sync impl of Intern...

9.8CVSS9.3AI score0.01295EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2021/02/24 12:00 p.m.•47 views

RUSTSEC-2021-0050 swap_index can write out of bounds and return uninitialized memory

swapindex takes an iterator and swaps the items with their corresponding indexes. It reserves capacity and sets the length of the vector based on the .len method of the iterator. If the len returned by the iterator is larger than the actual number of elements yielded, then swapindex creates a...

7.3CVSS7.2AI score0.009EPSS
SaveExploits2References3
osv-rustsec
osv-rustsec
•added 2020/11/10 12:00 p.m.•47 views

RUSTSEC-2020-0138 ReaderResult should be bounded by Sync

Affected versions of this crate implements Sync for ReaderResult with the trait bound T: Send, E: Send. Since matching on the public enum ReaderResult provides access to &T & &E, allowing data race to a non-Sync type T or E. This can result in a memory corruption when multiple threads concurrentl...

8.1CVSS8.2AI score0.00833EPSS
SaveExploits1References3
osv-rustsec
osv-rustsec
•added 2019/08/21 12:00 p.m.•47 views

RUSTSEC-2019-0014 Flaw in interface may drop uninitialized instance of arbitrary types

Affected versions of this crate would call Vec::setlen on an uninitialized vector with user-provided type parameter, in an interface of the HDR image format decoder. They would then also call other code that could panic before initializing all instances. This could run Drop implementations on...

9.8CVSS9.6AI score0.02478EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2018/06/15 12:00 p.m.•47 views

RUSTSEC-2018-0021 Use-after-free with objects returned by `Stream`'s `get_format_info` and `get_context` methods

Affected versions contained a pair of use-after-free issues with the objects returned by the getformatinfo and getcontext methods of Stream objects. These objects were mistakenly being constructed without setting an important flag to prevent destruction of the underlying C objects they reference...

7.5CVSS7.4AI score0.01328EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2026/06/06 12:00 p.m.•46 views

RUSTSEC-2026-0181 DoS vulnerability in HTTP/1.x chunked encoding parser triggered by maliciously crafted chunk lengths

When using the affected versions of the vibeio-http crate, an attacker could craft a malicious HTTP/1.x request with a large chunk length between usize::MAX - 1 and usize::MAX inclusive and send it, causing the server to crash integer overflow panic in debug builds, splitto out of bounds panic in...

5.6AI score
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2026/05/12 12:00 p.m.•46 views

RUSTSEC-2026-0253 Potential use-after-free due to lack of panic safety in `LruCache::pop()`

LruCache::pop in lru was not panic-safe. If the Drop implementation of a stored key panics during pop, self.detach is never called, leaving dangling pointers in the internal doubly-linked list. A subsequent cache operation that triggers eviction can then dereference these dangling pointers: - The...

5.7AI score
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2023/09/21 12:00 p.m.•46 views

RUSTSEC-2023-0063 Denial of service in Quinn servers

Receiving QUIC frames containing a frame with unknown frame type could lead to a panic. Unfortunately this is issue was not found by our fuzzing infrastructure. Thanks to the QUIC Tester research group for reporting this issue...

7.5CVSS7.3AI score0.00937EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2023/09/12 12:00 p.m.•46 views

RUSTSEC-2023-0060 libwebp: OOB write in BuildHuffmanTable

Google and Mozilla have released security advisories for RCE due to heap overflow in libwebp. Google warns the vulnerability has been exploited in the wild. libwebp needs to be updated to 1.3.2 to include a patch for "OOB write in BuildHuffmanTable"...

8.8CVSS6.9AI score0.99979EPSS
SaveExploits9References2
osv-rustsec
osv-rustsec
•added 2020/12/18 12:00 p.m.•46 views

RUSTSEC-2020-0127 SyncRef's clone() and debug() allow data races

Affected versions of this crate unconditionally implement Sync for SyncRef. This definition allows data races if &T is accessible through &SyncRef. SyncRef derives Clone and Debug, and the default implementations of those traits access &T by invoking T::clone & T::fmt. It is possible to create da...

8.1CVSS8AI score0.01059EPSS
SaveExploits1References4
osv-rustsec
osv-rustsec
•added 2020/12/10 12:00 p.m.•46 views

RUSTSEC-2020-0097 Soundness issue with base::Error

base::Error type contains public field named ptr. With this definition, it is possible to create a base::Error with an invalid pointer and trigger memory safety errors such as use-after-free or double-free with safe Rust. The users of xcb crate are advised not to manipulate the field...

5.5CVSS5.5AI score0.00401EPSS
SaveExploits1References3
osv-rustsec
osv-rustsec
•added 2020/08/20 12:00 p.m.•46 views

RUSTSEC-2020-0032 StrcCtx deallocates a memory region that it doesn't own

StrcCtx deallocate a memory region that it doesn't own when StrcCtx is created without using StrcCtx::new. This can introduce memory safety issues such as double-free and use-after-free to client programs...

9.8CVSS9.6AI score0.01534EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2019/08/25 12:00 p.m.•46 views

RUSTSEC-2019-0019 HMAC-BLAKE2 algorithms compute incorrect results

When used in conjunction with the Hash-based Message Authentication Code HMAC, the BLAKE2b and BLAKE2s implementations in blake2 crate versions prior to v0.8.1 used an incorrect block size 32-bytes instead of 64-bytes for BLAKE2s, and 64-bytes instead of 128-bytes for BLAKE2b, causing them to...

9.8CVSS9.6AI score0.00933EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2019/07/19 12:00 p.m.•46 views

RUSTSEC-2019-0012 Memory corruption in SmallVec::grow()

Attempting to call grow on a spilled SmallVec with a value less than the current capacity causes corruption of memory allocator data structures. An attacker that controls the value passed to grow may exploit this flaw to obtain memory contents or gain remote code execution. Credits to @ehuss for...

9.8CVSS8.8AI score0.02144EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2019/05/21 12:00 p.m.•46 views

RUSTSEC-2019-0015 Flaw in generativity allows out-of-bounds access

Affected versions of this crate did not properly implement the generativity, because the invariant lifetimes were not necessarily dropped. This allows an attacker to mix up two arenas, using indices created from one arena with another one. This might lead to an out-of-bounds read or write access...

9.8CVSS9.4AI score0.01855EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2019/03/10 12:00 p.m.•46 views

RUSTSEC-2019-0038 Fix for UB in failure to catch panics crossing FFI boundaries

Affected versions of this crate failed to catch panics crossing FFI boundaries via callbacks, which is a form of UB. This flaw was corrected by this commit1 which was included in version 2.6.0. 1: https://github.com/jnqnfe/pulse-binding-rust/commit/7fd282aef7787577c385aed88cb25d004b85f494...

7.5CVSS7.3AI score0.01177EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2018/12/05 12:00 p.m.•46 views

RUSTSEC-2018-0008 Bug in SliceDeque::move_head_unchecked allows read of corrupted memory

Affected versions of this crate did not properly update the head and tail of the deque when inserting and removing elements from the front if, before insertion or removal, the tail of the deque was in the mirrored memory region, and if, after insertion or removal, the head of the deque is exactly...

9.8CVSS9.2AI score0.01611EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2018/10/09 12:00 p.m.•46 views

RUSTSEC-2018-0007 Stack overflow when parsing malicious DNS packet

There's a stack overflow leading to a crash when Trust-DNS's parses a malicious DNS packet. Affected versions of this crate did not properly handle parsing of DNS message compression RFC1035 section 4.1.4. The parser could be tricked into infinite loop when a compression offset pointed back to th...

7.5CVSS7.5AI score0.01411EPSS
SaveExploits0References2
osv-rustsec
osv-rustsec
•added 2017/01/23 12:00 p.m.•46 views

RUSTSEC-2017-0002 headers containing newline characters can split messages

Serializing of headers to the socket did not filter the values for newline bytes \r or \n, which allowed for header values to split a request or response. People would not likely include newlines in the headers in their own applications, so the way for most people to exploit this is if an...

5.3CVSS5.1AI score0.01033EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2026/08/20 12:00 p.m.•45 views

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 ...

5.6AI score
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2026/07/21 12:00 p.m.•45 views

RUSTSEC-2026-0213 XSS in ammonia via SVG `animate` and `set` animation tags

The following SVG will produce a link with a javascript scheme. If the user clicks this link, they will run it. xml Click set Ammonia did not apply attribute filters based on attributeName, so the contents of the to, from, and values tags were not sanitized as URLs. Applications that do not...

5.4CVSS5.9AI score0.00355EPSS
SaveExploits0References2
osv-rustsec
osv-rustsec
•added 2026/06/10 12:00 p.m.•45 views

RUSTSEC-2026-0175 `onering` 1.4.1 was removed from crates.io for malicious code

A new version of the onering crate was published with code that attempted to exfiltrate both metadata and code from the project it was included within. One malicious version was published on 2026-06-10, approximately six hours before removal. This crate has no dependencies on crates.io, and there...

5.6AI score
SaveExploits0References2
osv-rustsec
osv-rustsec
•added 2026/06/04 12:00 p.m.•45 views

RUSTSEC-2026-0160 `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. The PQClean project is being archived in or after July 2026 see PQClean/PQClean604, after which no further security patches or bug fixes will be applied to the upstream implementations. As a result,...

5.8AI score
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2026/06/02 12:00 p.m.•45 views

RUSTSEC-2026-0155 `exploration` was removed from crates.io for malicious code

A method within the exploration crate attempted to download and execute a payload from a remote site. The malicious crate had 1 version published on 2026-06-02, approximately 1 hour before removal, and had no evidence of actual usage. This crate had no dependencies on crates.io. Thanks to Kirill...

5.9AI score
SaveExploits0References2
osv-rustsec
osv-rustsec
•added 2024/07/18 12:00 p.m.•45 views

RUSTSEC-2024-0356 `UserIdentity::is_verified` not checking verification status of own user identity while performing the check

The UserIdentity::isverified method in the matrix-sdk-crypto crate before version 0.7.2 doesn't take into account the verification status of the user's own identity while performing the check and may as a result return a value contrary to what is implied by its name and documentation. Impact If t...

5.4CVSS5.3AI score0.0028EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2024/06/03 12:00 p.m.•45 views

RUSTSEC-2024-0343 Reduced entropy due to inadequate character set usage

Description Affected versions of the nano-id crate incorrectly generated IDs using a reduced character set in the nanoid::base62 and nanoid::base58 functions. Specifically, the base62 function used a character set of 32 symbols instead of the intended 62 symbols, and the base58 function used a...

9.4CVSS9.4AI score0.00754EPSS
SaveExploits1References2
osv-rustsec
osv-rustsec
•added 2023/09/05 12:00 p.m.•45 views

RUSTSEC-2023-0091 Miscompilation of wasm `i64x2.shr_s` instruction with constant input on x86\_64

This is an entry in the RustSec database for the Wasmtime security advisory located at https://github.com/bytecodealliance/wasmtime/security/advisories/GHSA-gw5p-q8mj-p7gh. For more information see the GitHub-hosted security advisory...

2.2CVSS6.6AI score0.00672EPSS
SaveExploits0References3
Total number of security vulnerabilities1310