Lucene search
+L
RustsecMost viewed

1167 matches found

RustSec
RustSec
added 2020/11/11 12:0 p.m.22 views

Argument injection in sendmail transport

Affected versions of lettre allowed argument injection to the sendmail command. It was possible, using forged to addresses, to pass arbitrary arguments to the sendmail executable. Depending on the implementation original sendmail, postfix, exim, etc. it could be possible in some cases to write...

5.3CVSS3.6AI score0.01503EPSS
SaveExploits0Affected Software1
RustSec
RustSec
added 2020/11/10 12:0 p.m.22 views

`Shared` can cause a data race

Shared data structure in model crate implements Send and Sync traits regardless of the inner type. This allows safe Rust code to trigger a data race, which is undefined behavior in Rust. Users are advised to treat Shared as an unsafe type. It should not be used outside of the testing context, and...

8.1CVSS1.4AI score0.01098EPSS
SaveExploits1
RustSec
RustSec
added 2020/11/07 12:0 p.m.22 views

`net2` invalidly assumes the memory layout of std::net::SocketAddr

The net2 crate has assumed std::net::SocketAddrV4 and std::net::SocketAddrV6 have the same memory layout as the system C representation sockaddr. It has simply casted the pointers to convert the socket addresses to the system representation. The standard library does not say anything about the...

2.7AI score
SaveExploits0Affected Software1
RustSec
RustSec
added 2020/10/28 12:0 p.m.22 views

beef::Cow lacks a Sync bound on its Send trait allowing for data races

Affected versions of this crate did not have a T: Sync bound in the Send impl for Cow. This allows users to create data races by making Cow contain types that are Send && !Sync like Cell or RefCell. Such data races can lead to memory corruption. The flaw was corrected in commit d1c7658 by adding...

8.1CVSS3.3AI score0.00766EPSS
SaveExploits0Affected Software1
RustSec
RustSec
added 2020/09/26 12:0 p.m.22 views

array_queue pop_back() may cause a use-after-free

arrayqueue implements a circular queue that wraps around an array. However, it fails to properly index into the array in the popback function allowing the reading of previously dropped or uninitialized memory...

5.5CVSS3.3AI score0.00425EPSS
SaveExploits1Affected Software1
RustSec
RustSec
added 2020/06/02 12:0 p.m.22 views

Improper Synchronization and Race Condition in vm-memory

rust-vmm vm-memory before 0.1.1 and 0.2.x before 0.2.1 allows attackers to cause a denial of service loss of IP networking because readobj and writeobj do not properly access memory. This affects aarch64 with musl or glibc and x8664 with musl...

7.5CVSS5.7AI score0.01599EPSS
SaveExploits0Affected Software1
RustSec
RustSec
added 2020/05/31 12:0 p.m.22 views

Double free when calling `sys_info::disk_info` from multiple threads

Affected versions of sys-info use a static, global, list to store temporary disk information while running. The function that cleans up this list, DFCleanup, assumes a single threaded environment and will try to free the same memory twice in a multithreaded environment. This results in consistent...

9.8CVSS1.8AI score0.0123EPSS
SaveExploits0Affected Software1
RustSec
RustSec
added 2020/05/28 12:0 p.m.22 views

Use after free in ArcIntern::drop

ArcIntern::drop has a race condition where it can release memory which is about to get another user. The new user will get a reference to freed memory. This was fixed by serializing access to an interned object while it is being deallocated. Versions prior to 0.3.12 used stronger locking which...

8.1CVSS5.1AI score0.00957EPSS
SaveExploits1Affected Software1
RustSec
RustSec
added 2020/03/27 12:0 p.m.22 views

use-after or double free of allocated memory

Conversion of BitVec to BitBox did not account for allocation movement. The flaw was corrected by using the address after resizing, rather than the original base address...

9.8CVSS3.5AI score0.01629EPSS
SaveExploits1Affected Software1
RustSec
RustSec
added 2020/01/24 12:0 p.m.22 views

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

Affected versions of this crate did not require the buffer wrapped in BodyStream 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 trait MessageBody require Unpin and making pollnext function accept Pin...

7.5CVSS4AI score0.01406EPSS
SaveExploits1Affected Software1
RustSec
RustSec
added 2019/09/14 12:0 p.m.22 views

Stream callback function is not unwind safe

Affected versions of this crate is not panic safe within callback functions streamcallback and streamfinishedcallback. The call to user-provided closure might panic before a mem::forget call, which then causes a use after free that grants attacker to control the callback function pointer. This...

9.8CVSS5.3AI score0.02506EPSS
SaveExploits1Affected Software1
RustSec
RustSec
added 2019/08/25 12:0 p.m.22 views

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.8CVSS2.9AI score0.00933EPSS
SaveExploits0Affected Software1
RustSec
RustSec
added 2019/06/24 12:0 p.m.22 views

