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.
qni-core-rs 0.2.6
This project contains known security vulnerabilities. Find detailed information at the bottom.
qni-core-rs
(3 total, 1 outdated, 1 insecure, 2 possibly insecure)
Crate | Required | Latest | Status |
---|---|---|---|
atomic-option ⚠️ | ^0.1.2 | 0.1.2 | insecure |
chrono ⚠️ | ^0.4.6 | 0.4.38 | maybe insecure |
protobuf ⚠️ | ^2.2.0 | 3.4.0 | out of date |
protobuf
: 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.
atomic-option
: AtomicOption should have Send + Sync bound on its type argument.In the affected versions of this crate,
AtomicOption<T>
unconditionally implements Sync
.
This allows programmers to move non-Sync types across thread boundaries (e.g. Rc<T>
, Arc<Cell<T>>
), which can lead to data races and undefined behavior.
It is also possible to send non-Send types like std::sync::MutexGuard
to other threads, which can lead to undefined behavior.
chrono
: Potential segfault in `localtime_r` invocationsUnix-like operating systems may segfault due to dereferencing a dangling pointer in specific circumstances. This requires an environment variable to be set in a different thread than the affected functions. This may occur without the user's knowledge, notably in a third-party library.
No workarounds are known.