
Cloud Vulnerability DB
A community-led vulnerabilities database
In the standard library in Rust before 1.19.0, there exists a synchronization problem in the MutexGuard object. The vulnerability, identified as CVE-2017-20004, allows MutexGuards to be used across threads with any types, potentially leading to memory safety issues through race conditions (NVD, Rust Issue).
The vulnerability stems from an incorrect implementation where MutexGuard implements Sync whenever T implements Send, which is incorrect. The proper implementation should have MutexGuard implement Sync only when T implements Sync. This synchronization issue can lead to race conditions when using MutexGuard with types like Cell across different threads. The vulnerability has been assigned a CVSS v3.1 Base Score of 5.9 (MEDIUM) with vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N (NVD).
The vulnerability allows for data races when using MutexGuard with certain types across threads. This can lead to memory safety issues and potential undefined behavior in concurrent Rust programs. The issue particularly affects programs that use MutexGuard with types that implement Send but not Sync, allowing for unsynchronized access to shared data (Rust Issue).
The issue was fixed in Rust version 1.19.0 by modifying the implementation to ensure MutexGuard implements Sync only when T implements Sync. Users should upgrade to Rust 1.19.0 or later to address this vulnerability (Rust PR).
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."