-
-
Notifications
You must be signed in to change notification settings - Fork 4k
Open
Labels
A-AudioSounds playback and modificationSounds playback and modificationA-Build-SystemRelated to build systems or continuous integrationRelated to build systems or continuous integrationC-DependenciesA change to the crates that Bevy depends onA change to the crates that Bevy depends onS-Needs-DesignThis issue requires design work to think about how it would best be accomplishedThis issue requires design work to think about how it would best be accomplished
Description
See https://github.com/bevyengine/bevy/actions/runs/16354938610/job/46210844370?pr=20169
Run cargo deny check advisories
error[vulnerability]: Four unique double-free vulnerabilities triggered via safe APIs
┌─ /home/runner/work/bevy/bevy/Cargo.lock:504:1
│
504 │ slice-ring-buffer 0.3.4 registry+https://github.com/rust-lang/crates.io-index
│ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ security vulnerability detected
│
├ ID: RUSTSEC-2025-0044
├ Advisory: https://rustsec.org/advisories/RUSTSEC-2025-0044
├ The crate [`slice-ring-buffer`](https://crates.io/crates/slice-ring-buffer) was developed as a fork of [`slice-deque`](https://crates.io/crates/slice-deque) to continue maintenance and provide security patches, since the latter has been officially unmaintained ([RUSTSEC-2020-0158](https://rustsec.org/advisories/RUSTSEC-2020-0158.html)).
While `slice-ring-buffer` has addressed some previously reported memory safety issues inherited from its fork origin ([RUSTSEC-2021-0047](https://rustsec.org/advisories/RUSTSEC-2021-0047.html)), it still retains multiple unresolved memory corruption vulnerabilities.
Specifically, we have discovered four new memory safety bugs, each resulting in double-free violations that can occur when only safe APIs are invoked. These vulnerabilities correspond to four distinct safe APIs in the crate, each exposing unsound and vulnerable behavior due to incorrect usage of unsafe code internally.
Unfortunately, the maintainer doesn't have much availability to resolve these issues so there's no concrete timeline for fixes. Community contributions towards fixing these vulnerabilities would be much appreciated.
├ Announcement: https://github.com/LiquidityC/slice_ring_buffer/issues/12
├ Solution: No safe upgrade is available!
├ slice-ring-buffer v0.3.4
└── minimp3_fixed v0.5.4
└── rodio v0.20.1
└── bevy_audio v0.17.0-dev
└── bevy_internal v0.17.0-dev
├── bevy v0.17.0-dev
└── bevy_dylib v0.17.0-dev
└── bevy v0.17.0-dev (*)
advisories FAILED
This is coming in through rodio
, our audio crate.
There are a few possible ways to resolve this:
rodio
might be swapping tosymphonia
- We could swap to
firewheel
, which already uses `symphonia - We could work upstream to help out the maintainer and fix this.
- We could ignore this vulnerability, ideally after checking if it affects us.
Metadata
Metadata
Assignees
Labels
A-AudioSounds playback and modificationSounds playback and modificationA-Build-SystemRelated to build systems or continuous integrationRelated to build systems or continuous integrationC-DependenciesA change to the crates that Bevy depends onA change to the crates that Bevy depends onS-Needs-DesignThis issue requires design work to think about how it would best be accomplishedThis issue requires design work to think about how it would best be accomplished
Type
Projects
Status
No status