Lucene search
+L
RustSecMost viewed

1332 matches found

RustSec
RustSec
•added 2025/02/10 12:00 p.m.•47 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/08/07 12:00 p.m.•47 views

`tauri`'s `readDir` endpoint allows possible enumeration outside of filesystem scope

It is possible for readDir to incorrectly enumerate files from a symlinked directory if called recursively when specifying an empty string for the dir parameter as outlined in this issue. This is corrected in this PR by checking if a directory is a symlink before reading from it...

8.3CVSS3.7AI score0.01022EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2020/12/06 12:00 p.m.•47 views

ordered_float:NotNan may contain NaN after panic in assignment operators

After using an assignment operators such as NotNan::addassign, NotNan::mulassign, etc., it was possible for the resulting NotNan value to contain a NaN. This could cause undefined behavior in safe code, because the safe NotNan::cmp method contains internal unsafe code that assumes the value is...

5.5CVSS2.4AI score0.00392EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2020/03/24 12:00 p.m.•47 views

Flaw in `realloc` allows reading unknown memory

When reallocing, if we allocate new space, we need to copy the old allocation's bytes into the new space. There are oldsize number of bytes in the old allocation, but we were accidentally copying newsize number of bytes, which could lead to copying bytes into the realloc'd space from past the chu...

7.5CVSS0.9AI score0.01509EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2019/10/22 12:00 p.m.•47 views

ChaCha20 counter overflow can expose repetitions in the keystream

The ChaCha20 stream cipher can produce a maximum of 2^32 blocks 256GB before the 32-bit counter overflows. Releases of the chacha20 crate prior to v0.2.3 allow generating keystreams larger than this, including seeking past the limit. When this occurs, the keystream is duplicated, with failure mod...

7.5CVSS1.7AI score0.01325EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2019/06/15 12:00 p.m.•47 views

Format string vulnerabilities in `pancurses`

pancurses::mvprintw and pancurses::printw passes a pointer from a rust &str to C, allowing hostile input to execute a format string attack, which trivially allows writing arbitrary data to stack memory...

7.5CVSS6.4AI score0.01148EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/08/01 12:00 p.m.•46 views

Processing of unverified relay events

The processed events received from a relay through admission-policy and database paths before verifying that the serialized fields matched the claimed event ID and signature. In particular, a database result for the claimed ID could cause verification to be skipped. The verification cache also...

5.5AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/04/13 12:00 p.m.•46 views

`safe-agent-rs` was removed from crates.io for being affiliated with malicious code

While safe-agent-rs did not directly contain malicious code, it was owned by the same user as pretty-changelog-logger and microsoftsystem64. safe-agent-rs also appeared to be imitating a different websocket library. We decided to remove it out of an abundance of caution. This crate had 2 versions...

5.8AI score
SaveExploits0
RustSec
RustSec
•added 2026/03/04 12:00 p.m.•46 views

All-Zero Key Generation on Catastrophic RNG Failure

The libcrux-ed25519 key generation samples Ed25519 secret keys from a provided CSPRNG in a loop for up to 100 attempts until a non-zero key is found. If a non-zero key could not be sampled within 100 attempts the key generation function would silently continue with an all-zero buffer as the secre...

5.9AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2025/09/11 12:00 p.m.•46 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 2025/07/29 12:00 p.m.•46 views

tsify-next is unmaintained, use tsify instead

The tsify-next crate is not maintained any more; use tsify instead...

7.1AI score
SaveExploits0
RustSec
RustSec
•added 2023/05/16 12:00 p.m.•46 views

Out-of-bounds array access leads to panic

Affected versions of the crate have a bug where attacker-controlled input can result in the use of an out-of-bound array index. Rust detects the use of the out-of-bound index and causes the application to panic. An attacker may be able to use this to cause a denial-of-service. However, it is not...

5.3CVSS6.8AI score0.00366EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2021/10/22 12:00 p.m.•46 views

