GHSA-9qxh-258v-666c Multiple soundness issues in `owning_ref`
Unsound APIs in the owning_ref crate allow use-after-free vulnerabilities, potentially leading to code execution or crashes; users should migrate to safer_owning_ref.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Not stated
- Victim action needed
- Not needed
- Fix
- None listed
What is GHSA-9qxh-258v-666c?
GHSA-9qxh-258v-666c is an use after free vulnerability in owning_ref, published on 26 Jan 2022.
Official description
OwningRef::map_with_owneris unsound and may result in a use-after-free.OwningRef::mapis unsound and may result in a use-after-free.OwningRefMut::as_ownerandOwningRefMut::as_owner_mutare unsound and may result in a use-after-free.- The crate violates Rust's aliasing rules, which may cause miscompilations on recent compilers that emit the LLVM
noaliasattribute.
safer_owning_ref is a replacement crate which fixes these issues.
No patched versions of the original crate are available, and the maintainer is unresponsive.
Which versions are affected by GHSA-9qxh-258v-666c?
3 open source packages ship an affected version, including owning_ref.
| Package | Affected | Fixed in |
|---|---|---|
owning_ref crates.io | All versions to 0.4.1 | None |
owning_ref crates.io | All versions to 0.4.1 | None |
owning_ref crates.io | From 0.0.0-0 | None |
How do I fix GHSA-9qxh-258v-666c?
No fix has been published for GHSA-9qxh-258v-666c yet. Limit exposure of the affected software until one is available.
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 GHSA-9qxh-258v-666c being exploited?
There is no known exploitation of GHSA-9qxh-258v-666c in the wild and no public exploit code.
Sources
Also known as RUSTSEC-2022-0040.