Lucene search
+L
RustsecMost viewed

1167 matches found

RustSec
RustSec
•added 2020/07/04 12:0 p.m.•25 views

Ozone contains several memory safety issues

Ozone contains several memory safety issues including out-of-bound access and dropping of uninitialized memory...

3.1AI score
SaveExploits0
RustSec
RustSec
•added 2020/06/26 12:0 p.m.•25 views

Undefined Behavior in bounded channel

The affected version of this crate's the bounded channel incorrectly assumes that Vec::fromiter has allocated capacity that same as the number of iterator elements. Vec::fromiter does not actually guarantee that and may allocate extra memory. The destructor of the bounded channel reconstructs Vec...

9.8CVSS2AI score0.02776EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2020/01/24 12:0 p.m.•25 views

sigstack allocation bug can cause memory corruption or leak

An embedding using affected versions of lucet-runtime configured to use non-default Wasm globals sizes of more than 4KiB, or compiled in debug mode without optimizations, could leak data from the signal handler stack to guest programs. This can potentially cause data from the embedding host to le...

9.1CVSS1.1AI score0.01505EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2019/11/16 12:0 p.m.•25 views

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

2.1AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2019/09/06 12:0 p.m.•25 views

fix unsound APIs that could lead to UB

Affected versions of this crate API could use uninitialized memory with some APIs in special cases, like use the API in none generator context. This could lead to UB. The flaw was corrected by This patch fixes all those issues above...

7.8CVSS2.6AI score0.01635EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2019/09/01 12:0 p.m.•25 views

Panic during initialization of Lazy<T> might trigger undefined behavior

If during the first dereference of Lazy the initialization function panics, subsequent dereferences will execute std::hints::unreachableunchecked. Applications with panic = "abort" are not affected, as there will be no subsequent dereferences...

7.5CVSS4.1AI score0.01583EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2019/07/16 12:0 p.m.•25 views

Flaw in offset_of and span_of causes SIGILL, drops uninitialized memory of arbitrary type on panic in client code

Affected versions of this crate caused traps and/or memory unsafety by zero-initializing references. They also could lead to uninitialized memory being dropped if the field for which the offset is requested was behind a deref coercion, and that deref coercion caused a panic. The flaw was correcte...

7.5CVSS3.6AI score0.01751EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2019/06/15 12:0 p.m.•25 views

Buffer overflow and format vulnerabilities in functions exposed without unsafe

ncurses exposes functions from the ncurses library which: - Pass buffers without length to C functions that may write an arbitrary amount of data, leading to a buffer overflow. instr, mvwinstr, etc - Passes rust &str to strings expecting C format arguments, allowing hostile input to execute a...

9.8CVSS4.7AI score0.01615EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2019/06/08 12:0 p.m.•25 views

Out of Memory in stream::read_raw_bytes_into()

Affected versions of this crate called Vec::reserve on user-supplied input. This allows an attacker to cause an Out of Memory condition while calling the vulnerable method on untrusted data...

7.5CVSS5.6AI score0.03764EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2018/09/17 12:0 p.m.•25 views

Uncontrolled recursion leads to abort in deserialization

Affected versions of this crate did not prevent deep recursion while deserializing data structures. This allows an attacker to make a YAML file with deeply nested structures that causes an abort while deserializing it. The flaw was corrected by checking the recursion depth. Note: clap 2.33 is not...

7.5CVSS3.9AI score0.01411EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2017/01/23 12:0 p.m.•25 views

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.3CVSS3AI score0.01033EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/04/14 12:0 p.m.•24 views

core2 is unmaintained, all versions yanked

The maintainer decided stop maintaining crate and yanked all published versions. Potential alternatives: - embedded-io solves the same general problem - no-std-io2 is a maintained fork...

5.2AI score
SaveExploits0
RustSec
RustSec
•added 2026/01/25 12:0 p.m.•24 views

Potential use-after-free in `oneshot` when used asynchronously

There is a race condition that can lead to a use-after-free if a oneshot::Receiver is polled but then dropped instead of polled to completion. This could happen if the receiver future was cancelled while receiving, for example by being wrapped in a timeout future or similar. When the Receiver is...

