high8.1
CVE-2020-36439
Data races in ticketed_lock
Impact
Affected versions of this crate unconditionally implemented Send for ReadTicket<T> & WriteTicket<T>. This allows to send non-Send T to other threads. This can allows creating data races by cloning types with internal mutability and sending them to other threads (as T of ReadTicket<T>/WriteTicket<T>). Such data races can cause memory corruption or other undefined behavior. The flaw was corrected in commit `a986a93` by adding T: Send bounds to Send impls of ReadTicket<T>/WriteTicket<T>.
Affected packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| rust | ticketed_lock | < 0.3.0 | 0.3.0 |
Affected products
| Vendor | Product | Affected versions |
|---|---|---|
| Ticketed Lock Project | Ticketed Lock | before 0.3.0 |
Weakness classification
References
- NVD record
- CVE.org record
- GitHub advisory
- https://raw.githubusercontent.com/rustsec/advisory-db/main/crates/ticketed_lock/RUSTSEC-2020-0119.md
- https://rustsec.org/advisories/RUSTSEC-2020-0119.html
- https://github.com/advisories/GHSA-77m6-x95j-75r5
- https://nvd.nist.gov/vuln/detail/CVE-2020-36439
- https://github.com/kvark/ticketed_lock/issues/7
- https://github.com/kvark/ticketed_lock/commit/a986a9335d591fa5c826157d1674d47aa525357f