sodiumoxide is deprecated

Alternatives may be found - not in any specific order: - libsodium-sys-stable - dryoc - RustCrypto/nacl-compat cryptobox, cryptokx, cryptosecretstream - RustCrypto/xsalsa20poly1305 cryptosecretbox - Signatory - ed25519-compact - ed25519-dalek - ring Recommendations can be also found from: - Aweso...

1.7AI score
SaveExploits0
RustSec
RustSec
•added 2021/07/07 12:00 p.m.•46 views

Task dropped in wrong thread when aborting `LocalSet` task

When aborting a task with JoinHandle::abort, the future is dropped in the thread calling abort if the task is not currently being executed. This is incorrect for tasks spawned on a LocalSet. This can easily result in race conditions as many projects use Rc or RefCell in their Tokio tasks for bett...

5.9CVSS0.9AI score0.00833EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2020/12/22 12:00 p.m.•46 views

conquer-once's OnceCell lacks Send bound for its Sync trait.

Affected versions of conquer-once implements Sync for its OnceCell type without restricting it to Sendable types. This allows non-Send but Sync types such as MutexGuard to be sent across threads leading to undefined behavior and memory corruption in concurrent programs. The issue was fixed by...

7.8CVSS3.8AI score0.00437EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2020/12/08 12:00 p.m.•46 views

Future<T> lacks bounds on Send and Sync.

tinyfuture contains a light-weight implementation of Futures. The Future type it has lacked bound on its Send and Sync traits. This allows for a bug where non-thread safe types such as Cell can be used in Futures and cause data races in concurrent programs. The flaw was corrected in commit c79191...

8.1CVSS2.3AI score0.00766EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2020/11/10 12:00 p.m.•46 views

AtomicBox<T> lacks bound on its Send and Sync traits allowing data races

AtomicBox is a Box type designed to be used across threads, however, it implements the Send and Sync traits for all types T. This allows non-Send types such as Rc and non-Sync types such as Cell to be used across thread boundaries which can trigger undefined behavior and memory corruption...

8.1CVSS2.1AI score0.0124EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2020/02/11 12:00 p.m.•46 views

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.8CVSS3.5AI score0.01668EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2020/01/24 12:00 p.m.•46 views

Improper `Sync` implementation on `FuturesUnordered` in futures-utils can cause data corruption

Affected versions of the crate had an unsound Sync implementation on the FuturesUnordered structure, which used a Cell for interior mutability without any code to handle synchronized access to the underlying task list's length and head safely. This could of lead to data corruption since two threa...

5.5CVSS1.5AI score0.00341EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2019/09/02 12:00 p.m.•46 views

Internally mutating methods take immutable ref self

Affected versions of this crate exposed several methods which took self by immutable reference, despite the requesting the RenderDoc API to set a mutable value internally. This is technically unsound and calling these methods from multiple threads without synchronization could lead to unexpected...

9.8CVSS2.3AI score0.01796EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2018/08/25 12:00 p.m.•46 views

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.5CVSS2.7AI score0.01372EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/06/11 12:00 p.m.•45 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/18 12:00 p.m.•45 views

PAX Header Desynchronization in astral-tokio-tar

Versions of astral-tokio-tar prior to 0.6.2 contain a PAX header interpretation bug that allows manipulated entries to be made selectively visible or invisible during extraction with astral-tokio-tar versus other tar implementations. An attacker could use this differential to smuggle unexpected...

5.8AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/04/14 12:00 p.m.•45 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/03/14 12:00 p.m.•45 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 2026/01/07 12:00 p.m.•45 views

`IterMut` violates Stacked Borrows by invalidating internal pointer

Affected versions of this crate contain a soundness issue in the IterMut iterator implementation. The IterMut::next and IterMut::nextback methods temporarily create an exclusive reference to the key when dereferencing the internal node pointer. This invalidates the shared pointer held by the...

