Read the docs
TI-2021-10219 Aliases CVE-2021-29511GHSA-4jwq-572w-4388

Memory over-allocation in evm crate

Priority LOW 31CWE-770Published · Updated

Key facts

Attack vector
Network
Privileges required
Low
User interaction
None
Attack complexity
Low
Impact type
Denial of service
Confidentiality · integrity · availability
None · None · High
Fix status
Fixed

Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-770.

Summary

evm is a pure Rust implementation of Ethereum Virtual Machine. Prior to the patch, when executing specific EVM opcodes related to memory operations that use `evm_core::Memory::copy_large`, the `evm` crate can over-allocate memory when it is not needed, making it possible for an attacker to perform denial-of-service attack. 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`. There are no workarounds. Please upgrade your `evm` crate version.

Why it matters now

EPSS 0.0128 70th percentileScored 2026-11-07
Fix Fixed evm (rust-blockchain): 0.21.1evm (crates.io): 0.21.1, 0.22.1, 0.23.1 +3+1 more product

SSVC decision points

Not available: CISA has not published SSVC decision points for this record.

Affected products

VendorProductAffected versionsFixed inStatusSource
rust-blockchainevmbefore 0.21.1; = 0.22.0; = 0.23.0; = 0.24.0; = 0.25.00.21.1Patch availableCNA
—evm (crates.io)before 0.21.10.21.1Patch availableGHSA-4jwq-572w-4388
—evm-core (crates.io)before 0.21.10.21.1Patch availableGHSA-4jwq-572w-4388
—evm (crates.io)0.22.0 to before 0.22.10.22.1Patch availableGHSA-4jwq-572w-4388
—evm (crates.io)0.23.0 to before 0.23.10.23.1Patch availableGHSA-4jwq-572w-4388
—evm (crates.io)0.24.0 to before 0.24.10.24.1Patch availableGHSA-4jwq-572w-4388
—evm (crates.io)0.25.0 to before 0.25.10.25.1Patch availableGHSA-4jwq-572w-4388
—evm (crates.io)0.26.0 to before 0.26.10.26.1Patch availableGHSA-4jwq-572w-4388
—evm-core (crates.io)0.22.0 to before 0.22.10.22.1Patch availableGHSA-4jwq-572w-4388
—evm-core (crates.io)0.23.0 to before 0.23.10.23.1Patch availableGHSA-4jwq-572w-4388
—evm-core (crates.io)0.24.0 to before 0.24.10.24.1Patch availableGHSA-4jwq-572w-4388
—evm-core (crates.io)0.25.0 to before 0.25.10.25.1Patch availableGHSA-4jwq-572w-4388
—evm-core (crates.io)0.26.0 to before 0.26.10.26.1Patch availableGHSA-4jwq-572w-4388
  • evm Vendorrust-blockchain Affected before 0.21.1; = 0.22.0; = 0.23.0; = 0.24.0; = 0.25.0 Fixed in 0.21.1 Patch available CNA
  • evm (crates.io) Vendor— Affected before 0.21.1 Fixed in 0.21.1 Patch available GHSA-4jwq-572w-4388
  • evm-core (crates.io) Vendor— Affected before 0.21.1 Fixed in 0.21.1 Patch available GHSA-4jwq-572w-4388
  • evm (crates.io) Vendor— Affected 0.22.0 to before 0.22.1 Fixed in 0.22.1 Patch available GHSA-4jwq-572w-4388
  • evm (crates.io) Vendor— Affected 0.23.0 to before 0.23.1 Fixed in 0.23.1 Patch available GHSA-4jwq-572w-4388
  • evm (crates.io) Vendor— Affected 0.24.0 to before 0.24.1 Fixed in 0.24.1 Patch available GHSA-4jwq-572w-4388
  • evm (crates.io) Vendor— Affected 0.25.0 to before 0.25.1 Fixed in 0.25.1 Patch available GHSA-4jwq-572w-4388
  • evm (crates.io) Vendor— Affected 0.26.0 to before 0.26.1 Fixed in 0.26.1 Patch available GHSA-4jwq-572w-4388
  • evm-core (crates.io) Vendor— Affected 0.22.0 to before 0.22.1 Fixed in 0.22.1 Patch available GHSA-4jwq-572w-4388
  • evm-core (crates.io) Vendor— Affected 0.23.0 to before 0.23.1 Fixed in 0.23.1 Patch available GHSA-4jwq-572w-4388
  • evm-core (crates.io) Vendor— Affected 0.24.0 to before 0.24.1 Fixed in 0.24.1 Patch available GHSA-4jwq-572w-4388
  • evm-core (crates.io) Vendor— Affected 0.25.0 to before 0.25.1 Fixed in 0.25.1 Patch available GHSA-4jwq-572w-4388
  • evm-core (crates.io) Vendor— Affected 0.26.0 to before 0.26.1 Fixed in 0.26.1 Patch available GHSA-4jwq-572w-4388

CPE configurations NVD · 6

CPEVersionsRoleVendor
cpe:2.3:a:evm_project:evm:*:*:*:*:*:rust:*:*up to 0.21.0Vulnerablerust-blockchain
cpe:2.3:a:evm_project:evm:0.22.0:*:*:*:*:rust:*:*0.22.0Vulnerablerust-blockchain
cpe:2.3:a:evm_project:evm:0.23.0:*:*:*:*:rust:*:*0.23.0Vulnerablerust-blockchain
cpe:2.3:a:evm_project:evm:0.24.0:*:*:*:*:rust:*:*0.24.0Vulnerablerust-blockchain
cpe:2.3:a:evm_project:evm:0.25.0:*:*:*:*:rust:*:*0.25.0Vulnerablerust-blockchain
cpe:2.3:a:evm_project:evm:0.26.0:*:*:*:*:rust:*:*0.26.0Vulnerablerust-blockchain
  • cpe:2.3:a:evm_project:evm:*:*:*:*:*:rust:*:* Versions up to 0.21.0 Vulnerable ·rust-blockchain
  • cpe:2.3:a:evm_project:evm:0.22.0:*:*:*:*:rust:*:* Versions 0.22.0 Vulnerable ·rust-blockchain
  • cpe:2.3:a:evm_project:evm:0.23.0:*:*:*:*:rust:*:* Versions 0.23.0 Vulnerable ·rust-blockchain
  • cpe:2.3:a:evm_project:evm:0.24.0:*:*:*:*:rust:*:* Versions 0.24.0 Vulnerable ·rust-blockchain
  • cpe:2.3:a:evm_project:evm:0.25.0:*:*:*:*:rust:*:* Versions 0.25.0 Vulnerable ·rust-blockchain
  • cpe:2.3:a:evm_project:evm:0.26.0:*:*:*:*:rust:*:* Versions 0.26.0 Vulnerable ·rust-blockchain

Remediation

  • Fix · CNA evm (rust-blockchain) Fixed in 0.21.1
  • Fix · GHSA-4jwq-572w-4388 evm (crates.io) Fixed in 0.21.1 Advisory →
  • Fix · GHSA-4jwq-572w-4388 evm-core (crates.io) Fixed in 0.21.1 Advisory →
  • Fix · GHSA-4jwq-572w-4388 evm (crates.io) Fixed in 0.22.1 Advisory →
  • Fix · GHSA-4jwq-572w-4388 evm (crates.io) Fixed in 0.23.1 Advisory →
  • Fix · GHSA-4jwq-572w-4388 evm (crates.io) Fixed in 0.24.1 Advisory →
  • Fix · GHSA-4jwq-572w-4388 evm (crates.io) Fixed in 0.25.1 Advisory →
  • Fix · GHSA-4jwq-572w-4388 evm (crates.io) Fixed in 0.26.1 Advisory →
  • Fix · GHSA-4jwq-572w-4388 evm-core (crates.io) Fixed in 0.22.1 Advisory →
  • Fix · GHSA-4jwq-572w-4388 evm-core (crates.io) Fixed in 0.23.1 Advisory →
  • Fix · GHSA-4jwq-572w-4388 evm-core (crates.io) Fixed in 0.24.1 Advisory →
  • Fix · GHSA-4jwq-572w-4388 evm-core (crates.io) Fixed in 0.25.1 Advisory →
  • Fix · GHSA-4jwq-572w-4388 evm-core (crates.io) Fixed in 0.26.1 Advisory →

Timeline

  1. 2026-10-02 Threatist record created from CVE-2021-29511
  2. 2026-10-03 Alias added: GHSA-4jwq-572w-4388

References

  • TI-2021-17992 Specification non-compliance in JUMPI CVSS 3.1CRITICAL 9.8
  • TI-2024-14354 Erroneous handling of `record_external_operation` error return CVSS 3.1HIGH 7.5
  • TI-2022-18729 evm has incorrect is_static parameter for custom stateful precompiles CVSS 3.1HIGH 7.5

Sources