5.5AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2025/02/10 12:0 p.m.•24 views

totally-safe-transmute allows transmuting any type to any other type in safe Rust

This crate is a toy and should never be used. It showcases a known soundness issue https://github.com/rust-lang/rust/issues/32670 that will never get fixed. In short, Linux provides a file called /proc/self/mem which can be used by a program to modify its own memory. This library modifies an enum...

7AI score
SaveExploits0
RustSec
RustSec
•added 2022/07/22 12:0 p.m.•24 views

Slack OAuth Secrets leak in debug logs

Debug log formatting made it possible to leak OAuth secrets into debug logs. The patched version has introduced more strict checks to avoid this...

7.5CVSS2.9AI score0.00852EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2022/02/01 12:0 p.m.•24 views

json is unmaintained

Last release was almost 3 years ago. The maintainer is unresponsive with outstanding issues. One of the outstanding issues include a possible soundness issue. Possible Alternatives The below list has not been vetted in any way and may or may not contain alternatives; - jzon maintained fork of jso...

7.2AI score
SaveExploits0
RustSec
RustSec
•added 2021/08/14 12:0 p.m.•24 views

vec-const attempts to construct a Vec from a pointer to a const slice

Affected versions of this crate claimed to construct a const Vec with nonzero length and capacity, but that cannot be done because such a Vec requires a pointer from an allocator. The implementation was later changed to just construct a std::borrow::Cow...

7.5CVSS3.7AI score0.01053EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2021/07/25 12:0 p.m.•24 views

Miner fails to get block template when a cell used as a cell dep has been destroyed.

Impact The RPC getblocktemplate fails when a cell has been used as a cell dep and an input in the different transactions. Say cell C is used as a dep group in the transaction A, and is destroyed in the transaction B. The node adds transaction A first, then B into the transaction pool. They are bo...

9.8CVSS0.6AI score0.01191EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2021/06/01 12:0 p.m.•24 views

`mopa` is technically unsound

The mopa crate redefines the deprecated TraitObject struct from core::raw like so: rust reprC deriveCopy, Clone dochidden pub struct TraitObject pub data: mut , pub vtable: mut , This is done to then transmute a reference to a trait object &dyn Trait for any trait Trait into this struct and...

9.8CVSS0.4AI score0.01646EPSS
SaveExploits0
RustSec
RustSec
•added 2021/01/07 12:0 p.m.•24 views

Loading a bgzip block can write out of bounds if size overflows.

Affected versions of bam set the length of an internal buffer using self.compressed.setlenblocksize - HEADERSIZE - MINEXTRASIZE and then wrote into it. While blocksize was constrained to a proper maximum, when it was too small the subtraction could overflow negatively to a large number past the...

9.8CVSS2.4AI score0.01167EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2021/01/06 12:0 p.m.•24 views

`Sectors::get` accesses unclaimed/uninitialized memory

Affected versions of this crate arbitrarily calls Vec::setlen to increase length of a vector without claiming more memory for the vector. Affected versions of this crate also calls user-provided Read on the uninitialized memory of the vector that was extended with Vec::setlen. This can overwrite...

9.8CVSS3AI score0.01728EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2021/01/05 12:0 p.m.•24 views

`Read` on uninitialized memory may cause UB (fn preamble_skipcount())

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

9.8CVSS3.6AI score0.01191EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2021/01/04 12:0 p.m.•24 views

EventList's From<EventList> conversions can double drop on panic.

Affected versions of this crate read from a container using ptr::read in From, and then call a user specified Into function. This issue can result in a double-free if the user provided function panics...

7.5CVSS2.9AI score0.01327EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2021/01/04 12:0 p.m.•24 views

XSS in mdBook's search page

This is a cross-post of the official security advisoryml. The official post contains a signed version with our PGP key, as well. ml: https://groups.google.com/g/rustlang-security-announcements/c/3-sO6of29O0 The Rust Security Response Working Group was recently notified of a security issue affecti...

8.2CVSS3.1AI score0.01254EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2021/01/02 12:0 p.m.•24 views