Flaw in string parsing can lead to crashes due to invalid memory access.

The affected version of this crate did not guard against accessing memory beyond the range of its input data. A pointer cast to read the data into a 256-bit register could lead to a segmentation fault when the end plus the 32 bytes 256 bit read would overlap into the next page during string...

7.5CVSS2.8AI score0.01398EPSS
SaveExploits0Affected Software1
RustSec
RustSec
added 2019/06/13 12:0 p.m.22 views

Processing of maliciously crafted length fields causes memory allocation SIGABRTs

Affected versions of this crate tried to preallocate a vector for an arbitrary amount of bytes announced by the ASN.1-DER length field without further checks. This allows an attacker to trigger a SIGABRT by creating length fields that announce more bytes than the allocator can provide. The flaw w...

7.5CVSS4AI score0.01382EPSS
SaveExploits0Affected Software1
RustSec
RustSec
added 2019/05/07 12:0 p.m.22 views

Bug in SliceDeque::move_head_unchecked corrupts its memory

Affected versions of this crate entered a corrupted state if mem::sizeof:: % allocationgranularity != 0 and a specific allocation pattern was used: sufficiently shifting the deque elements over the mirrored page boundary. This allows an attacker that controls controls both element insertion and...

9.8CVSS2.4AI score0.01611EPSS
SaveExploits0Affected Software1
RustSec
RustSec
added 2019/04/27 12:0 p.m.22 views

Uncontrolled recursion leads to abort in HTML serialization

Affected versions of this crate did use recursion for serialization of HTML DOM trees. This allows an attacker to cause abort due to stack overflow by providing a pathologically nested input. The flaw was corrected by serializing the DOM tree iteratively instead...

7.5CVSS3.8AI score0.01411EPSS
SaveExploits0Affected Software1
RustSec
RustSec
added 2018/12/22 12:0 p.m.22 views

Possible use-after-free with `proplist::Iterator`

Affected versions contained a possible use-after-free issue with property list iteration due to a lack of a lifetime constraint tying the lifetime of a proplist::Iterator to the Proplist object for which it was created. This made it possible for users, without experiencing a compiler error/warnin...

6.5CVSS3.3AI score0.00988EPSS
SaveExploits1Affected Software1
RustSec
RustSec
added 2018/07/19 12:0 p.m.22 views

Possible double free during unwinding in SmallVec::insert_many

If an iterator passed to SmallVec::insertmany panicked in Iterator::next, destructors were run during unwinding while the vector was in an inconsistent state, possibly causing a double free a destructor running on two copies of the same value. This is fixed in smallvec 0.6.3 by ensuring that the...

9.8CVSS8.4AI score0.01813EPSS
SaveExploits0Affected Software1
RustSec
RustSec
added 2017/04/17 12:0 p.m.22 views

lz4-compress is unmaintained

According to the developers this crate is no longer maintained. The suggested alternative is lz4-compression, a maintained fork of lz4-compress. See also lz-fear which is compatible with the reference LZ4 implementation in C, but not with lz4-compress...

3AI score
SaveExploits0
RustSec
RustSec
added 2026/06/29 12:0 p.m.21 views

Quadratic run time when checking a start tag for duplicate attribute names

BytesStart::attributes returns an Attributes iterator which, by default withcheckstrue, rejects a start tag that repeats an attribute name. For each attribute yielded, the iterator compared the new name against every name seen so far in the same tag using a linear scan, so a start tag with N...

5.9AI score
SaveExploits0Affected Software1
RustSec
RustSec
added 2026/06/21 12:0 p.m.21 views

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

5.8AI score
SaveExploits0Affected Software1
RustSec
RustSec
added 2026/06/11 12:0 p.m.21 views

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
SaveExploits0Affected Software1
RustSec
RustSec
added 2026/05/29 12:0 p.m.21 views

Out-of-bounds writes due to integer overflow in jxl-grid on 32-bit platforms

On 32-bit platforms, decoding a crafted image may lead to out-of-bounds writes due to integer overflow in length calculation. This could allow arbitrary code execution. Details & PoC The test listed below fail under miri with command cargo +nightly miri test --release -p jxl-grid Or you can use...

6.2AI score
SaveExploits0Affected Software1
RustSec
RustSec
added 2026/05/21 12:0 p.m.21 views

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 AVX2 platforms that use the...

5.7AI score
SaveExploits0Affected Software1
RustSec
RustSec
added 2026/04/24 12:0 p.m.21 views

Possible UTF-8 corruption in Diesels SQLite backend

Diesel uses the sqlite3valuetext function to receive strings from SQLite while deserializing query results. We misinterpreted the corresponding SQLite documentation that this function always returns a UTF-8 encoded string values as const cchar. Based on that we used str::fromutf8unchecked to...

