RUSTSEC-2026-0295 Memory corruption bug on `ApplyResult` type
A use-after-free vulnerability in the ApplyResult type allows attackers to cause memory corruption, potentially leading to code execution or 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-0295?
RUSTSEC-2026-0295 is an use after free vulnerability in z3, published on 12 Aug 2026.
Official description
The ApplyResult type contains a raw pointer to a C++ memory object and has a derived Clone implementation which creates a reference to this object without incrementing the associated reference counter.
As a result, if an instance of ApplyResult is duplicated through Clone and both instances are dropped a use-after-free can occur.
Which versions are affected by RUSTSEC-2026-0295?
1 open source package ship an affected version, including z3.
| Package | Affected | Fixed in |
|---|---|---|
z3 crates.io | From 0.0.0-0 | 0.21.0 |
How do I fix RUSTSEC-2026-0295?
Upgrade z3 to 0.21.0 or later.
Upgrade to the fixed version. These bugs are found with fuzzing and sanitisers and avoided by memory-safe languages. More about Use after free.
Is RUSTSEC-2026-0295 being exploited?
There is no known exploitation of RUSTSEC-2026-0295 in the wild and no public exploit code.