PT-2020-17616
CVE-2020-36437
·
Published
2020-11-24
·
Updated
2021-08-25
Description by
CVSS 3.1
8.1
HighMetricsAV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
Name of the Vulnerable Software and Affected Versions
conqueue crate versions prior to 0.4.0
Description
The issue allows sending non-Send types to other threads by invoking
(&QueueSender<T>).send(), which can lead to memory corruption by creating data races with types like Rc<T> or Arc<Cell<T>>.Recommendations
For versions prior to 0.4.0, update to version 0.4.0 or later, which imposes
T: Send to both Send/Sync impls for QueueSender<T>/QueueReceiver<T>. As a temporary workaround, consider restricting the use of QueueSender<T> to prevent sending non-Send types to other threads. Found an issue in the description? Have something to add? Feel free to write us 👾