slice-deque
Activity
- Latest release
- 6y ago
- Total releases
- 21
- Cadence
- ~12 days
- Last 12 months
- 0
Details
- License
- MIT/Apache-2.0
- First release
- Jan 19, 2018
| Version | Released | |
|---|---|---|
0.3.0
unknown
3 CVEs
GHSA-7mcq-f592-pf7v
RUSTSEC-2025-0044
Jul 16, 2025
Slice Ring Buffer and Slice Deque contains four unique double-free vulnerabilities triggered through safe APIs
High
Network
Low
None
None
The crate While 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. References Updated Oct 28, 2025 · Source: OSV.dev
CVE-2021-29938
GHSA-p9gf-gmfv-398m
RUSTSEC-2021-0047
Aug 25, 2021
Double free in slice-deque
7.5
/ 10
High
Network
Low
None
None
Unchanged
None
None
High
An issue was discovered in the slice-deque crate through 2021-02-19 for Rust. A double drop can occur in SliceDeque::drain_filter upon a panic in a predicate function. References Updated Nov 08, 2023 · Source: OSV.dev
RUSTSEC-2020-0158
Feb 10, 2020
slice-deque is unmaintained The author of the Maintained alternatives: References Updated Nov 18, 2021 · Source: OSV.dev |
0.3.0
unknown
Dependencies (3)
|
|
0.2.4
unknown
3 CVEs
GHSA-7mcq-f592-pf7v
RUSTSEC-2025-0044
Jul 16, 2025
Slice Ring Buffer and Slice Deque contains four unique double-free vulnerabilities triggered through safe APIs
High
Network
Low
None
None
The crate While 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. References Updated Oct 28, 2025 · Source: OSV.dev
CVE-2021-29938
GHSA-p9gf-gmfv-398m
RUSTSEC-2021-0047
Aug 25, 2021
Double free in slice-deque
7.5
/ 10
High
Network
Low
None
None
Unchanged
None
None
High
An issue was discovered in the slice-deque crate through 2021-02-19 for Rust. A double drop can occur in SliceDeque::drain_filter upon a panic in a predicate function. References Updated Nov 08, 2023 · Source: OSV.dev
RUSTSEC-2020-0158
Feb 10, 2020
slice-deque is unmaintained The author of the Maintained alternatives: References Updated Nov 18, 2021 · Source: OSV.dev |
0.2.4
unknown
Dependencies (3)
|
|
0.2.3
unknown
3 CVEs
GHSA-7mcq-f592-pf7v
RUSTSEC-2025-0044
Jul 16, 2025
Slice Ring Buffer and Slice Deque contains four unique double-free vulnerabilities triggered through safe APIs
High
Network
Low
None
None
The crate While 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. References Updated Oct 28, 2025 · Source: OSV.dev
CVE-2021-29938
GHSA-p9gf-gmfv-398m
RUSTSEC-2021-0047
Aug 25, 2021
Double free in slice-deque
7.5
/ 10
High
Network
Low
None
None
Unchanged
None
None
High
An issue was discovered in the slice-deque crate through 2021-02-19 for Rust. A double drop can occur in SliceDeque::drain_filter upon a panic in a predicate function. References Updated Nov 08, 2023 · Source: OSV.dev
RUSTSEC-2020-0158
Feb 10, 2020
slice-deque is unmaintained The author of the Maintained alternatives: References Updated Nov 18, 2021 · Source: OSV.dev |
0.2.3
unknown
Dependencies (3)
|
|
0.2.2
unknown
3 CVEs
GHSA-7mcq-f592-pf7v
RUSTSEC-2025-0044
Jul 16, 2025
Slice Ring Buffer and Slice Deque contains four unique double-free vulnerabilities triggered through safe APIs
High
Network
Low
None
None
The crate While 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. References Updated Oct 28, 2025 · Source: OSV.dev
CVE-2021-29938
GHSA-p9gf-gmfv-398m
RUSTSEC-2021-0047
Aug 25, 2021
Double free in slice-deque
7.5
/ 10
High
Network
Low
None
None
Unchanged
None
None
High
An issue was discovered in the slice-deque crate through 2021-02-19 for Rust. A double drop can occur in SliceDeque::drain_filter upon a panic in a predicate function. References Updated Nov 08, 2023 · Source: OSV.dev
RUSTSEC-2020-0158
Feb 10, 2020
slice-deque is unmaintained The author of the Maintained alternatives: References Updated Nov 18, 2021 · Source: OSV.dev |
0.2.2
unknown
Dependencies (3)
|
|
0.2.0
unknown
3 CVEs
GHSA-7mcq-f592-pf7v
RUSTSEC-2025-0044
Jul 16, 2025
Slice Ring Buffer and Slice Deque contains four unique double-free vulnerabilities triggered through safe APIs
High
Network
Low
None
None
The crate While 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. References Updated Oct 28, 2025 · Source: OSV.dev
CVE-2021-29938
GHSA-p9gf-gmfv-398m
RUSTSEC-2021-0047
Aug 25, 2021
Double free in slice-deque
7.5
/ 10
High
Network
Low
None
None
Unchanged
None
None
High
An issue was discovered in the slice-deque crate through 2021-02-19 for Rust. A double drop can occur in SliceDeque::drain_filter upon a panic in a predicate function. References Updated Nov 08, 2023 · Source: OSV.dev
RUSTSEC-2020-0158
Feb 10, 2020
slice-deque is unmaintained The author of the Maintained alternatives: References Updated Nov 18, 2021 · Source: OSV.dev |
0.2.0
unknown
Dependencies (3)
|
|
0.1.16
unknown
4 CVEs
GHSA-7mcq-f592-pf7v
RUSTSEC-2025-0044
Jul 16, 2025
Slice Ring Buffer and Slice Deque contains four unique double-free vulnerabilities triggered through safe APIs
High
Network
Low
None
None
The crate While 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. References Updated Oct 28, 2025 · Source: OSV.dev
CVE-2021-29938
GHSA-p9gf-gmfv-398m
RUSTSEC-2021-0047
Aug 25, 2021
Double free in slice-deque
7.5
/ 10
High
Network
Low
None
None
Unchanged
None
None
High
An issue was discovered in the slice-deque crate through 2021-02-19 for Rust. A double drop can occur in SliceDeque::drain_filter upon a panic in a predicate function. References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2019-15543
GHSA-c3m3-c39q-pv23
RUSTSEC-2019-0002
Aug 25, 2021
Out of bounds write in slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate entered a corrupted state if mem::size_of::() % allocation_granularity() != 0 and a specific allocation pattern was used: sufficiently shifting the deque elements over the mirrored page boundary. This allows an attacker that controls controls both element insertion and removal to corrupt the deque, such that reading elements from it would read bytes corresponding to other elements in the deque. (e.g. a read of T could read some bytes from one value and some bytes from an adjacent one, resulting in a T whose value representation is not meaningful). This is undefined behavior. The flaw was corrected by using a pair of pointers to track the head and tail of the deque instead of a pair of indices. This pair of pointers are represented using a Rust slice. Fixed in
0.2.0
References Updated Nov 08, 2023 · Source: OSV.dev
RUSTSEC-2020-0158
Feb 10, 2020
slice-deque is unmaintained The author of the Maintained alternatives: References Updated Nov 18, 2021 · Source: OSV.dev |
0.1.16
unknown
Dependencies (3)
|
|
0.1.15
unknown
5 CVEs
GHSA-7mcq-f592-pf7v
RUSTSEC-2025-0044
Jul 16, 2025
Slice Ring Buffer and Slice Deque contains four unique double-free vulnerabilities triggered through safe APIs
High
Network
Low
None
None
The crate While 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. References Updated Oct 28, 2025 · Source: OSV.dev
CVE-2021-29938
GHSA-p9gf-gmfv-398m
RUSTSEC-2021-0047
Aug 25, 2021
Double free in slice-deque
7.5
/ 10
High
Network
Low
None
None
Unchanged
None
None
High
An issue was discovered in the slice-deque crate through 2021-02-19 for Rust. A double drop can occur in SliceDeque::drain_filter upon a panic in a predicate function. References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2019-15543
GHSA-c3m3-c39q-pv23
RUSTSEC-2019-0002
Aug 25, 2021
Out of bounds write in slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate entered a corrupted state if mem::size_of::() % allocation_granularity() != 0 and a specific allocation pattern was used: sufficiently shifting the deque elements over the mirrored page boundary. This allows an attacker that controls controls both element insertion and removal to corrupt the deque, such that reading elements from it would read bytes corresponding to other elements in the deque. (e.g. a read of T could read some bytes from one value and some bytes from an adjacent one, resulting in a T whose value representation is not meaningful). This is undefined behavior. The flaw was corrected by using a pair of pointers to track the head and tail of the deque instead of a pair of indices. This pair of pointers are represented using a Rust slice. Fixed in
0.2.0
References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2018-20995
GHSA-hr3c-6mmp-6m39
RUSTSEC-2018-0008
Aug 25, 2021
Memory corruption slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate did not properly update the head and tail of the deque when inserting and removing elements from the front if, before insertion or removal, the tail of the deque was in the mirrored memory region, and if, after insertion or removal, the head of the deque is exactly at the beginning of the mirrored memory region. An attacker that controls both element insertion and removal into the deque could put it in a corrupted state. Once the deque enters such an state, its head and tail are corrupted, but in bounds of the allocated memory. This can result in partial reads and writes, reads of uninitialized memory, reads of memory containing previously dropped objects, etc. An attacker could exploit this to alter program execution. The flaw was corrected by properly updating the head and tail of the deque in this case. Fixed in
0.1.16
References Updated Nov 08, 2023 · Source: OSV.dev
RUSTSEC-2020-0158
Feb 10, 2020
slice-deque is unmaintained The author of the Maintained alternatives: References Updated Nov 18, 2021 · Source: OSV.dev |
0.1.15
unknown
Dependencies (3)
|
|
0.1.14
unknown
5 CVEs
GHSA-7mcq-f592-pf7v
RUSTSEC-2025-0044
Jul 16, 2025
Slice Ring Buffer and Slice Deque contains four unique double-free vulnerabilities triggered through safe APIs
High
Network
Low
None
None
The crate While 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. References Updated Oct 28, 2025 · Source: OSV.dev
CVE-2021-29938
GHSA-p9gf-gmfv-398m
RUSTSEC-2021-0047
Aug 25, 2021
Double free in slice-deque
7.5
/ 10
High
Network
Low
None
None
Unchanged
None
None
High
An issue was discovered in the slice-deque crate through 2021-02-19 for Rust. A double drop can occur in SliceDeque::drain_filter upon a panic in a predicate function. References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2019-15543
GHSA-c3m3-c39q-pv23
RUSTSEC-2019-0002
Aug 25, 2021
Out of bounds write in slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate entered a corrupted state if mem::size_of::() % allocation_granularity() != 0 and a specific allocation pattern was used: sufficiently shifting the deque elements over the mirrored page boundary. This allows an attacker that controls controls both element insertion and removal to corrupt the deque, such that reading elements from it would read bytes corresponding to other elements in the deque. (e.g. a read of T could read some bytes from one value and some bytes from an adjacent one, resulting in a T whose value representation is not meaningful). This is undefined behavior. The flaw was corrected by using a pair of pointers to track the head and tail of the deque instead of a pair of indices. This pair of pointers are represented using a Rust slice. Fixed in
0.2.0
References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2018-20995
GHSA-hr3c-6mmp-6m39
RUSTSEC-2018-0008
Aug 25, 2021
Memory corruption slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate did not properly update the head and tail of the deque when inserting and removing elements from the front if, before insertion or removal, the tail of the deque was in the mirrored memory region, and if, after insertion or removal, the head of the deque is exactly at the beginning of the mirrored memory region. An attacker that controls both element insertion and removal into the deque could put it in a corrupted state. Once the deque enters such an state, its head and tail are corrupted, but in bounds of the allocated memory. This can result in partial reads and writes, reads of uninitialized memory, reads of memory containing previously dropped objects, etc. An attacker could exploit this to alter program execution. The flaw was corrected by properly updating the head and tail of the deque in this case. Fixed in
0.1.16
References Updated Nov 08, 2023 · Source: OSV.dev
RUSTSEC-2020-0158
Feb 10, 2020
slice-deque is unmaintained The author of the Maintained alternatives: References Updated Nov 18, 2021 · Source: OSV.dev |
0.1.14
unknown
Dependencies (3)
|
|
0.1.13
unknown
5 CVEs
GHSA-7mcq-f592-pf7v
RUSTSEC-2025-0044
Jul 16, 2025
Slice Ring Buffer and Slice Deque contains four unique double-free vulnerabilities triggered through safe APIs
High
Network
Low
None
None
The crate While 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. References Updated Oct 28, 2025 · Source: OSV.dev
CVE-2021-29938
GHSA-p9gf-gmfv-398m
RUSTSEC-2021-0047
Aug 25, 2021
Double free in slice-deque
7.5
/ 10
High
Network
Low
None
None
Unchanged
None
None
High
An issue was discovered in the slice-deque crate through 2021-02-19 for Rust. A double drop can occur in SliceDeque::drain_filter upon a panic in a predicate function. References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2019-15543
GHSA-c3m3-c39q-pv23
RUSTSEC-2019-0002
Aug 25, 2021
Out of bounds write in slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate entered a corrupted state if mem::size_of::() % allocation_granularity() != 0 and a specific allocation pattern was used: sufficiently shifting the deque elements over the mirrored page boundary. This allows an attacker that controls controls both element insertion and removal to corrupt the deque, such that reading elements from it would read bytes corresponding to other elements in the deque. (e.g. a read of T could read some bytes from one value and some bytes from an adjacent one, resulting in a T whose value representation is not meaningful). This is undefined behavior. The flaw was corrected by using a pair of pointers to track the head and tail of the deque instead of a pair of indices. This pair of pointers are represented using a Rust slice. Fixed in
0.2.0
References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2018-20995
GHSA-hr3c-6mmp-6m39
RUSTSEC-2018-0008
Aug 25, 2021
Memory corruption slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate did not properly update the head and tail of the deque when inserting and removing elements from the front if, before insertion or removal, the tail of the deque was in the mirrored memory region, and if, after insertion or removal, the head of the deque is exactly at the beginning of the mirrored memory region. An attacker that controls both element insertion and removal into the deque could put it in a corrupted state. Once the deque enters such an state, its head and tail are corrupted, but in bounds of the allocated memory. This can result in partial reads and writes, reads of uninitialized memory, reads of memory containing previously dropped objects, etc. An attacker could exploit this to alter program execution. The flaw was corrected by properly updating the head and tail of the deque in this case. Fixed in
0.1.16
References Updated Nov 08, 2023 · Source: OSV.dev
RUSTSEC-2020-0158
Feb 10, 2020
slice-deque is unmaintained The author of the Maintained alternatives: References Updated Nov 18, 2021 · Source: OSV.dev |
0.1.13
unknown
Dependencies (3)
|
|
0.1.12
unknown
5 CVEs
GHSA-7mcq-f592-pf7v
RUSTSEC-2025-0044
Jul 16, 2025
Slice Ring Buffer and Slice Deque contains four unique double-free vulnerabilities triggered through safe APIs
High
Network
Low
None
None
The crate While 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. References Updated Oct 28, 2025 · Source: OSV.dev
CVE-2021-29938
GHSA-p9gf-gmfv-398m
RUSTSEC-2021-0047
Aug 25, 2021
Double free in slice-deque
7.5
/ 10
High
Network
Low
None
None
Unchanged
None
None
High
An issue was discovered in the slice-deque crate through 2021-02-19 for Rust. A double drop can occur in SliceDeque::drain_filter upon a panic in a predicate function. References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2019-15543
GHSA-c3m3-c39q-pv23
RUSTSEC-2019-0002
Aug 25, 2021
Out of bounds write in slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate entered a corrupted state if mem::size_of::() % allocation_granularity() != 0 and a specific allocation pattern was used: sufficiently shifting the deque elements over the mirrored page boundary. This allows an attacker that controls controls both element insertion and removal to corrupt the deque, such that reading elements from it would read bytes corresponding to other elements in the deque. (e.g. a read of T could read some bytes from one value and some bytes from an adjacent one, resulting in a T whose value representation is not meaningful). This is undefined behavior. The flaw was corrected by using a pair of pointers to track the head and tail of the deque instead of a pair of indices. This pair of pointers are represented using a Rust slice. Fixed in
0.2.0
References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2018-20995
GHSA-hr3c-6mmp-6m39
RUSTSEC-2018-0008
Aug 25, 2021
Memory corruption slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate did not properly update the head and tail of the deque when inserting and removing elements from the front if, before insertion or removal, the tail of the deque was in the mirrored memory region, and if, after insertion or removal, the head of the deque is exactly at the beginning of the mirrored memory region. An attacker that controls both element insertion and removal into the deque could put it in a corrupted state. Once the deque enters such an state, its head and tail are corrupted, but in bounds of the allocated memory. This can result in partial reads and writes, reads of uninitialized memory, reads of memory containing previously dropped objects, etc. An attacker could exploit this to alter program execution. The flaw was corrected by properly updating the head and tail of the deque in this case. Fixed in
0.1.16
References Updated Nov 08, 2023 · Source: OSV.dev
RUSTSEC-2020-0158
Feb 10, 2020
slice-deque is unmaintained The author of the Maintained alternatives: References Updated Nov 18, 2021 · Source: OSV.dev |
0.1.12
unknown
Dependencies (3)
|
|
0.1.11
unknown
5 CVEs
GHSA-7mcq-f592-pf7v
RUSTSEC-2025-0044
Jul 16, 2025
Slice Ring Buffer and Slice Deque contains four unique double-free vulnerabilities triggered through safe APIs
High
Network
Low
None
None
The crate While 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. References Updated Oct 28, 2025 · Source: OSV.dev
CVE-2021-29938
GHSA-p9gf-gmfv-398m
RUSTSEC-2021-0047
Aug 25, 2021
Double free in slice-deque
7.5
/ 10
High
Network
Low
None
None
Unchanged
None
None
High
An issue was discovered in the slice-deque crate through 2021-02-19 for Rust. A double drop can occur in SliceDeque::drain_filter upon a panic in a predicate function. References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2019-15543
GHSA-c3m3-c39q-pv23
RUSTSEC-2019-0002
Aug 25, 2021
Out of bounds write in slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate entered a corrupted state if mem::size_of::() % allocation_granularity() != 0 and a specific allocation pattern was used: sufficiently shifting the deque elements over the mirrored page boundary. This allows an attacker that controls controls both element insertion and removal to corrupt the deque, such that reading elements from it would read bytes corresponding to other elements in the deque. (e.g. a read of T could read some bytes from one value and some bytes from an adjacent one, resulting in a T whose value representation is not meaningful). This is undefined behavior. The flaw was corrected by using a pair of pointers to track the head and tail of the deque instead of a pair of indices. This pair of pointers are represented using a Rust slice. Fixed in
0.2.0
References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2018-20995
GHSA-hr3c-6mmp-6m39
RUSTSEC-2018-0008
Aug 25, 2021
Memory corruption slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate did not properly update the head and tail of the deque when inserting and removing elements from the front if, before insertion or removal, the tail of the deque was in the mirrored memory region, and if, after insertion or removal, the head of the deque is exactly at the beginning of the mirrored memory region. An attacker that controls both element insertion and removal into the deque could put it in a corrupted state. Once the deque enters such an state, its head and tail are corrupted, but in bounds of the allocated memory. This can result in partial reads and writes, reads of uninitialized memory, reads of memory containing previously dropped objects, etc. An attacker could exploit this to alter program execution. The flaw was corrected by properly updating the head and tail of the deque in this case. Fixed in
0.1.16
References Updated Nov 08, 2023 · Source: OSV.dev
RUSTSEC-2020-0158
Feb 10, 2020
slice-deque is unmaintained The author of the Maintained alternatives: References Updated Nov 18, 2021 · Source: OSV.dev |
0.1.11
unknown
Dependencies (3)
|
|
0.1.10
unknown
5 CVEs
GHSA-7mcq-f592-pf7v
RUSTSEC-2025-0044
Jul 16, 2025
Slice Ring Buffer and Slice Deque contains four unique double-free vulnerabilities triggered through safe APIs
High
Network
Low
None
None
The crate While 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. References Updated Oct 28, 2025 · Source: OSV.dev
CVE-2021-29938
GHSA-p9gf-gmfv-398m
RUSTSEC-2021-0047
Aug 25, 2021
Double free in slice-deque
7.5
/ 10
High
Network
Low
None
None
Unchanged
None
None
High
An issue was discovered in the slice-deque crate through 2021-02-19 for Rust. A double drop can occur in SliceDeque::drain_filter upon a panic in a predicate function. References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2019-15543
GHSA-c3m3-c39q-pv23
RUSTSEC-2019-0002
Aug 25, 2021
Out of bounds write in slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate entered a corrupted state if mem::size_of::() % allocation_granularity() != 0 and a specific allocation pattern was used: sufficiently shifting the deque elements over the mirrored page boundary. This allows an attacker that controls controls both element insertion and removal to corrupt the deque, such that reading elements from it would read bytes corresponding to other elements in the deque. (e.g. a read of T could read some bytes from one value and some bytes from an adjacent one, resulting in a T whose value representation is not meaningful). This is undefined behavior. The flaw was corrected by using a pair of pointers to track the head and tail of the deque instead of a pair of indices. This pair of pointers are represented using a Rust slice. Fixed in
0.2.0
References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2018-20995
GHSA-hr3c-6mmp-6m39
RUSTSEC-2018-0008
Aug 25, 2021
Memory corruption slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate did not properly update the head and tail of the deque when inserting and removing elements from the front if, before insertion or removal, the tail of the deque was in the mirrored memory region, and if, after insertion or removal, the head of the deque is exactly at the beginning of the mirrored memory region. An attacker that controls both element insertion and removal into the deque could put it in a corrupted state. Once the deque enters such an state, its head and tail are corrupted, but in bounds of the allocated memory. This can result in partial reads and writes, reads of uninitialized memory, reads of memory containing previously dropped objects, etc. An attacker could exploit this to alter program execution. The flaw was corrected by properly updating the head and tail of the deque in this case. Fixed in
0.1.16
References Updated Nov 08, 2023 · Source: OSV.dev
RUSTSEC-2020-0158
Feb 10, 2020
slice-deque is unmaintained The author of the Maintained alternatives: References Updated Nov 18, 2021 · Source: OSV.dev |
0.1.10
unknown
Dependencies (3)
|
|
0.1.9
unknown
5 CVEs
GHSA-7mcq-f592-pf7v
RUSTSEC-2025-0044
Jul 16, 2025
Slice Ring Buffer and Slice Deque contains four unique double-free vulnerabilities triggered through safe APIs
High
Network
Low
None
None
The crate While 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. References Updated Oct 28, 2025 · Source: OSV.dev
CVE-2021-29938
GHSA-p9gf-gmfv-398m
RUSTSEC-2021-0047
Aug 25, 2021
Double free in slice-deque
7.5
/ 10
High
Network
Low
None
None
Unchanged
None
None
High
An issue was discovered in the slice-deque crate through 2021-02-19 for Rust. A double drop can occur in SliceDeque::drain_filter upon a panic in a predicate function. References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2019-15543
GHSA-c3m3-c39q-pv23
RUSTSEC-2019-0002
Aug 25, 2021
Out of bounds write in slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate entered a corrupted state if mem::size_of::() % allocation_granularity() != 0 and a specific allocation pattern was used: sufficiently shifting the deque elements over the mirrored page boundary. This allows an attacker that controls controls both element insertion and removal to corrupt the deque, such that reading elements from it would read bytes corresponding to other elements in the deque. (e.g. a read of T could read some bytes from one value and some bytes from an adjacent one, resulting in a T whose value representation is not meaningful). This is undefined behavior. The flaw was corrected by using a pair of pointers to track the head and tail of the deque instead of a pair of indices. This pair of pointers are represented using a Rust slice. Fixed in
0.2.0
References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2018-20995
GHSA-hr3c-6mmp-6m39
RUSTSEC-2018-0008
Aug 25, 2021
Memory corruption slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate did not properly update the head and tail of the deque when inserting and removing elements from the front if, before insertion or removal, the tail of the deque was in the mirrored memory region, and if, after insertion or removal, the head of the deque is exactly at the beginning of the mirrored memory region. An attacker that controls both element insertion and removal into the deque could put it in a corrupted state. Once the deque enters such an state, its head and tail are corrupted, but in bounds of the allocated memory. This can result in partial reads and writes, reads of uninitialized memory, reads of memory containing previously dropped objects, etc. An attacker could exploit this to alter program execution. The flaw was corrected by properly updating the head and tail of the deque in this case. Fixed in
0.1.16
References Updated Nov 08, 2023 · Source: OSV.dev
RUSTSEC-2020-0158
Feb 10, 2020
slice-deque is unmaintained The author of the Maintained alternatives: References Updated Nov 18, 2021 · Source: OSV.dev |
0.1.9
unknown
Dependencies (3)
|
|
0.1.8
unknown
5 CVEs
GHSA-7mcq-f592-pf7v
RUSTSEC-2025-0044
Jul 16, 2025
Slice Ring Buffer and Slice Deque contains four unique double-free vulnerabilities triggered through safe APIs
High
Network
Low
None
None
The crate While 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. References Updated Oct 28, 2025 · Source: OSV.dev
CVE-2021-29938
GHSA-p9gf-gmfv-398m
RUSTSEC-2021-0047
Aug 25, 2021
Double free in slice-deque
7.5
/ 10
High
Network
Low
None
None
Unchanged
None
None
High
An issue was discovered in the slice-deque crate through 2021-02-19 for Rust. A double drop can occur in SliceDeque::drain_filter upon a panic in a predicate function. References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2019-15543
GHSA-c3m3-c39q-pv23
RUSTSEC-2019-0002
Aug 25, 2021
Out of bounds write in slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate entered a corrupted state if mem::size_of::() % allocation_granularity() != 0 and a specific allocation pattern was used: sufficiently shifting the deque elements over the mirrored page boundary. This allows an attacker that controls controls both element insertion and removal to corrupt the deque, such that reading elements from it would read bytes corresponding to other elements in the deque. (e.g. a read of T could read some bytes from one value and some bytes from an adjacent one, resulting in a T whose value representation is not meaningful). This is undefined behavior. The flaw was corrected by using a pair of pointers to track the head and tail of the deque instead of a pair of indices. This pair of pointers are represented using a Rust slice. Fixed in
0.2.0
References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2018-20995
GHSA-hr3c-6mmp-6m39
RUSTSEC-2018-0008
Aug 25, 2021
Memory corruption slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate did not properly update the head and tail of the deque when inserting and removing elements from the front if, before insertion or removal, the tail of the deque was in the mirrored memory region, and if, after insertion or removal, the head of the deque is exactly at the beginning of the mirrored memory region. An attacker that controls both element insertion and removal into the deque could put it in a corrupted state. Once the deque enters such an state, its head and tail are corrupted, but in bounds of the allocated memory. This can result in partial reads and writes, reads of uninitialized memory, reads of memory containing previously dropped objects, etc. An attacker could exploit this to alter program execution. The flaw was corrected by properly updating the head and tail of the deque in this case. Fixed in
0.1.16
References Updated Nov 08, 2023 · Source: OSV.dev
RUSTSEC-2020-0158
Feb 10, 2020
slice-deque is unmaintained The author of the Maintained alternatives: References Updated Nov 18, 2021 · Source: OSV.dev |
0.1.8
unknown
Dependencies (3)
|
|
0.1.6
unknown
5 CVEs
GHSA-7mcq-f592-pf7v
RUSTSEC-2025-0044
Jul 16, 2025
Slice Ring Buffer and Slice Deque contains four unique double-free vulnerabilities triggered through safe APIs
High
Network
Low
None
None
The crate While 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. References Updated Oct 28, 2025 · Source: OSV.dev
CVE-2021-29938
GHSA-p9gf-gmfv-398m
RUSTSEC-2021-0047
Aug 25, 2021
Double free in slice-deque
7.5
/ 10
High
Network
Low
None
None
Unchanged
None
None
High
An issue was discovered in the slice-deque crate through 2021-02-19 for Rust. A double drop can occur in SliceDeque::drain_filter upon a panic in a predicate function. References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2019-15543
GHSA-c3m3-c39q-pv23
RUSTSEC-2019-0002
Aug 25, 2021
Out of bounds write in slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate entered a corrupted state if mem::size_of::() % allocation_granularity() != 0 and a specific allocation pattern was used: sufficiently shifting the deque elements over the mirrored page boundary. This allows an attacker that controls controls both element insertion and removal to corrupt the deque, such that reading elements from it would read bytes corresponding to other elements in the deque. (e.g. a read of T could read some bytes from one value and some bytes from an adjacent one, resulting in a T whose value representation is not meaningful). This is undefined behavior. The flaw was corrected by using a pair of pointers to track the head and tail of the deque instead of a pair of indices. This pair of pointers are represented using a Rust slice. Fixed in
0.2.0
References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2018-20995
GHSA-hr3c-6mmp-6m39
RUSTSEC-2018-0008
Aug 25, 2021
Memory corruption slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate did not properly update the head and tail of the deque when inserting and removing elements from the front if, before insertion or removal, the tail of the deque was in the mirrored memory region, and if, after insertion or removal, the head of the deque is exactly at the beginning of the mirrored memory region. An attacker that controls both element insertion and removal into the deque could put it in a corrupted state. Once the deque enters such an state, its head and tail are corrupted, but in bounds of the allocated memory. This can result in partial reads and writes, reads of uninitialized memory, reads of memory containing previously dropped objects, etc. An attacker could exploit this to alter program execution. The flaw was corrected by properly updating the head and tail of the deque in this case. Fixed in
0.1.16
References Updated Nov 08, 2023 · Source: OSV.dev
RUSTSEC-2020-0158
Feb 10, 2020
slice-deque is unmaintained The author of the Maintained alternatives: References Updated Nov 18, 2021 · Source: OSV.dev |
0.1.6
unknown
Dependencies (3)
|
|
0.1.5
unknown
5 CVEs
GHSA-7mcq-f592-pf7v
RUSTSEC-2025-0044
Jul 16, 2025
Slice Ring Buffer and Slice Deque contains four unique double-free vulnerabilities triggered through safe APIs
High
Network
Low
None
None
The crate While 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. References Updated Oct 28, 2025 · Source: OSV.dev
CVE-2021-29938
GHSA-p9gf-gmfv-398m
RUSTSEC-2021-0047
Aug 25, 2021
Double free in slice-deque
7.5
/ 10
High
Network
Low
None
None
Unchanged
None
None
High
An issue was discovered in the slice-deque crate through 2021-02-19 for Rust. A double drop can occur in SliceDeque::drain_filter upon a panic in a predicate function. References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2019-15543
GHSA-c3m3-c39q-pv23
RUSTSEC-2019-0002
Aug 25, 2021
Out of bounds write in slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate entered a corrupted state if mem::size_of::() % allocation_granularity() != 0 and a specific allocation pattern was used: sufficiently shifting the deque elements over the mirrored page boundary. This allows an attacker that controls controls both element insertion and removal to corrupt the deque, such that reading elements from it would read bytes corresponding to other elements in the deque. (e.g. a read of T could read some bytes from one value and some bytes from an adjacent one, resulting in a T whose value representation is not meaningful). This is undefined behavior. The flaw was corrected by using a pair of pointers to track the head and tail of the deque instead of a pair of indices. This pair of pointers are represented using a Rust slice. Fixed in
0.2.0
References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2018-20995
GHSA-hr3c-6mmp-6m39
RUSTSEC-2018-0008
Aug 25, 2021
Memory corruption slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate did not properly update the head and tail of the deque when inserting and removing elements from the front if, before insertion or removal, the tail of the deque was in the mirrored memory region, and if, after insertion or removal, the head of the deque is exactly at the beginning of the mirrored memory region. An attacker that controls both element insertion and removal into the deque could put it in a corrupted state. Once the deque enters such an state, its head and tail are corrupted, but in bounds of the allocated memory. This can result in partial reads and writes, reads of uninitialized memory, reads of memory containing previously dropped objects, etc. An attacker could exploit this to alter program execution. The flaw was corrected by properly updating the head and tail of the deque in this case. Fixed in
0.1.16
References Updated Nov 08, 2023 · Source: OSV.dev
RUSTSEC-2020-0158
Feb 10, 2020
slice-deque is unmaintained The author of the Maintained alternatives: References Updated Nov 18, 2021 · Source: OSV.dev |
0.1.5
unknown
Dependencies (4)
|
|
0.1.4
unknown
5 CVEs
GHSA-7mcq-f592-pf7v
RUSTSEC-2025-0044
Jul 16, 2025
Slice Ring Buffer and Slice Deque contains four unique double-free vulnerabilities triggered through safe APIs
High
Network
Low
None
None
The crate While 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. References Updated Oct 28, 2025 · Source: OSV.dev
CVE-2021-29938
GHSA-p9gf-gmfv-398m
RUSTSEC-2021-0047
Aug 25, 2021
Double free in slice-deque
7.5
/ 10
High
Network
Low
None
None
Unchanged
None
None
High
An issue was discovered in the slice-deque crate through 2021-02-19 for Rust. A double drop can occur in SliceDeque::drain_filter upon a panic in a predicate function. References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2019-15543
GHSA-c3m3-c39q-pv23
RUSTSEC-2019-0002
Aug 25, 2021
Out of bounds write in slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate entered a corrupted state if mem::size_of::() % allocation_granularity() != 0 and a specific allocation pattern was used: sufficiently shifting the deque elements over the mirrored page boundary. This allows an attacker that controls controls both element insertion and removal to corrupt the deque, such that reading elements from it would read bytes corresponding to other elements in the deque. (e.g. a read of T could read some bytes from one value and some bytes from an adjacent one, resulting in a T whose value representation is not meaningful). This is undefined behavior. The flaw was corrected by using a pair of pointers to track the head and tail of the deque instead of a pair of indices. This pair of pointers are represented using a Rust slice. Fixed in
0.2.0
References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2018-20995
GHSA-hr3c-6mmp-6m39
RUSTSEC-2018-0008
Aug 25, 2021
Memory corruption slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate did not properly update the head and tail of the deque when inserting and removing elements from the front if, before insertion or removal, the tail of the deque was in the mirrored memory region, and if, after insertion or removal, the head of the deque is exactly at the beginning of the mirrored memory region. An attacker that controls both element insertion and removal into the deque could put it in a corrupted state. Once the deque enters such an state, its head and tail are corrupted, but in bounds of the allocated memory. This can result in partial reads and writes, reads of uninitialized memory, reads of memory containing previously dropped objects, etc. An attacker could exploit this to alter program execution. The flaw was corrected by properly updating the head and tail of the deque in this case. Fixed in
0.1.16
References Updated Nov 08, 2023 · Source: OSV.dev
RUSTSEC-2020-0158
Feb 10, 2020
slice-deque is unmaintained The author of the Maintained alternatives: References Updated Nov 18, 2021 · Source: OSV.dev |
0.1.4
unknown
Dependencies (4)
|
|
0.1.3
unknown
5 CVEs
GHSA-7mcq-f592-pf7v
RUSTSEC-2025-0044
Jul 16, 2025
Slice Ring Buffer and Slice Deque contains four unique double-free vulnerabilities triggered through safe APIs
High
Network
Low
None
None
The crate While 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. References Updated Oct 28, 2025 · Source: OSV.dev
CVE-2021-29938
GHSA-p9gf-gmfv-398m
RUSTSEC-2021-0047
Aug 25, 2021
Double free in slice-deque
7.5
/ 10
High
Network
Low
None
None
Unchanged
None
None
High
An issue was discovered in the slice-deque crate through 2021-02-19 for Rust. A double drop can occur in SliceDeque::drain_filter upon a panic in a predicate function. References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2019-15543
GHSA-c3m3-c39q-pv23
RUSTSEC-2019-0002
Aug 25, 2021
Out of bounds write in slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate entered a corrupted state if mem::size_of::() % allocation_granularity() != 0 and a specific allocation pattern was used: sufficiently shifting the deque elements over the mirrored page boundary. This allows an attacker that controls controls both element insertion and removal to corrupt the deque, such that reading elements from it would read bytes corresponding to other elements in the deque. (e.g. a read of T could read some bytes from one value and some bytes from an adjacent one, resulting in a T whose value representation is not meaningful). This is undefined behavior. The flaw was corrected by using a pair of pointers to track the head and tail of the deque instead of a pair of indices. This pair of pointers are represented using a Rust slice. Fixed in
0.2.0
References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2018-20995
GHSA-hr3c-6mmp-6m39
RUSTSEC-2018-0008
Aug 25, 2021
Memory corruption slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate did not properly update the head and tail of the deque when inserting and removing elements from the front if, before insertion or removal, the tail of the deque was in the mirrored memory region, and if, after insertion or removal, the head of the deque is exactly at the beginning of the mirrored memory region. An attacker that controls both element insertion and removal into the deque could put it in a corrupted state. Once the deque enters such an state, its head and tail are corrupted, but in bounds of the allocated memory. This can result in partial reads and writes, reads of uninitialized memory, reads of memory containing previously dropped objects, etc. An attacker could exploit this to alter program execution. The flaw was corrected by properly updating the head and tail of the deque in this case. Fixed in
0.1.16
References Updated Nov 08, 2023 · Source: OSV.dev
RUSTSEC-2020-0158
Feb 10, 2020
slice-deque is unmaintained The author of the Maintained alternatives: References Updated Nov 18, 2021 · Source: OSV.dev |
0.1.3
unknown
Dependencies (4)
|
|
0.1.2
unknown
5 CVEs
GHSA-7mcq-f592-pf7v
RUSTSEC-2025-0044
Jul 16, 2025
Slice Ring Buffer and Slice Deque contains four unique double-free vulnerabilities triggered through safe APIs
High
Network
Low
None
None
The crate While 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. References Updated Oct 28, 2025 · Source: OSV.dev
CVE-2021-29938
GHSA-p9gf-gmfv-398m
RUSTSEC-2021-0047
Aug 25, 2021
Double free in slice-deque
7.5
/ 10
High
Network
Low
None
None
Unchanged
None
None
High
An issue was discovered in the slice-deque crate through 2021-02-19 for Rust. A double drop can occur in SliceDeque::drain_filter upon a panic in a predicate function. References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2019-15543
GHSA-c3m3-c39q-pv23
RUSTSEC-2019-0002
Aug 25, 2021
Out of bounds write in slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate entered a corrupted state if mem::size_of::() % allocation_granularity() != 0 and a specific allocation pattern was used: sufficiently shifting the deque elements over the mirrored page boundary. This allows an attacker that controls controls both element insertion and removal to corrupt the deque, such that reading elements from it would read bytes corresponding to other elements in the deque. (e.g. a read of T could read some bytes from one value and some bytes from an adjacent one, resulting in a T whose value representation is not meaningful). This is undefined behavior. The flaw was corrected by using a pair of pointers to track the head and tail of the deque instead of a pair of indices. This pair of pointers are represented using a Rust slice. Fixed in
0.2.0
References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2018-20995
GHSA-hr3c-6mmp-6m39
RUSTSEC-2018-0008
Aug 25, 2021
Memory corruption slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate did not properly update the head and tail of the deque when inserting and removing elements from the front if, before insertion or removal, the tail of the deque was in the mirrored memory region, and if, after insertion or removal, the head of the deque is exactly at the beginning of the mirrored memory region. An attacker that controls both element insertion and removal into the deque could put it in a corrupted state. Once the deque enters such an state, its head and tail are corrupted, but in bounds of the allocated memory. This can result in partial reads and writes, reads of uninitialized memory, reads of memory containing previously dropped objects, etc. An attacker could exploit this to alter program execution. The flaw was corrected by properly updating the head and tail of the deque in this case. Fixed in
0.1.16
References Updated Nov 08, 2023 · Source: OSV.dev
RUSTSEC-2020-0158
Feb 10, 2020
slice-deque is unmaintained The author of the Maintained alternatives: References Updated Nov 18, 2021 · Source: OSV.dev |
0.1.2
unknown
Dependencies (4)
|
|
0.1.1
unknown
5 CVEs
GHSA-7mcq-f592-pf7v
RUSTSEC-2025-0044
Jul 16, 2025
Slice Ring Buffer and Slice Deque contains four unique double-free vulnerabilities triggered through safe APIs
High
Network
Low
None
None
The crate While 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. References Updated Oct 28, 2025 · Source: OSV.dev
CVE-2021-29938
GHSA-p9gf-gmfv-398m
RUSTSEC-2021-0047
Aug 25, 2021
Double free in slice-deque
7.5
/ 10
High
Network
Low
None
None
Unchanged
None
None
High
An issue was discovered in the slice-deque crate through 2021-02-19 for Rust. A double drop can occur in SliceDeque::drain_filter upon a panic in a predicate function. References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2019-15543
GHSA-c3m3-c39q-pv23
RUSTSEC-2019-0002
Aug 25, 2021
Out of bounds write in slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate entered a corrupted state if mem::size_of::() % allocation_granularity() != 0 and a specific allocation pattern was used: sufficiently shifting the deque elements over the mirrored page boundary. This allows an attacker that controls controls both element insertion and removal to corrupt the deque, such that reading elements from it would read bytes corresponding to other elements in the deque. (e.g. a read of T could read some bytes from one value and some bytes from an adjacent one, resulting in a T whose value representation is not meaningful). This is undefined behavior. The flaw was corrected by using a pair of pointers to track the head and tail of the deque instead of a pair of indices. This pair of pointers are represented using a Rust slice. Fixed in
0.2.0
References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2018-20995
GHSA-hr3c-6mmp-6m39
RUSTSEC-2018-0008
Aug 25, 2021
Memory corruption slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate did not properly update the head and tail of the deque when inserting and removing elements from the front if, before insertion or removal, the tail of the deque was in the mirrored memory region, and if, after insertion or removal, the head of the deque is exactly at the beginning of the mirrored memory region. An attacker that controls both element insertion and removal into the deque could put it in a corrupted state. Once the deque enters such an state, its head and tail are corrupted, but in bounds of the allocated memory. This can result in partial reads and writes, reads of uninitialized memory, reads of memory containing previously dropped objects, etc. An attacker could exploit this to alter program execution. The flaw was corrected by properly updating the head and tail of the deque in this case. Fixed in
0.1.16
References Updated Nov 08, 2023 · Source: OSV.dev
RUSTSEC-2020-0158
Feb 10, 2020
slice-deque is unmaintained The author of the Maintained alternatives: References Updated Nov 18, 2021 · Source: OSV.dev |
0.1.1
unknown
Dependencies (4)
|
|
0.1.0
unknown
5 CVEs
GHSA-7mcq-f592-pf7v
RUSTSEC-2025-0044
Jul 16, 2025
Slice Ring Buffer and Slice Deque contains four unique double-free vulnerabilities triggered through safe APIs
High
Network
Low
None
None
The crate While 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. References Updated Oct 28, 2025 · Source: OSV.dev
CVE-2021-29938
GHSA-p9gf-gmfv-398m
RUSTSEC-2021-0047
Aug 25, 2021
Double free in slice-deque
7.5
/ 10
High
Network
Low
None
None
Unchanged
None
None
High
An issue was discovered in the slice-deque crate through 2021-02-19 for Rust. A double drop can occur in SliceDeque::drain_filter upon a panic in a predicate function. References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2019-15543
GHSA-c3m3-c39q-pv23
RUSTSEC-2019-0002
Aug 25, 2021
Out of bounds write in slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate entered a corrupted state if mem::size_of::() % allocation_granularity() != 0 and a specific allocation pattern was used: sufficiently shifting the deque elements over the mirrored page boundary. This allows an attacker that controls controls both element insertion and removal to corrupt the deque, such that reading elements from it would read bytes corresponding to other elements in the deque. (e.g. a read of T could read some bytes from one value and some bytes from an adjacent one, resulting in a T whose value representation is not meaningful). This is undefined behavior. The flaw was corrected by using a pair of pointers to track the head and tail of the deque instead of a pair of indices. This pair of pointers are represented using a Rust slice. Fixed in
0.2.0
References Updated Nov 08, 2023 · Source: OSV.dev
CVE-2018-20995
GHSA-hr3c-6mmp-6m39
RUSTSEC-2018-0008
Aug 25, 2021
Memory corruption slice-deque
9.8
/ 10
Critical
Network
Low
None
None
Unchanged
High
High
High
Affected versions of this crate did not properly update the head and tail of the deque when inserting and removing elements from the front if, before insertion or removal, the tail of the deque was in the mirrored memory region, and if, after insertion or removal, the head of the deque is exactly at the beginning of the mirrored memory region. An attacker that controls both element insertion and removal into the deque could put it in a corrupted state. Once the deque enters such an state, its head and tail are corrupted, but in bounds of the allocated memory. This can result in partial reads and writes, reads of uninitialized memory, reads of memory containing previously dropped objects, etc. An attacker could exploit this to alter program execution. The flaw was corrected by properly updating the head and tail of the deque in this case. Fixed in
0.1.16
References Updated Nov 08, 2023 · Source: OSV.dev
RUSTSEC-2020-0158
Feb 10, 2020
slice-deque is unmaintained The author of the Maintained alternatives: References Updated Nov 18, 2021 · Source: OSV.dev |
0.1.0
unknown
Dependencies (4)
|