RUSTSEC-2026-0252 Panic-safety unsoundness in `SplitVec::extend_from_slice` (uninitialized read)

Not scored Published

A panic during cloning in SplitVec::extend_from_slice leaves uninitialized memory accessible, allowing attackers to read garbage data or cause crashes.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Not stated
Victim action needed
Not needed
Fix
Available

What is RUSTSEC-2026-0252?

RUSTSEC-2026-0252 is a memory corruption vulnerability in orx-split-vec, published on 11 Aug 2026.

Official description

SplitVec::extend_from_slice increments the logical length self.len before cloning the incoming elements into the reserved slots. If an element's Clone panics mid-fill, unwinding leaves self.len counting slots that were never initialized. A later safe read (get, indexing, iter) then reads one of those uninitialized slots.

This is reachable from safe Rust — a read of uninitialized memory (CWE-908). It is not a double-free: SplitVec has no manual Drop and its elements live in a standard Vec, so the defect is a read, not a free.

Impact

A safe read after the panic returns a value built from uninitialized bytes. For a heap-owning element type such as String, the resulting value has garbage length/pointer fields.

Confirmed under Miri. AddressSanitizer stays silent for this class, since the uninitialized bytes are consumed as a non-dereferenced field rather than an invalid load or free.

Fix

Fixed in orx-split-vec 4.0.0, which no longer commits the length before the elements are cloned.

Which versions are affected by RUSTSEC-2026-0252?

1 open source package ship an affected version, including orx-split-vec.

PackageAffectedFixed in
orx-split-vec crates.ioFrom 0.0.0-04.0.0

How do I fix RUSTSEC-2026-0252?

Upgrade orx-split-vec to 4.0.0 or later.

Upgrade to the fixed version. Memory-safe languages, compiler hardening and fuzzing prevent most new cases. More about Memory corruption.

Is RUSTSEC-2026-0252 being exploited?

There is no known exploitation of RUSTSEC-2026-0252 in the wild and no public exploit code.

Sources

Is RUSTSEC-2026-0252 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free