Register for the AI for Security Summit: Join Figma, Perplexity & Wiz
Vulnerability DatabaseRUSTSEC-2020-0087

RUSTSEC-2020-0087
Rust vulnerability analysis and mitigation

Overview

An issue was discovered in the try-mutex crate versions before 0.3.0 for Rust programming language. The vulnerability was identified and assigned CVE-2020-35924, with the discovery being reported on November 16, 2020. The vulnerability stems from TryMutex implementation that incorrectly allows cross-thread sending of a non-Send type, which could lead to potential security issues in Rust applications using this crate (RustSec Advisory).

Technical details

The technical issue lies in the TryMutex implementation which implements Sync for all types T without proper bounds. The vulnerability occurs because TryMutex should have been bounded by T: Send, similar to the standard library's Mutex implementation. The severity of this vulnerability has been assessed with a CVSS v3.1 Base Score of 5.5 (Medium), with the vector string CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H. The vulnerability has been classified under CWE-787 (Out-of-bounds Write) (NVD Database).

Impact

The vulnerability allows for the unsafe transmission of non-Send types across thread boundaries, which can lead to data races in safe Rust code. This is particularly concerning as it bypasses Rust's core safety guarantees regarding thread safety. For example, it enables smuggling of non-Send types like Rc (Reference Counted smart pointer) across thread boundaries, which could result in memory corruption or undefined behavior (GitHub Issue).

Exploitability

The vulnerability can be exploited in safe Rust code without requiring unsafe blocks. A proof of concept demonstrates the ability to send an Rc (Reference Counted) type across thread boundaries, which should not be possible in safe Rust code. The exploit has been documented and demonstrated by the Rust security research group at Georgia Tech (GitHub Issue).

Mitigation and workarounds

The vulnerability has been fixed in version 0.3.0 of the try-mutex crate. Users are advised to upgrade to this version or later to resolve the security issue. If immediate upgrade is not possible, users should audit their code for any cross-thread usage of TryMutex with non-Send types (RustSec Advisory).

Additional resources


SourceThis report was generated using AI

Related Rust vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-68537HIGH7.5
  • Rust logoRust
  • fulgur
NoYesSep 17, 2026
CVE-2026-68523HIGH7.5
  • Rust logoRust
  • fulgur
NoYesSep 17, 2026
RUSTSEC-2026-0289NONEN/A
  • Rust logoRust
  • pqc_kyber
NoNoSep 17, 2026
RUSTSEC-2026-0287NONEN/A
  • Rust logoRust
  • cosmian_kyber
NoNoSep 17, 2026
RUSTSEC-2026-0286NONEN/A
  • Rust logoRust
  • cryptoki
NoYesSep 16, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management