Reading uninitialized memory can cause UB (`Deserializer::read_vec`)

Deserializer::readvec created an uninitialized buffer and passes it to a user-provided Read implementation Deserializer.reader.readexact. Passing an uninitialized buffer to an arbitrary Read implementation is currently defined as undefined behavior in Rust. Official documentation for the Read tra...

9.8CVSS2AI score0.01688EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2020/11/28 12:0 p.m.•24 views

Reference counting error in `From<Py<T>>`

A bug in From would lead to an extra reference count decrement, often leading to use-after-free issues...

5.5CVSS2.1AI score0.00388EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2020/11/17 12:0 p.m.•24 views

ReadTicket and WriteTicket should only be sendable when T is Send

Affected versions of this crate unconditionally implemented Send for ReadTicket & WriteTicket. This allows to send non-Send T to other threads. This can allows creating data races by cloning types with internal mutability and sending them to other threads as T of ReadTicket/WriteTicket. Such data...

8.1CVSS2.9AI score0.00766EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2020/11/16 12:0 p.m.•24 views

Generators can cause data races if non-Send types are used in their generator functions

The Generator type is an iterable which uses a generator function that yields values. In affected versions of the crate, the provided function yielding values had no Send bounds despite the Generator itself implementing Send. The generator function lacking a Send bound means that types that are...

5.9CVSS3AI score0.01094EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2020/11/15 12:0 p.m.•24 views

SyncChannel<T> can move 'T: !Send' to other threads

Affected versions of this crate unconditionally implement Send/Sync for SyncChannel. SyncChannel doesn't provide access to &T but merely serves as a channel that consumes and returns owned T. Users can create UB in safe Rust by sending T: !Send to other threads with SyncChannel::send/recv APIs...

8.1CVSS3.9AI score0.00766EPSS
SaveExploits0
RustSec
RustSec
•added 2020/11/02 12:0 p.m.•24 views

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.5CVSS2.3AI score0.01233EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2020/09/24 12:0 p.m.•24 views

Missing check in ArrayVec leads to out-of-bounds write.

ArrayVec::insert allows insertion of an element into the array object into the specified index. Due to a missing check on the upperbound of this index, it is possible to write out of bounds...

10CVSS3.2AI score0.01844EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2020/09/03 12:0 p.m.•24 views

`index()` allows out-of-bound read and `remove()` has off-by-one error

Slab::index does not perform the boundary checking, which leads to out-of-bound read access. Slab::remove copies an element from an invalid address due to off-by-one error, resulting in memory leakage and uninitialized memory drop...

9.1CVSS3.3AI score0.0151EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2020/04/09 12:0 p.m.•24 views

arr! macro erases lifetimes

Affected versions of this crate allowed unsoundly extending lifetimes using arr! macro. This may result in a variety of memory corruption scenarios, most likely use-after-free...

7.5CVSS4.6AI score0.01243EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2020/01/30 12:0 p.m.•24 views

Use-after-free in Framed due to lack of pinning

Affected versions of this crate did not require the buffer wrapped in Framed to be pinned, but treated it as if it had a fixed location in memory. This may result in a use-after-free. The flaw was corrected by making the affected functions accept Pin instead of &mut self...

9.8CVSS4.2AI score0.01629EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2020/01/08 12:0 p.m.•24 views

bespoke Cell implementation allows obtaining several mutable references to the same data

The custom implementation of a Cell primitive in the affected versions of this crate does not keep track of mutable references to the underlying data. This allows obtaining several mutable references to the same object which may result in arbitrary memory corruption, most likely use-after-free. T...

9.1CVSS3.5AI score0.0141EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2020/01/06 12:0 p.m.•24 views

Stack overflow when resolving additional records from MX or SRV null targets

There's a stack overflow leading to a crash and potential DOS when processing additional records for return of MX or SRV record types from the server. This is only possible when a zone is configured with a null target for MX or SRV records, i.e. '.'. Example effected zone record: text no-service...

7.5CVSS1.8AI score0.01439EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2019/10/20 12:0 p.m.•24 views

Unsound `impl Follow for bool`

