RustSec logo

HistoryEditJSON (OSV)

RUSTSEC-2026-0254

Panic-safety unsoundness in Chunk and InlineArray (use-after-free / double-free)

Reported
Issued
Package
sp-sized-chunks (crates.io)
Type
INFO Unsound
Categories
Keywords
#panic-safety #memory-safety #use-after-free #double-free
Patched
no patched versions
Affected Functions
Version
sp_sized_chunks::Chunk::clear
  • <=0.1.0
sp_sized_chunks::Chunk::drop_left
  • <=0.1.0
sp_sized_chunks::Chunk::drop_right
  • <=0.1.0
sp_sized_chunks::InlineArray::clear
  • <=0.1.0

Description

Several methods in sp-sized-chunks drop elements before updating the container's length/boundary metadata. If an element's Drop panics during the drop, the metadata update is skipped, so the container still treats the already-dropped elements as live. When the container is later dropped, its own Drop re-visits those slots and drops the freed elements again — a use-after-free / double-free reachable from safe Rust.

sp-sized-chunks is a fork of sized-chunks (companion advisory filed separately) and carries the same bug. The repository is archived and the crate is still on 0.1.0 with no fix available.

Impact

All are reachable from safe Rust via catch_unwind with element types whose Drop can panic.

Advisory available under CC0-1.0 license.