RUSTSEC-2025-0169 `FormatContext` stream accessors can cause undefined behavior from safe code
Safe Rust code can trigger undefined behavior via out-of-bounds pointer access in stainless_ffmpeg stream accessors, potentially leading to crashes or code execution.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Not stated
- Victim action needed
- Not needed
- Fix
- Available
What is RUSTSEC-2025-0169?
RUSTSEC-2025-0169 is a memory corruption vulnerability in stainless_ffmpeg, published on 24 Apr 2025.
Official description
Affected versions of stainless_ffmpeg exposed several safe public methods on FormatContext that accepted a stream_index parameter and used it in unsafe pointer operations without checking whether the index was valid. These methods performed pointer arithmetic and dereferenced the resulting stream pointer. Safe callers could pass a negative or out-of-bounds stream_index, which could cause out-of-bounds pointer access and undefined behavior from safe Rust code.
The issue was fixed in version 0.6.0 by marking the affected stream accessor methods as unsafe and documenting that callers must ensure stream_index is a valid stream index.
Which versions are affected by RUSTSEC-2025-0169?
1 open source package ship an affected version, including stainless_ffmpeg.
| Package | Affected | Fixed in |
|---|---|---|
stainless_ffmpeg crates.io | From 0.0.0-0 | 0.6.0 |
How do I fix RUSTSEC-2025-0169?
Upgrade stainless_ffmpeg to 0.6.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-0169 being exploited?
There is no known exploitation of RUSTSEC-2025-0169 in the wild and no public exploit code.