PT-2020-17618 · Rust · Ticketed Lock

Published

2020-11-17

·

Updated

2021-08-25

·

CVE-2020-36439

CVSS v3.1

8.1

High

VectorAV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
Name of the Vulnerable Software and Affected Versions ticketed lock crate versions prior to 0.3.0
Description The issue allows sending non-Send types to other threads by unconditionally implementing Send for ReadTicket and WriteTicket. This can create data races by cloning types with internal mutability and sending them to other threads, potentially causing memory corruption or other undefined behavior.
Recommendations For versions prior to 0.3.0, update to version 0.3.0 or later, which includes the fix by adding T: Send bounds to Send impls of ReadTicket and WriteTicket. As a temporary workaround, consider avoiding the use of ReadTicket and WriteTicket with non-Send types to minimize the risk of exploitation.

Fix

Race Condition

Buffer Overflow

Found an issue in the description? Have something to add? Feel free to write us 👾

Weakness Enumeration

Related Identifiers

CVE-2020-36439
GHSA-77M6-X95J-75R5
GHSA-GQ4H-F254-7CW9
RUSTSEC-2020-0119

Affected Products

Ticketed Lock