GitHub Advisoryadvisory · crates.io

GHSA-4jwq-572w-4388 Memory over-allocation in evm crate

MEDIUM Published 2024-01-30 Modified 2024-01-30 Official page ↗
Aliases
CVE-2021-29511
Ecosystem
crates.io
Packages
evm, evm-core
Severity
Moderate
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Weaknesses
CWE-770, CWE-787
Reviewed
2024-01-30

Affected packages

• crates.io evm: < 0.21.1 → fixed in 0.21.1 • crates.io evm-core: < 0.21.1 → fixed in 0.21.1 • crates.io evm: >= 0.22.0, < 0.22.1 → fixed in 0.22.1 • crates.io evm: >= 0.23.0, < 0.23.1 → fixed in 0.23.1 • crates.io evm: >= 0.24.0, < 0.24.1 → fixed in 0.24.1 • crates.io evm: >= 0.25.0, < 0.25.1 → fixed in 0.25.1 • crates.io evm: >= 0.26.0, < 0.26.1 → fixed in 0.26.1 • crates.io evm-core: >= 0.22.0, < 0.22.1 → fixed in 0.22.1 • crates.io evm-core: >= 0.23.0, < 0.23.1 → fixed in 0.23.1 • crates.io evm-core: >= 0.24.0, < 0.24.1 → fixed in 0.24.1 • crates.io evm-core: >= 0.25.0, < 0.25.1 → fixed in 0.25.1 • crates.io evm-core: >= 0.26.0, < 0.26.1 → fixed in 0.26.1

Description

Impact Prior to the patch, when executing specific EVM opcodes related to memory operations that use `evm_core::Memory::copy_large`, the crate can over-allocate memory when it is not needed, making it possible for an attacker to perform denial-of-service attack. Patches The flaw was corrected in commit `19ade85`. Users should upgrade to `==0.21.1, ==0.23.1, ==0.24.1, ==0.25.1, >=0.26.1`. Workarounds None. Please upgrade your `evm` crate version References Fix commit: https://github.com/rust-blockchain/evm/commit/19ade858c430ab13eb562764a870ac9f8506f8dd For more information If you have any questions or comments about this advisory: • Open an issue in evm repo • Email Wei

Related

Alias · CVE (1)

  • CVE-2021-29511 evm is a pure Rust implementation of Ethereum Virtual Machine. vulnerability

Weakness · CWE (2)

  • CWE-770 Allocation of Resources Without Limits or Throttling weakness
  • CWE-787 Out-of-bounds Write weakness

References