Rust advisories / bunch
Vulnerability HighRUSTSEC-2020-0130 · bunch
RUSTSEC-2020-0130: Bunch<T> unconditionally implements Send/Sync
Short answerA security vulnerability in the bunch crate: Bunch<T> unconditionally implements Send/Sync. High severity (CVSS 8.1). No fixed version: replace the crate or remove the affected code path.
| Crate | bunch |
|---|---|
| Type | Vulnerability (memory-corruption, thread-safety) |
| Affected versions | Every version. |
| Fixed in | none |
| Severity | High, CVSS 8.1 CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H |
| Published | 2020-11-12 |
| Last changed | 2023-11-08 |
| Also known as | CVE-2020-36450, GHSA-jwph-qp5h-f9wj |
What to do
- Find who pulls it in:
cargo tree -i bunch. - Avoid the affected API, or replace the crate.
Details from the advisory
Affected versions of this crate unconditionally implements Send/Sync for Bunch<T>. This allows users to insert T: !Sync to Bunch<T>. It is possible to create a data race to a T: !Sync by invoking the Bunch::get() API (which returns &T) from multiple threads. It is also possible to send T: !Send to other threads by inserting T inside Bunch<T> and sending Bunch<T> to another thread, allowing to create a data race by inserting types like T = Rc<_>.
Such data races can lead to memory corruption.
References
- Package: crates.io/crates/bunch
- Advisory: rustsec.org/advisories/RUSTSEC-2020-0130.html
- Report: github.com/krl/bunch/issues/1
From the RustSec Advisory Database (CC0-1.0) via the OSV export, downloaded Oct 24, 2026. Severity score computed from the published CVSS vector.
Up next
Are you affected?Check your whole dependency treePaste Cargo.lock: every advisory, for your exact versions.Read it next →Also worth your time
Did this answer your question?