6.9AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2023/06/21 12:00 p.m.•45 views

memoffset allows reading uninitialized memory

memoffset allows attempt of reading data from address 0 with arbitrary type. This behavior is an undefined behavior because address 0 to std::mem::sizeof may not have valid bit-pattern with T. Old implementation dereferences uninitialized memory obtained from std::mem::alignof. Older implementati...

6.9AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2023/01/24 12:00 p.m.•45 views

buf_redux is Unmaintained

Last release was over three years ago. The maintainers have been unreachable to respond to any issues that may or may not include security issues. The repository is now archived and there is no security policy in place to contact the maintainers otherwise. The safety-undocumented unsafe in the...

6.7AI score
SaveExploits0
RustSec
RustSec
•added 2021/06/11 12:00 p.m.•45 views

Triton VM Soundness Vulnerability due to Missing Constraint

The instruction spongeabsorbmem Triton VM fails to verify that hashed values come from the claimed memory location. Malicious provers can substitute arbitrary data instead of actual memory contents. Any application using instruction spongeabsorbmem to hash memory data can be given a proof for a...

5.6AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2020/08/31 12:00 p.m.•45 views

Misbehaving `HandleLike` implementation can lead to memory safety violation

Unsafe code in ObjectPool has time-of-check to time-of-use TOCTOU bug that can eventually lead to a memory safety violation. ObjectPool and HandlePool implicitly assumes that HandleLike trait methods are pure, i.e., they always return the same value. However, this assumption is unsound since...

8.1CVSS1.5AI score0.00881EPSS
SaveExploits0
RustSec
RustSec
•added 2020/04/24 12:00 p.m.•45 views

Relies on undefined behavior of `char::from_u32_unchecked`

The Windows implementation of this crate relied on the behavior of std::char::fromu32unchecked when its safety clause is violated. Even though this worked with Rust versions up to 1.42 at least, that behavior could change with any new Rust version, possibly leading a security issue. The flaw was...

7.5CVSS3.5AI score0.01352EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2020/04/09 12:00 p.m.•45 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.01267EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2020/01/24 12:00 p.m.•45 views

Contents of uninitialized memory exposed in DeflateOutput's AsyncRead implementation

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

9.8CVSS3.6AI score0.0123EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/08/20 12:00 p.m.•44 views

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

5.4AI score
SaveExploits0
RustSec
RustSec
•added 2026/06/04 12:00 p.m.•44 views

`pqcrypto-mldsa` is unmaintained: upstream PQClean project being archived

This crate provides Rust bindings to ML-DSA FIPS 204 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, this crat...

5.8AI score
SaveExploits0
RustSec
RustSec
•added 2026/05/28 12:00 p.m.•44 views

`EbpfVm::invoke_function` performs out-of-bounds pointer arithmetic

Affected versions of solanarbpf expose the safe method EbpfVm::invokefunction. This method computes an obfuscated VM pointer by casting self to mut u64 and applying a randomized offset derived from getruntimeenvironmentkey. The resulting pointer arithmetic is performed with ptr::offset, which...

5.7AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/03/19 12:00 p.m.•44 views

tar-rs incorrectly ignores PAX size headers if header size is nonzero

Versions 0.4.44 and below of tar-rs have conditional logic that skips the PAX size header in cases where the base header size is nonzero. As part of CVE-2025-62518astral-cve, the astral-tokio-tar project was changed to correctly honor PAX size headers in the case where it was different from the...

8.1CVSS7.5AI score0.00703EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2026/01/21 12:00 p.m.•44 views

Triton VM Soundness Vulnerability due to Improper Sampling of Randomness

In affected versions of Triton VM, the verifier failed to correctly sample randomness in the FRI sub-protocol. Malicious provers can exploit this to craft proofs for arbitrary statements that this verifier accepts as valid, undermining soundness. Protocols that rely on proofs and the supplied...

