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

CVE-2020-36458: Data races in lexer

August 25, 2021 (updated May 5, 2022)

lexer is a plugin based lexical reader.Affected versions of this crate implements Sync for ReaderResult<T, E> with the trait bound T: Send, E: Send. Since matching on the public enum ReaderResult<T, E> provides access to &T & &E, allowing data race to a non-Sync type T or E. This can result in a memory corruption when multiple threads concurrently access &T or &E. Suggested fix for the bug is change the trait bounds imposed on T & E to be T: Sync, E: Sync.

References

  • github.com/advisories/GHSA-f997-8gxg-r354
  • gitlab.com/nathanfaucett/rs-lexer
  • gitlab.com/nathanfaucett/rs-lexer/-/issues/2
  • nvd.nist.gov/vuln/detail/CVE-2020-36458
  • raw.githubusercontent.com/rustsec/advisory-db/main/crates/lexer/RUSTSEC-2020-0138.md
  • rustsec.org/advisories/RUSTSEC-2020-0138.html

Code Behaviors & Features

Detect and mitigate CVE-2020-36458 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.1.16

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/lexer/CVE-2020-36458.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:39 +0000.