Lucene search
K
RustsecRecent

1119 matches found

RustSec
RustSec
•added 2019/10/14 12:0 p.m.•16 views

Flaw in Scalar::check_overflow allows side-channel timing attack

Versions of libsecp256k1 prior to 0.3.1 did not execute Scalar::checkoverflow in constant time. This allows an attacker to potentially leak information via a timing attack. The flaw was corrected by modifying Scalar::checkoverflow to execute in constant time...

7.5CVSS6.6AI score0.01415EPSS
Exploits0Affected Software1
RustSec
RustSec
•added 2019/10/11 12:0 p.m.•19 views

generichash::Digest::eq always return true

PartialEq implementation for generichash::Digest has compared itself to itself. Digest::eq always returns true and Digest::ne always returns false...

9.8CVSS2.3AI score0.01484EPSS
Exploits0Affected Software1
RustSec
RustSec
•added 2019/10/08 12:0 p.m.•12 views

Test advisory with associated example crate

This is a test advisory useful for verifying RustSec tooling and vulnerability detection pipelines are working correctly. Aside from the fact that it is filed against an example crate, it is otherwise considered by the Advisory Database itself to be a normal security advisory. It's filed against...

1.8AI score
Exploits0Affected Software1
RustSec
RustSec
•added 2019/10/06 12:0 p.m.•21 views

Incorrect implementation of the Streebog hash functions

Internal update-sigma function was implemented incorrectly and depending on debug-assertions it could've caused an incorrect result or panic for certain inputs...

1.1AI score
Exploits0Affected Software1
RustSec
RustSec
•added 2019/10/03 12:0 p.m.•16 views

Flaw in CBOR deserializer allows stack overflow

Affected versions of this crate did not properly check if semantic tags were nested excessively during deserialization. This allows an attacker to craft small 1 kB CBOR documents that cause a stack overflow. The flaw was corrected by limiting the allowed number of nested tags...

7.5CVSS4.6AI score0.0143EPSS
Exploits1Affected Software1
RustSec
RustSec
•added 2019/09/14 12:0 p.m.•17 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
Exploits1Affected Software1
RustSec
RustSec
•added 2019/09/14 12:0 p.m.•15 views

`Matrix::zip_elements` causes double free

Affected versions of this crate did not properly implements the Matrix::zipelements method, which causes an double free when the given trait implementation might panic. This allows an attacker to corrupt or take control of the memory. The flaw was corrected by Phosphorus15...

9.8CVSS4.2AI score0.01691EPSS
Exploits1Affected Software1
RustSec
RustSec
•added 2019/09/06 12:0 p.m.•18 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
Exploits0Affected Software1
RustSec
RustSec
•added 2019/09/02 12:0 p.m.•27 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
Exploits0Affected Software1
RustSec
RustSec
•added 2019/09/01 12:0 p.m.•18 views

Use-after-free in buffer conversion implementation

The From implementation for Vec was not properly implemented, returning a vector backed by freed memory. This could lead to memory corruption or be exploited to cause undefined behavior. A fix was published in version 0.1.3...

9.8CVSS3.6AI score0.01634EPSS
Exploits0Affected Software1
RustSec
RustSec
•added 2019/09/01 12:0 p.m.•21 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
Exploits0Affected Software1
RustSec
RustSec
•added 2019/08/27 12:0 p.m.•11 views

Wrong memory orderings in RwLock potentially violates mutual exclusion

Wrong memory orderings inside the RwLock implementation allow for two writers to acquire the lock at the same time. The drop implementation used Ordering::Relaxed, which allows the compiler or CPU to reorder a mutable access on the locked data after the lock has been yielded. Only users of the...

7.8CVSS1.4AI score0.01423EPSS
Exploits0Affected Software1
RustSec
RustSec
•added 2019/08/25 12:0 p.m.•19 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
Exploits0Affected Software1
RustSec
RustSec
•added 2019/08/24 12:0 p.m.•23 views

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.5CVSS2.1AI score0.01547EPSS
Exploits1Affected Software1
RustSec
RustSec
•added 2019/08/21 12:0 p.m.•21 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
Exploits0Affected Software1
RustSec
RustSec
•added 2019/07/19 12:0 p.m.•23 views

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.8CVSS3.1AI score0.02144EPSS
Exploits0Affected Software1
RustSec
RustSec
•added 2019/07/16 12:0 p.m.•22 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
Exploits0Affected Software1
RustSec
RustSec
•added 2019/07/04 12:0 p.m.•17 views

