Advisory Database
  • Advisories
  • Dependency Scanning
  1. cargo
  2. ›
  3. metrics-util
  4. ›
  5. CVE-2021-45704

CVE-2021-45704: Out-of-bounds Write and Race Condition in metrics-util

January 6, 2022 (updated June 13, 2023)

In the affected versions of the crate, AtomicBucket unconditionally implements Send/Sync traits. Therefore, users can create a data race to the inner T: !Sync by using the AtomicBucket::data_with() API. Such data races can potentially cause memory corruption or other undefined behavior.

The flaw was fixed in commit 8e6daab by adding appropriate Send/Sync bounds to the Send/Sync impl of struct Block (which is a data type contained inside AtomicBucket).

References

  • github.com/advisories/GHSA-cwvc-87xq-pc5m
  • github.com/metrics-rs/metrics
  • github.com/metrics-rs/metrics/commit/8e6daab
  • github.com/metrics-rs/metrics/issues/190
  • nvd.nist.gov/vuln/detail/CVE-2021-45704
  • raw.githubusercontent.com/rustsec/advisory-db/main/crates/metrics-util/RUSTSEC-2021-0113.md
  • rustsec.org/advisories/RUSTSEC-2021-0113.html

Code Behaviors & Features

Detect and mitigate CVE-2021-45704 with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →

Affected versions

All versions before 0.7.0

Fixed versions

  • 0.7.0

Solution

Upgrade to version 0.7.0 or above.

Impact 8.1 HIGH

CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H

Learn more about CVSS

Weakness

  • CWE-362: Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')
  • CWE-787: Out-of-bounds Write

Source file

cargo/metrics-util/CVE-2021-45704.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Wed, 14 May 2025 12:15:48 +0000.