CVE-2018-25023
HIGH7.5EPSS 0.23%smallvec creates uninitialized value of any type
Published: 1/6/2022Modified: 11/8/2023
Description
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` instead.
Affected packages (4)
- crates.io/smallvecfrom 0, < 0.6.13
- crates.io/smallvecfrom 0, < 0.6.13
- crates.io/smallvec>= 0.0.0-0, < 0.6.13
- Debian/rust-smallvecfrom 0, < 1.1.0-1
CVSS scores
| Source | Version | Severity | Vector |
|---|---|---|---|
| osv | CVSS 3.1 | HIGH7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N |
References (9)
- ADVISORYhttps://nvd.nist.gov/vuln/detail/CVE-2018-25023
- ADVISORYhttps://security-tracker.debian.org/tracker/CVE-2018-25023
- PATCHhttps://crates.io/crates/smallvec
- PATCHhttps://github.com/servo/rust-smallvec
- WEBhttps://github.com/servo/rust-smallvec/commit/e64afc8c473d43e375ab42bd33db2d0d4ac4e41b
- WEBhttps://github.com/servo/rust-smallvec/issues/126
- WEBhttps://github.com/servo/rust-smallvec/pull/162
- WEBhttps://raw.githubusercontent.com/rustsec/advisory-db/main/crates/smallvec/RUSTSEC-2018-0018.md
- WEBhttps://rustsec.org/advisories/RUSTSEC-2018-0018.html