GitHub Advisoryadvisory · crates.io

GHSA-f997-8gxg-r354 Data races in lexer

HIGH Published 2021-08-25 Modified 2022-05-05 Official page ↗
Aliases
CVE-2020-36458
Ecosystem
crates.io
Packages
lexer
Severity
High
CVSS vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
Weaknesses
CWE-362, CWE-77
Reviewed
2021-08-18

Affected packages

• crates.io lexer: <= 0.1.16 (no fix yet)

Description

lexer is a plugin based lexical reader.Affected versions of this crate implements Sync for ReaderResult with the trait bound T: Send, E: Send. Since matching on the public enum ReaderResult 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.

Related

Alias · CVE (1)

  • CVE-2020-36458 An issue was discovered in the lexer crate through 2020-11-10 for Rust. vulnerability

Weakness · CWE (2)

  • CWE-362 Concurrent Execution using Shared Resource with Improper Synchronization weakness
  • CWE-77 Improper Neutralization of Special Elements used in a Command weakness

References