RUSTSEC-2026-0198 `Report::frames_mut` allows aliased mutable references

Not scored Published

A Rust library flaw allows aliased mutable references, causing undefined behavior and segmentation faults in applications using the affected crate.

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

What is RUSTSEC-2026-0198?

RUSTSEC-2026-0198 is a memory corruption vulnerability in error-stack, published on 3 Jul 2026.

Official description

Affected versions of this crate return an iterator from Report::frames_mut whose &mut Frame items have lifetimes independent of the iterator, so all yielded references can be held at the same time. A yielded frame's sources are also yielded by the iterator and reachable through the parent frame via Frame::sources_mut, allowing safe code to obtain two live mutable references to the same frame. This is undefined behavior and can be used to cause a segmentation fault (see reproducer in the linked issue). Versions 0.1.0 and 0.1.1 are affected through Frame::source_mut instead of Frame::sources_mut.

The flaw is fixed in 0.8.0 by replacing the iterator with internal iteration: Report::frames_mut now takes a visitor closure, so mutable access to a frame is scoped and cannot overlap with access to its sources.

Which versions are affected by RUSTSEC-2026-0198?

1 open source package ship an affected version, including error-stack.

PackageAffectedFixed in
error-stack crates.ioFrom 0.0.0-00.8.0

How do I fix RUSTSEC-2026-0198?

Upgrade error-stack to 0.8.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-0198 being exploited?

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

Sources

Is RUSTSEC-2026-0198 in your software?

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

Check your SBOMs for free