MultiDecoder::read() drops uninitialized memory of arbitrary type on panic in client code

Affected versions of libflate have set a field of an internal structure with a generic type to an uninitialized value in MultiDecoder::read and reverted it to the original value after the function completed. However, execution of MultiDecoder::read could be interrupted by a panic in caller-suppli...

9.8CVSS3.1AI score0.02458EPSS
Exploits0Affected Software1
RustSec
RustSec
•added 2019/06/24 12:0 p.m.•19 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
Exploits0Affected Software1
RustSec
RustSec
•added 2019/06/20 12:0 p.m.•15 views

`boxfnonce` obsolete with release of Rust 1.35.0

This commit marks the boxfnonce crate as obsolete and the GitHub repo has since been archived. The functionality of boxfnonce has been added to Rust since 1.35.0. Use Box...

1.1AI score
Exploits0
RustSec
RustSec
•added 2019/06/15 12:0 p.m.•30 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
Exploits0Affected Software1
RustSec
RustSec
•added 2019/06/15 12:0 p.m.•21 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
Exploits0Affected Software1
RustSec
RustSec
•added 2019/06/13 12:0 p.m.•18 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
Exploits0Affected Software1
RustSec
RustSec
•added 2019/06/11 12:0 p.m.•32 views

Compiler optimisation for next_with_timeout in pnet::transport::IcmpTransportChannelIterator flaws to SEGFAULT

Affected versions of this crate were optimized out by compiler, which caused dereference of uninitialized file descriptor which caused segfault...

7.5CVSS2.6AI score0.00958EPSS
Exploits0Affected Software1
RustSec
RustSec
•added 2019/06/08 12:0 p.m.•21 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
Exploits0Affected Software1
RustSec
RustSec
•added 2019/06/06 12:0 p.m.•19 views

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.8CVSS2.3AI score0.01862EPSS
Exploits0Affected Software1
RustSec
RustSec
•added 2019/05/21 12:0 p.m.•16 views

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.8CVSS4.6AI score0.01855EPSS
Exploits0Affected Software1
RustSec
RustSec
•added 2019/05/15 12:0 p.m.•22 views

Failure to properly verify ed25519 signatures makes any signature valid

Affected versions of this crate did not properly verify ed25519 signatures. Any signature with a correct length was considered valid. This allows an attacker to impersonate any node identity...

7.5CVSS4.7AI score0.00765EPSS
Exploits0Affected Software1
RustSec
RustSec
•added 2019/05/07 12:0 p.m.•19 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
Exploits0Affected Software1
RustSec
RustSec
•added 2019/04/27 12:0 p.m.•18 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
Exploits0Affected Software1
RustSec
RustSec
•added 2019/04/19 12:0 p.m.•18 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.01545EPSS
Exploits0Affected Software1
RustSec
RustSec
•added 2019/04/06 12:0 p.m.•20 views

typemap is Unmaintained

The maintainer seems unreachable. The crate may or may not be usable as-is despite no maintenance and may not work in future versions of Rust. The last release seems to have been seven years ago. Possible Alternatives The below list has not been vetted in any way and may or may not contain...

2.5AI score
Exploits0
RustSec
RustSec
•added 2019/03/10 12:0 p.m.•16 views

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.5CVSS3.7AI score0.01177EPSS
Exploits0Affected Software1
RustSec
RustSec
•added 2018/12/22 12:0 p.m.•19 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
Exploits1Affected Software1
RustSec
RustSec
•added 2018/12/20 12:0 p.m.•15 views

Flaw in streaming state reset() functions can create incorrect results.

Affected versions of this crate did not properly reset a streaming state. Resetting a streaming state, without finalising it first, creates incorrect results. The flaw was corrected by not first checking if the state had already been reset, when calling reset...

7.5CVSS3.3AI score0.01598EPSS
Exploits0Affected Software1
RustSec
RustSec
•added 2018/12/18 12:0 p.m.•16 views

Enum repr causing potential memory corruption

The attribute repr added to enums to be compatible with C-FFI caused memory corruption on MSVC toolchain. arrayfire crates = version 3.5.0 do not have this issue when used with Rust versions 1.27 or earlier. The issue only started to appear since Rust version 1.28. The issue seems to be interlink...

9.8CVSS5.6AI score0.01645EPSS
Exploits0Affected Software1
RustSec
RustSec
•added 2018/12/09 12:0 p.m.•16 views

