Every CVE Search/ Get API key

CVE-2018-25023

Use of Uninitialized Resource in smallvec

7.5 HighFix available

An issue was discovered in the smallvec crate before 0.6.13 for Rust. It can create an uninitialized value of any type, including a reference type.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
None
Integrity
High
Availability
None

Exploit likelihood

1.42%Up 0.8 points since Dec 27, 2021
90%50%10%1%

What each source reports

NVD Score used 7.5

An issue was discovered in the smallvec crate before 0.6.13 for Rust. It can create an uninitialized value of any type, including a reference type.

Record
CVE-2018-25023
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
CVSS 2.0
5.0 MediumAV:N/AC:L/Au:N/C:N/I:P/A:N
Weakness
CWE-908
Updated
2026-11-02
CVE List No score

An issue was discovered in the smallvec crate before 0.6.13 for Rust. It can create an uninitialized value of any type, including a reference type.

Record
CVE-2018-25023
Updated
2026-11-02
EUVDEUVD-2022-0458 No score

An issue was discovered in the smallvec crate before 0.6.13 for Rust. It can create an uninitialized value of any type, including a reference type.

Record
EUVD-2022-0458
Updated
2026-11-03
GitHub AdvisoriesGHSA-55m5-whcv-c49c 7.5

Use of Uninitialized Resource in smallvec

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.

Record
GHSA-55m5-whcv-c49c
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Weakness
CWE-908
Updated
2026-11-02
GitHub AdvisoriesGHSA-66p5-j55p-32r9 No score

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

Record
GHSA-66p5-j55p-32r9
Weakness
CWE-457
Updated
2026-11-02
OSV 7.5

An issue was discovered in the smallvec crate before 0.6.13 for Rust. It can create an uninitialized value of any type, including a reference type.

Record
CVE-2018-25023
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Updated
2026-11-02
Show 8 moreShow less
OSVDEBIAN-CVE-2018-25023 7.5

An issue was discovered in the smallvec crate before 0.6.13 for Rust. It can create an uninitialized value of any type, including a reference type.

Record
DEBIAN-CVE-2018-25023
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Updated
2026-11-02
OSVGHSA-55m5-whcv-c49c 7.5

Use of Uninitialized Resource in smallvec

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.

Record
GHSA-55m5-whcv-c49c
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Weakness
CWE-908
Updated
2026-11-02
OSVUBUNTU-CVE-2018-25023 7.5

An issue was discovered in the smallvec crate before 0.6.13 for Rust. It can create an uninitialized value of any type, including a reference type.

Record
UBUNTU-CVE-2018-25023
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Updated
2026-11-02
OSVGHSA-66p5-j55p-32r9 No score

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

Record
GHSA-66p5-j55p-32r9
Weakness
CWE-457
Updated
2026-11-02
OSVopenSUSE-SU-2024:11720-1 No score

cargo-c-0.8.1~git0.cce1b08-2.1 on GA media

These are all security issues fixed in the cargo-c-0.8.1~git0.cce1b08-2.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2024:11720-1
Updated
2026-11-02
OSVopenSUSE-SU-2024:11721-1 No score

librav1e0-0.5.1+0-2.1 on GA media

These are all security issues fixed in the librav1e0-0.5.1+0-2.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2024:11721-1
Updated
2026-11-02
OSVopenSUSE-SU-2024:11729-1 No score

zram-generator-1.1.1~git5.8612dbb-1.1 on GA media

These are all security issues fixed in the zram-generator-1.1.1~git5.8612dbb-1.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2024:11729-1
Updated
2026-11-02
OSVRUSTSEC-2018-0018 No score

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

Record
RUSTSEC-2018-0018
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
smallvec
crates.io
before 0.6.13
0.6.13
rust-smallvec
Debian:12
before 1.1.0-1
1.1.0-1
rust-smallvec
Debian:13
before 1.1.0-1
1.1.0-1
rust-smallvec
Debian:14
before 1.1.0-1
1.1.0-1
smallvec
crates.io
0.0.0-0 up to 0.6.13
0.6.13
rust-smallvec
Ubuntu:20.04:LTS
All versions, plus listed versions
0.6.10-11.1.0-1
None known
rust-smallvec
Ubuntu:22.04:LTS
All versions, plus listed versions
1.4.2-21.7.0-1
None known
rust-smallvec
Ubuntu:24.04:LTS
All versions, plus listed versions
1.11.0-11.11.2-1
None known
rust-smallvec
Ubuntu:25.10
All versions, plus listed versions
1.13.2-1
None known
rust-smallvec
Ubuntu:26.10
All versions, plus listed versions
1.15.1-11.15.2-1
None known
rust-smallvec
Ubuntu:26.04:LTS
All versions, plus listed versions
1.13.2-11.15.1-1
None known
cargo-c
openSUSE:Tumbleweed
From an advisory covering 2 CVEs
before 0.8.1~git0.cce1b08-2.1
0.8.1~git0.cce1b08-2.1
zram-generator
openSUSE:Tumbleweed
From an advisory covering 2 CVEs
before 1.1.1~git5.8612dbb-1.1
1.1.1~git5.8612dbb-1.1

History

History
RecordedChangedSources
affected, facts
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2018-25023 is a high vulnerability (CVSS 7.5) in Servo Smallvec, published September 25, 2018. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 1.42%, the 73rd percentile. Fixed in smallvec 0.6.13.

References

Show 9 moreShow less
MoveEnter Open