crossbeam-utils provides atomics, synchronization primitives, scoped threads, and other utilities for concurrent programming in Rust. crossbeam-utils prior to version 0.8.7 incorrectly assumed that the alignment of `{i,u}64` was always the same as `Atomic{I,U}64`. However, the alignment of `{i,u}64` on a 32-bit target can be smaller than `Atomic{I,U}64`. This can cause unaligned memory accesses and data race. Crates using `fetch_*` methods with `AtomicCell<{i,u}64>` are affected by this issue. 32-bit targets without `Atomic{I,U}64` and 64-bit targets are not affected by this issue. This has been fixed in crossbeam-utils 0.8.7. There are currently no known workarounds.
References
Link | Resource |
---|---|
https://github.com/crossbeam-rs/crossbeam/pull/781 | Issue Tracking Patch Third Party Advisory |
https://github.com/crossbeam-rs/crossbeam/releases/tag/crossbeam-utils-0.8.7 | Patch Third Party Advisory |
https://github.com/crossbeam-rs/crossbeam/security/advisories/GHSA-qc84-gqf4-9926 | Exploit Third Party Advisory |
History
No history.
MITRE Information
Status: PUBLISHED
Assigner: GitHub_M
Published: 2022-02-15T18:20:10
Updated: 2022-02-15T18:20:10
Reserved: 2022-01-19T00:00:00
Link: CVE-2022-23639
JSON object: View
NVD Information
Status : Analyzed
Published: 2022-02-15T19:15:08.340
Modified: 2023-02-10T16:28:40.170
Link: CVE-2022-23639
JSON object: View
Redhat Information
No data.