MsQueue and SegQueue suffer from double-free

Even if an element is popped from a queue, crossbeam would run its destructor inside the epoch-based garbage collector. This is a source of double frees. The flaw was corrected by wrapping elements inside queues in a ManuallyDrop. Thanks to @c0gent for reporting the issue...

9.8CVSS1.3AI score0.01744EPSS
Exploits0Affected Software1
RustSec
RustSec
•added 2018/12/05 12:0 p.m.•21 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
Exploits0Affected Software1
RustSec
RustSec
•added 2018/11/27 12:0 p.m.•18 views

Vec-to-vec transmutations could lead to heap overflow/corruption

Affected versions of this crate switched the length and capacity arguments in the Vec::fromrawparts constructor, which could lead to memory corruption or data leakage. The flaw was corrected by using the constructor correctly...

9.8CVSS2.8AI score0.02032EPSS
Exploits0Affected Software1
RustSec
RustSec
•added 2018/11/19 12:0 p.m.•11 views

term is looking for a new maintainer

The author of the term crate does not have time to maintain it and is looking for a new maintainer. Some maintained alternatives you can potentially switch to instead, depending on your needs: - crossterm - termcolor - yansi...

2.2AI score
Exploits0Affected Software1
RustSec
RustSec
•added 2018/10/09 12:0 p.m.•22 views

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.5CVSS3.6AI score0.01411EPSS
Exploits0Affected Software1
RustSec
RustSec
•added 2018/09/25 12:0 p.m.•14 views

smallvec creates uninitialized value of any type

Affected versions of this crate called mem::uninitialized to create values of a user-supplied type T. This is unsound e.g. if T is a reference type which must be non-null and thus may not remain uninitialized. The flaw was corrected by avoiding the use of mem::uninitialized, using MaybeUninit...

7.5CVSS3.8AI score0.01377EPSS
Exploits1Affected Software1
RustSec
RustSec
•added 2018/09/17 12:0 p.m.•13 views

Uncontrolled recursion leads to abort in deserialization

Affected versions of this crate did not properly check for recursion while deserializing aliases. This allows an attacker to make a YAML file with an alias referring to itself causing an abort. The flaw was corrected by checking the recursion depth...

4.5AI score
Exploits0Affected Software1
RustSec
RustSec
•added 2018/09/17 12:0 p.m.•19 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
Exploits0Affected Software1
RustSec
RustSec
•added 2018/08/25 12:0 p.m.•20 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
Exploits0Affected Software1
RustSec
RustSec
•added 2018/08/22 12:0 p.m.•18 views

Use of uninitialized memory in temporary

Uninit memory is used as a RNG seed in temporary The following function is used as a way to get entropy from the system, which does operations on and exposes uninit memory, which is UB. rust fn randomseed: &Path, : &str - u64; 2 use std::mem::uninitialized as rand; unsafe rand:: ^ 0x12345678,...

1.1AI score
Exploits0Affected Software1
RustSec
RustSec
•added 2018/07/31 12:0 p.m.•15 views

chan is end-of-life; use crossbeam-channel instead

chan has reached its end-of-life and is now deprecated. The intended successor of this crate is crossbeam-channel. Its API is strikingly similar, but comes with a much better select! macro, better performance, a better test suite and an all-around better implementation...

1.3AI score
Exploits0Affected Software1
RustSec
RustSec
•added 2018/07/19 12:0 p.m.•20 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.8CVSS2.2AI score0.01798EPSS
Exploits0Affected Software1
RustSec
RustSec
•added 2018/06/30 12:0 p.m.•13 views

quickersort is deprecated and unmaintained

The author of the quickersort crate has deprecated it and does not recommend using it anymore. Everything in it has been incorporated into std::sortunstable in the standard library as of Rust 1.20. std::sortunstable: https://doc.rust-lang.org/stable/std/primitive.slice.htmlmethod.sortunstable...

4.3AI score
Exploits0Affected Software1
RustSec
RustSec
•added 2018/06/29 12:0 p.m.•20 views

Links in archives can overwrite any existing file

When unpacking a tarball with the unpackin-family of functions it's intended that only files within the specified directory are able to be written. Tarballs with hard links or symlinks, however, can be used to overwrite any file on the filesystem. Tarballs can contain multiple entries for the sam...

7.5CVSS0.2AI score0.01676EPSS
Exploits0Affected Software1
Total number of security vulnerabilities1119