5.9AI score
SaveExploits0Affected Software1
RustSec
RustSec
added 2026/04/24 12:0 p.m.21 views

Unsound access to padding bytes while serializing date/time values using the Mysql backend

Diesel relies on libmysqlclient for interacting with Mysql compatible databases. This library requires to provide date/time values according to the byte layout of their MYSQLTIME type. Diesel replicated this type as reprC struct, populated all the fields of this struct and then casted this value ...

5.8AI score
SaveExploits0Affected Software1
RustSec
RustSec
added 2026/02/20 12:0 p.m.21 views

`polymarkets-rs-clob-client` was removed from crates.io for malicious code

This is part of an ongoing campaign to attempt to typosquat crates in the polymarket-client-sdk ecosystem to exfiltrate user credentials. The malicious crate had 1 version published on 2026-02-19 approximately 20 hours before removal and had no evidence of actual downloads. There were no crates...

5.5AI score
SaveExploits0
RustSec
RustSec
added 2025/09/11 12:0 p.m.21 views

serde_yml crate is unsound and unmaintained

Using serdeyml::ser::Serializer.emitter can cause a segmentation fault, which is unsound. The GitHub project for serdeyml was archived after unsoundness issues were raised. If you rely on this crate, it is highly recommended switching to a maintained alternative. Recommended alternatives -...

7AI score
SaveExploits0
RustSec
RustSec
added 2023/11/20 12:0 p.m.21 views

`tauri-winrt-notifications` was removed from crates.io for malicious code

This crate was part of a typosquatting malware cluster published by the user gabielle55131 to run an arbitrary malware payload on Windows hosts. This advisory is to retrospectively document this attempted attack. The version information and download records of the malicious crate are no longer...

5.9AI score
SaveExploits0
RustSec
RustSec
added 2023/03/24 12:0 p.m.21 views

TLS certificate common name validation bypass

The NATS official Rust clients are vulnerable to MitM when using TLS. The common name of the server's TLS certificate is validated against the hostname provided by the server's plaintext INFO message during the initial connection setup phase. A MitM proxy can tamper with the host field's value by...

6.5AI score
SaveExploits0Affected Software1
RustSec
RustSec
added 2023/03/04 12:0 p.m.21 views

`maligned::align_first` causes incorrect deallocation

maligned::alignfirst manually allocates with an alignment larger than T, and then uses Vec::fromrawparts on that allocation to get a Vec. GlobalAlloc::dealloc requires that the layout argument must be the same layout that was used to allocate that block of memory. When deallocating, Box and Vec m...

2.2AI score
SaveExploits0
RustSec
RustSec
added 2023/02/24 12:0 p.m.21 views

Race Condition Enabling Link Following and Time-of-check Time-of-use (TOCTOU)

The removedirall crate is a Rust library that offers additional features over the Rust standard library fs::removedirall function. It was possible to trick a privileged process doing a recursive delete in an attacker controlled directory into deleting privileged files, on all operating systems. F...

0.6AI score
SaveExploits0Affected Software1
RustSec
RustSec
added 2023/02/13 12:0 p.m.21 views

Miscompilation in cortex-m-rt 0.7.1 and 0.7.2

Version 0.7.1 of the cortex-m-rt crate introduced a regression causing the stack to NOT be eight-byte aligned prior to calling main or any other specified entrypoint, violating the stack ABI of AAPCS32, the default ABI used by all Cortex-M targets. This regression is also present in version 0.7.2...

3AI score
SaveExploits0Affected Software1
RustSec
RustSec
added 2022/11/10 12:0 p.m.21 views

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.6CVSS1.6AI score0.00657EPSS
SaveExploits0Affected Software1
RustSec
RustSec
added 2022/10/30 12:0 p.m.21 views

Denial of Service from unchecked request length

Prior to version 0.4.2, conduit-hyper did not check any limit on a request's length before calling hyper::body::tobytes. An attacker could send a malicious request with an abnormally large Content-Length, which could lead to a panic if memory allocation failed for that request. In version 0.4.2,...

7.5CVSS3.3AI score0.00689EPSS
SaveExploits0Affected Software1
RustSec
RustSec
added 2022/04/13 12:0 p.m.21 views

`rmp-serde` `Raw` and `RawRef` unsound

It was found that Raw::fromutf8 expects valid UTF-8. If invalid UTF-8 is received it can cause the process to crash...

6.7AI score
SaveExploits0Affected Software1
RustSec
RustSec
added 2022/02/05 12:0 p.m.21 views

Unsoundness of AtomicCell<*64> arithmetics on 32-bit targets that support Atomic*64

Impact Affected versions of this crate incorrectly assumed that the alignment of i,u64 was always the same as AtomicI,U64. However, the alignment of i,u64 on a 32-bit target can be smaller than AtomicI,U64. This can cause the following problems: - Unaligned memory accesses - Data race Crates usin...