5.7AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2022/07/28 12:00 p.m.•44 views

Denial of service on deeply nested fragment requests

Deeply nested fragments in a GraphQL request may cause a stack overflow in the server...

7.5CVSS3.3AI score0.01721EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2022/05/09 12:00 p.m.•44 views

Timing attack

Affecting versions did not compare tokens in constant time, which could make it possible for an attacker to guess the 2fa token of a user. This has been fixed by using using the crate constanttimeeq for comparison...

4.4CVSS4.8AI score0.00863EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2021/12/05 12:00 p.m.•44 views

`encoding` is unmaintained

Last release was on 2016-08-28. The issue inquiring as to the status of the crate has gone unanswered by the maintainer. Possible alternatives - encodingrs...

2.2AI score
SaveExploits0
RustSec
RustSec
•added 2021/01/31 12:00 p.m.•44 views

KeyValueReader passes uninitialized memory to Read instance

The KeyValueReader type in affected versions of this crate set up an uninitialized memory buffer and passed them to be read in to a user-provided Read instance. The Read instance could read uninitialized memory and cause undefined behavior and miscompilations. This issue was fixed in commit dd59b...

9.8CVSS5.2AI score0.011EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2020/05/03 12:00 p.m.•44 views

futures_task::noop_waker_ref can segfault due to dereferencing a NULL pointer

Affected versions of the crate used a UnsafeCell in thread-local storage to return a noop waker reference, assuming that the reference would never be returned from another thread. This resulted in a segmentation fault crash if Waker::wakebyref was called on a waker returned from another thread du...

5.5CVSS2AI score0.00407EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2019/09/06 12:00 p.m.•44 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 2018/06/15 12:00 p.m.•44 views

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

3.9AI score
SaveExploits0Affected Software1
RustSec
RustSec
•added 2017/05/06 12:00 p.m.•44 views

Large cookie Max-Age values can cause a denial of service

Affected versions of this crate use the time crate and the method Duration::seconds to parse the Max-Age duration cookie setting. This method will panic if the value is greater than 2^64/1000 and less than or equal to 2^64, which can result in denial of service for a client or server. This flaw w...

7.5CVSS4.1AI score0.01514EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2026/06/04 12:00 p.m.•43 views

`pqcrypto-falcon` is unmaintained: upstream PQClean project being archived

This crate provides Rust bindings to the Falcon FN-DSA signature scheme 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 ...

5.8AI score
SaveExploits0
RustSec
RustSec
•added 2026/04/14 12:00 p.m.•43 views

Use-After-Free and Double Free in IntoIter::drop When Element Drop Panics

A Double Free / Use-After-Free UAF vulnerability has been identified in the IntoIter::drop and ThinVec::clear implementations of the thin-vec crate. Both vulnerabilities share the same root cause and can trigger memory corruption using only safe Rust code - no unsafe blocks required. Undefined...

7.3CVSS6.3AI score0.00161EPSS
SaveExploits1Affected Software1
RustSec
RustSec
•added 2022/11/10 12:00 p.m.•43 views

Bug in Wasmtime implementation of pooling instance allocator

Bug in Wasmtime's implementation of its pooling instance allocator when the allocator is configured to give WebAssembly instances a maximum of zero pages of memory. In this configuration, the virtual memory mapping for WebAssembly memories did not meet the compiler-required configuration...

7.4CVSS1AI score0.00663EPSS
SaveExploits0Affected Software1
RustSec
RustSec
•added 2022/10/25 12:00 p.m.•43 views

evm incorrect state transition

SputnikVM, also called evm, is a Rust implementation of Ethereum Virtual Machine. A custom stateful precompile can use the isstatic parameter to determine if the call is executed in a static context via STATICCALL, and thus decide if stateful operations should be done. Prior to version 0.36.0, th...

7.5CVSS1.6AI score0.00683EPSS
SaveExploits0Affected Software1
Total number of security vulnerabilities1332