GitHub Advisoryadvisory · crates.io

GHSA-39xg-8p43-h76x Data races in reffers

MEDIUM Published 2021-08-25 Modified 2023-06-13 Official page ↗
Aliases
CVE-2020-36203
Ecosystem
crates.io
Packages
reffers
Severity
Moderate
CVSS vector
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H
Weaknesses
CWE-362, CWE-787
Reviewed
2021-08-19

Affected packages

• crates.io reffers: < 0.6.1 → fixed in 0.6.1

Description

ARefss is a type that is assumed to contain objects that are Send + Sync. In the affected versions of this crate, Send/Sync traits are unconditionally implemented for ARefss. By using the ARefss::map() API, we can insert a !Send or !Sync object into ARefss. After that, it is possible to create a data race to the inner object of ARefss, which can lead to undefined behavior & memory corruption. The flaw was corrected in commit `6dd7ca0` by adding trait bound V: Send + Sync to ARefss::map() API.

Related

Alias · CVE (1)

  • CVE-2020-36203 An issue was discovered in the reffers crate through 2020-12-01 for Rust. vulnerability

Weakness · CWE (2)

  • CWE-362 Concurrent Execution using Shared Resource with Improper Synchronization weakness
  • CWE-787 Out-of-bounds Write weakness

References