Lucene search
+L
Osv-rustsecRecent

1310 matches found

osv-rustsec
osv-rustsec
•added 2019/09/01 12:00 p.m.•61 views

RUSTSEC-2019-0017 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.5CVSS7.5AI score0.01583EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2019/09/01 12:00 p.m.•39 views

RUSTSEC-2019-0016 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.8CVSS9.3AI score0.01634EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2019/08/27 12:00 p.m.•40 views

RUSTSEC-2019-0013 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.5CVSS7.6AI score0.01423EPSS
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/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 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 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/07/16 12:00 p.m.•37 views

RUSTSEC-2019-0011 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.5CVSS7.3AI score0.01766EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2019/07/04 12:00 p.m.•32 views

RUSTSEC-2019-0010 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.8CVSS9.6AI score0.02458EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2019/06/24 12:00 p.m.•44 views

RUSTSEC-2019-0008 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.5CVSS7.4AI score0.01398EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2019/06/20 12:00 p.m.•17 views

RUSTSEC-2019-0040 `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...

7.2AI score
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2019/06/15 12:00 p.m.•43 views

RUSTSEC-2019-0005 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.5CVSS7.5AI score0.01148EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2019/06/15 12:00 p.m.•71 views

RUSTSEC-2019-0006 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.8CVSS8.7AI score0.01615EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2019/06/13 12:00 p.m.•72 views

RUSTSEC-2019-0007 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.5CVSS7.5AI score0.01382EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2019/06/11 12:00 p.m.•56 views

RUSTSEC-2019-0037 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...

6CVSS7.5AI score0.00958EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2019/06/08 12:00 p.m.•17 views

RUSTSEC-2019-0003 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.9AI score0.03764EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2019/06/06 12:00 p.m.•51 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 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/05/15 12:00 p.m.•29 views

RUSTSEC-2019-0004 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.5CVSS7.4AI score0.00765EPSS
SaveExploits0References2
osv-rustsec
osv-rustsec
•added 2019/05/07 12:00 p.m.•45 views

RUSTSEC-2019-0002 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.8CVSS9.2AI score0.01611EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2019/04/27 12:00 p.m.•69 views

RUSTSEC-2019-0001 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.5CVSS7.5AI score0.01411EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2019/04/19 12:00 p.m.•24 views

RUSTSEC-2019-0035 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.8CVSS9.3AI score0.01558EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2019/04/06 12:00 p.m.•30 views

RUSTSEC-2019-0039 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...

7.2AI score
SaveExploits0References4
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/22 12:00 p.m.•41 views

RUSTSEC-2018-0020 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.5CVSS6.3AI score0.01001EPSS
SaveExploits1References3
osv-rustsec
osv-rustsec
•added 2018/12/20 12:00 p.m.•38 views

RUSTSEC-2018-0012 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.5CVSS7.5AI score0.01598EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2018/12/18 12:00 p.m.•24 views

RUSTSEC-2018-0011 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.8CVSS9.6AI score0.01658EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2018/12/09 12:00 p.m.•51 views

RUSTSEC-2018-0009 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.8CVSS8.3AI score0.01744EPSS
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/11/27 12:00 p.m.•33 views

RUSTSEC-2018-0013 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.8CVSS9.5AI score0.01977EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2018/11/19 12:00 p.m.•16 views

RUSTSEC-2018-0015 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...

7AI score
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 2018/09/25 12:00 p.m.•26 views

RUSTSEC-2018-0018 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.5CVSS7.4AI score0.01377EPSS
SaveExploits1References3
osv-rustsec
osv-rustsec
•added 2018/09/17 12:00 p.m.•60 views

RUSTSEC-2018-0006 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.5CVSS7.5AI score0.01411EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2018/09/17 12:00 p.m.•18 views

RUSTSEC-2018-0005 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...

7AI score
SaveExploits0References3
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 2018/08/22 12:00 p.m.•16 views

RUSTSEC-2018-0022 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,...

7AI score
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2018/07/31 12:00 p.m.•23 views

RUSTSEC-2018-0014 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...

7.1AI score
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2018/07/19 12:00 p.m.•63 views

RUSTSEC-2018-0003 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
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2018/06/30 12:00 p.m.•21 views

RUSTSEC-2018-0016 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...

7.2AI score
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2018/06/29 12:00 p.m.•33 views

RUSTSEC-2018-0002 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.5CVSS7.4AI score0.01676EPSS
SaveExploits0References3
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 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 2018/06/08 12:00 p.m.•35 views

RUSTSEC-2018-0019 Multiple memory safety issues

Affected versions contain multiple memory safety issues, such as: - Unsoundly coercing immutable references to mutable references - Unsoundly extending lifetimes of strings - Adding the Send marker trait to objects that cannot be safely sent between threads This may result in a variety of memory...

9.8CVSS9.7AI score0.01324EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2018/06/01 12:00 p.m.•35 views

RUSTSEC-2018-0010 Use after free in CMS Signing

Affected versions of the OpenSSL crate used structures after they'd been freed...

9.8CVSS9.4AI score0.01744EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2018/02/13 12:00 p.m.•21 views

RUSTSEC-2018-0017 `tempdir` crate has been deprecated; use `tempfile` instead

The tempdir crate has been deprecated and the functionality is merged into tempfile...

7.2AI score
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2017/11/21 12:00 p.m.•16 views

RUSTSEC-2017-0006 Unchecked vector pre-allocation

Affected versions of this crate pre-allocate memory on deserializing raw buffers without checking whether there is sufficient data available. This allows an attacker to do denial-of-service attacks by sending small msgpack messages that allocate gigabytes of memory...

7AI score
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2017/07/02 12:00 p.m.•18 views

RUSTSEC-2017-0008 `serial` crate is unmaintained

The serial crate is no longer maintained. Last release was on 2017-07-02. Possible alternatives Consider using an alternative, for instance the blocking librarys: - serial2 - serialport or async alternatives: - mio-serial - tokio-serial...

7.2AI score
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2017/05/06 12:00 p.m.•56 views

RUSTSEC-2017-0005 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.5CVSS7.3AI score0.01514EPSS
SaveExploits0References3
osv-rustsec
osv-rustsec
•added 2017/05/03 12:00 p.m.•45 views

RUSTSEC-2017-0004 Integer overflow leads to heap-based buffer overflow in encode_config_buf

Affected versions of this crate suffered from an integer overflow bug when calculating the size of a buffer to use when encoding base64 using the encodeconfigbuf and encodeconfig functions. If the input string was large, this would cause a buffer to be allocated that was too small. Since this...

9.8CVSS9.8AI score0.01534EPSS
SaveExploits0References3
Total number of security vulnerabilities1310