The implementation of impl Follow for bool allows to reinterpret arbitrary bytes as a bool. In Rust bool has stringent requirements for its in-memory representation. Use of this function allows to violate these requirements and invoke undefined behaviour in safe code...

9.8CVSS3.4AI score0.00575EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2019/08/21 12:0 p.m.•24 views

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.8CVSS3.9AI score0.02478EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2019/04/19 12:0 p.m.•24 views

Unaligned memory access

Affected versions of this crate violated alignment when casting byte slices to integer slices, resulting in undefined behavior. The flaw was corrected by Ralf Jung and Diggory Hardy...

9.8CVSS3.8AI score0.01558EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2018/12/05 12:0 p.m.•24 views

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.8CVSS3.4AI score0.01611EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/07/11 12:0 p.m.•23 views

`rustybuzz` is unmaintained

The current maintainer of rustybuzz has stated that the crate is unmaintained and will not receive further fixes or updates see the referenced issue. Alternatives - harfrust, an actively maintained and updated alternative which is part of the Harfbuzz project...

6.1AI score
SaveExploits0
RustSec
RustSec
•added 2026/06/05 12:0 p.m.•23 views

Possible use after free when deserializing a SQLite database via `SqliteConnection::deserialize_readonly_database`

Diesel allows loading a SQLite database from a byte buffer, represented as &u8, at runtime via the SqliteConnection::deserializereadonlydatabase function. In previous versions of Diesel, this buffer was passed directly to libsqlite3. Since libsqlite3 requires the buffer to remain alive for as lon...

5.7AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/06/04 12:0 p.m.•23 views

`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
SaveExploits0
RustSec
RustSec
•added 2026/05/08 12:0 p.m.•23 views

`InterfaceAccount` allows account substitution between unexpected types

Affected versions of anchor-lang allowed InterfaceAccount to accept accounts with an unexpected Anchor discriminator. A change to InterfaceAccount caused checked deserialization to be bypassed for this account wrapper, so validation proved only that the account owner matched one of the accepted...

5.8AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/03/14 12:0 p.m.•23 views

`tracing-ethers` was removed from crates.io due to malicious code

The tracing-ethers crate attempted to exfiltrate ssh keys to an app hosted on vercel.app The malicious crate had 9 version published on 2026-03-09 approximately 5 days before removal and had no evidence of actual downloads. There were no crates depending on this crate on crates.io. Thanks to the...

5.8AI score
SaveExploits0
RustSec
RustSec
•added 2023/06/20 12:0 p.m.•23 views

`openssl` `X509VerifyParamRef::set_host` buffer over-read

When this function was passed an empty string, openssl would attempt to call strlen on it, reading arbitrary memory until it reached a NUL byte...

9.1CVSS10AI score0.00331EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2022/11/30 12:0 p.m.•23 views

Unsound API in `secp256k1` allows use-after-free and invalid deallocation from safe code

Because of incorrect bounds on method Secp256k1::preallocatedgennew it was possible to cause use-after-free from safe consumer code. It was also possible to "free" memory not allocated by the appropriate allocator. The method takes a place for storing the context as a mutable reference and return...

0.2AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2022/10/24 12:0 p.m.•23 views

matrix-sdk 0.6.0 logs access tokens

When sending Matrix requests using an affected version of matrix-sdk in an application that writes logs using tracing-subscriber in a way that includes fields of tracing spans such as tracingsubscribers default text output from the fmt module, these logs will contain the user's access token...

4.3AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2022/09/19 12:0 p.m.•23 views

`tauri` filesystem scope partial bypass

A bug identified in this issue allows a partial filesystem scope bypass if glob characters are used within file dialog or drag-and-drop functionalities. This PR fixes the issue by escaping glob characters...

4.7CVSS4.7AI score0.00421EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2022/08/31 12:0 p.m.•23 views

No default limit put on request bodies

::fromrequest would not, by default, set a limit for the size of the request body. That meant if a malicious peer would send a very large or infinite body your server might run out of memory and crash. This also applies to these extractors which used Bytes::fromrequest internally: -...

7.5CVSS1.2AI score0.0085EPSS
SaveExploits1Affected Software1
Total number of security vulnerabilities1167