Advisory Database
  • Advisories
  • Dependency Scanning
  1. cargo
  2. ›
  3. noise_search
  4. ›
  5. CVE-2020-36461

CVE-2020-36461: Data races in noise_search

August 25, 2021

Affected versions of the noise_search crate unconditionally implement Send/Sync for MvccRwLock. This can lead to data races when types that are either !Send or !Sync (e.g. Rc<T>, Arc<Cell<_>>) are contained inside MvccRwLock and sent across thread boundaries. The data races can potentially lead to memory corruption (as demonstrated in the PoC from the original report issue).

Also, safe APIs of MvccRwLock allow aliasing violations by allowing &T and LockResult<MutexGuard<Box<T>>> to co-exist in conflicting lifetime regions. The APIs of MvccRwLock should either be marked as unsafe or MbccRwLock should be changed to private or pub(crate).

References

  • github.com/advisories/GHSA-wxjf-9f4g-3v44
  • github.com/pipedown/noise
  • github.com/pipedown/noise/issues/72
  • nvd.nist.gov/vuln/detail/CVE-2020-36461
  • rustsec.org/advisories/RUSTSEC-2020-0141.html

Code Behaviors & Features

Detect and mitigate CVE-2020-36461 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 up to 0.7.0

Solution

Unfortunately, there is no solution available yet.

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-77: Improper Neutralization of Special Elements used in a Command ('Command Injection')

Source file

cargo/noise_search/CVE-2020-36461.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:55 +0000.