8.1CVSS7.4AI score0.01239EPSS
SaveExploits1Affected Software1
RustSec
RustSec
added 2021/07/08 12:0 p.m.21 views

Flaw in `FieldVar::mul_by_inverse` allows unsound R1CS constraint systems

Versions 0.2.0 to 0.3.0 of ark-r1cs-std did not enforce any constraints in the FieldVar::mulbyinverse method, allowing a malicious prover to produce an unsound proof that passes all verifier checks. This method was used primarily in scalar multiplication for shortweierstrass::ProjectiveVar. This...

9.8CVSS4.8AI score0.01275EPSS
SaveExploits1Affected Software1
RustSec
RustSec
added 2021/07/07 12:0 p.m.21 views

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.3CVSS0.3AI score0.00886EPSS
SaveExploits1Affected Software1
RustSec
RustSec
added 2021/05/27 12:0 p.m.21 views

Permissions bypass in pleaser

pleaseedit in pleaser before 0.4 uses predictable temporary filenames in /tmp and the target directory. This allows a local attacker to gain full root privileges by staging a symlink attack...

7.8CVSS3.9AI score0.00468EPSS
SaveExploits1Affected Software1
RustSec
RustSec
added 2021/05/07 12:0 p.m.21 views

anymap is unmaintained.

The anymap crate does not appear to be maintained, and the most recent published version 0.12.1 includes a soundness bug. This has been fixed a few years ago, but was never released...

9.8CVSS3.3AI score0.01441EPSS
SaveExploits1
RustSec
RustSec
added 2021/03/07 12:0 p.m.21 views

'merge_sort::merge()' crashes with double-free for `T: Drop`

In the affected versions of this crate, mergesort::merge wildly duplicates and drops ownership of T without guarding against double-free. Due to such implementation, simply invoking mergesort::merge on Vec can cause double free bugs...

7.5CVSS3.4AI score0.00961EPSS
SaveExploits0
RustSec
RustSec
added 2021/01/12 12:0 p.m.21 views

panic safety: double drop may happen within `util::{mutate, mutate2}`

Upon panic in a user-provided function f, fn mutate & fn mutate2 drops twice a same object. Affected versions of this crate did not guard against double drop while temporarily duplicating an object's ownership with ptr::read. Dropping a same object can result in memory corruption. The flaw was...

9.8CVSS1.1AI score0.01552EPSS
SaveExploits1Affected Software1
RustSec
RustSec
added 2021/01/07 12:0 p.m.21 views

Reading on uninitialized memory may cause UB ( `util::read_spv()` )

Affected versions of this crate passes an uninitialized buffer to a user-provided Read implementation. 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 memory...

9.8CVSS3.9AI score0.01345EPSS
SaveExploits0Affected Software1
RustSec
RustSec
added 2021/01/04 12:0 p.m.21 views

kamadak-exif DoS with untrusted PNG data

Attacker crafted data can cause a infinite loop leading to DoS if used with untrusted data...

6.5CVSS2.5AI score0.01515EPSS
SaveExploits0Affected Software1
RustSec
RustSec
added 2021/01/03 12:0 p.m.21 views

`Read` on uninitialized buffer can cause UB (impl of `ReadKVExt`)

Affected versions of this crate passes an uninitialized buffer to a user-provided Read implementation. 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 memory...

9.8CVSS3.7AI score0.01191EPSS
SaveExploits0
RustSec
RustSec
added 2020/12/31 12:0 p.m.21 views

InputStream::read_exact : `Read` on uninitialized buffer causes UB

Affected versions of this crate passes an uninitialized buffer to a user-provided Read implementation. 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 memory...

9.8CVSS3.8AI score0.01191EPSS
SaveExploits0
RustSec
RustSec
added 2020/12/10 12:0 p.m.21 views

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.5CVSS2AI score0.00401EPSS
SaveExploits1Affected Software1
RustSec
RustSec
added 2020/11/15 12:0 p.m.21 views

Queue<T> should have a Send bound on its Send/Sync traits

Affected versions of this crate unconditionally implements Send/Sync for Queue. This allows 1 creating data races to a T: !Sync and 2 sending T: !Send to other threads, resulting in memory corruption or other undefined behavior...

8.1CVSS3.8AI score0.01098EPSS
SaveExploits1
RustSec
RustSec
added 2020/11/13 12:0 p.m.21 views

`miow` invalidly assumes the memory layout of std::net::SocketAddr

The miow crate has assumed std::net::SocketAddrV4 and std::net::SocketAddrV6 have the same memory layout as the system C representation sockaddr. It has simply casted the pointers to convert the socket addresses to the system representation. The standard library does not say anything about the...

5.5CVSS3.4AI score0.00387EPSS
SaveExploits1Affected Software1
Total number of security vulnerabilities1167