RUSTSEC-2025-0162 `VMABuffer::set_data` may allow out-of-bounds writes from safe code
Safe Rust code can trigger out-of-bounds writes in VMABuffer::set_data due to missing bounds checks, potentially leading to memory corruption 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-2025-0162?
RUSTSEC-2025-0162 is a memory corruption vulnerability in vku, published on 23 Apr 2025.
Official description
VMABuffer::set_data was a publicly accessible safe function. It accepted an arbitrary offset and a data slice, then used the offset in unsafe pointer arithmetic before copying the slice into a mapped allocation.
Affected versions did not check that the requested write range fit within the allocation before calling ptr.add(offset) and copy_from_nonoverlapping. Safe Rust code could therefore trigger an out-of-bounds write by passing an offset outside the mapped allocation.
This makes the safe API unsound, since callers can trigger undefined behavior without using unsafe.
Version 0.4.0 added a bounds check before performing the pointer arithmetic and copy.
Which versions are affected by RUSTSEC-2025-0162?
1 open source package ship an affected version, including vku.
| Package | Affected | Fixed in |
|---|---|---|
vku crates.io | From 0.0.0-0 | 0.4.0 |
How do I fix RUSTSEC-2025-0162?
Upgrade vku to 0.4.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-2025-0162 being exploited?
There is no known exploitation of RUSTSEC-2025-0162 in the wild and no public exploit code.