CVE-2020-36462: Data race in syncpool
(updated )
Affected versions of this crate unconditionally implements Send for Bucket2. This allows sending non-Send types to other threads. This can lead to data races when non Send types like Cell or Rc are contained inside Bucket2 and sent across thread boundaries. The data races can potentially lead to memory corruption (as demonstrated in the PoC from the original report issue). The flaw was corrected in commit 15b2828
by adding a T: Send bound to the Send impl of Bucket2.
References
- github.com/Chopinsky/byte_buffer/commit/15b282877d1e576de2b337d8162bbf43ed1a0f2d
- github.com/Chopinsky/byte_buffer/issues/2
- github.com/Chopinsky/byte_buffer/tree/master/syncpool
- github.com/advisories/GHSA-vp6r-mrq9-8f4h
- nvd.nist.gov/vuln/detail/CVE-2020-36462
- raw.githubusercontent.com/rustsec/advisory-db/main/crates/syncpool/RUSTSEC-2020-0142.md
- rustsec.org/advisories/RUSTSEC-2020-0142.html
Detect and mitigate CVE-2020-36462 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →