Security Resilience

CVE-2024-21629

Evm Project Evm ≤ 0.41.1

Published
02 January 2024
Modified
17 June 2026
Patch / advisory
CVSS Score v3.1 5.9
Click a component to see what it means
Raw vectorCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N
EPSS Score 0.0058 46th percentile
Risk Priority 47 floored blend · peak EPSS

CVSS and EPSS are reproduced from their sources (NVD, FIRST EPSS). Risk Priority is our own derived reading, not an NVD score.

Summary

CVE-2024-21629 is a medium-severity Improper Check or Handling of Exceptional Conditions (CWE-703) vulnerability in Evm Project Evm. Its CVSS base score is 5.9 (Medium).

Operationally, ranked at the 46th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog.

The strongest mitigations our analysis identified map to SC-24 (Fail in Known State) and SI-17 (Fail-safe Procedures) — see the control section below for these in your framework.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

Rust EVM is an Ethereum Virtual Machine interpreter. In `rust-evm`, a feature called `record_external_operation` was introduced, allowing library users to record custom gas changes. This feature can have some bogus interactions with the call stack. In particular, during finalization of…

more

a `CREATE` or `CREATE2`, in the case that the substack execution happens successfully, `rust-evm` will first commit the substate, and then call `record_external_operation(Write(out_code.len()))`. If `record_external_operation` later fails, this error is returned to the parent call stack, instead of `Succeeded`. Yet, the substate commitment already happened. This causes smart contracts able to commit state changes, when the parent caller contract receives zero address (which usually indicates that the execution has failed). This issue only impacts library users with custom `record_external_operation` that returns errors. The issue is patched in release 0.41.1. No known workarounds are available.

CWE(s)

Related Threats

CVEs Like This One

CVE-2026-47316Shared CWE-703
CVE-2026-16218Shared CWE-703
CVE-2023-32230Shared CWE-703
CVE-2024-37992Shared CWE-703
CVE-2026-71640Shared CWE-703
CVE-2024-39514Shared CWE-703
CVE-2025-13016Shared CWE-703
CVE-2026-29643Shared CWE-703
CVE-2026-57445Shared CWE-703
CVE-2026-20640Shared CWE-703

Affected Assets

evm project
evm
≤ 0.41.1

Mitigating Controls

Mitigating Controls (NIST 800-53 r5) AI

Enforces failure to a known state while preserving required properties, limiting impact of unhandled exceptions.

Mandates explicit fail-safe procedures triggered by indicated failures, structurally preventing unhandled exceptional conditions.

Requires application of security engineering principles that include robust exception and error handling during design.

Requires generation of safe, actionable error messages that directly addresses proper handling of exceptional conditions.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

removes

A.8.26 only requires that security requirements (including resilience against attacks like SQL injection) be identified and specified during development or acquisition; it does not itself remove, fix, or eliminate any exceptional-condition handling defects already present in code.

removes

A.8.28 mandates secure coding practices, principles, defect removal during coding/review, and prohibiting insecure techniques that directly produce improper exception handling; this removes most instances of the first-party code defect, with a bounded remainder in incomplete adoption or edge-case defects not captured by the baseline.

Hardening callouts derived

DISA STIG baselines are authored against specific weaknesses. Where this CVE cites a broad weakness class, the mapping is not asserted at that abstraction (owner ruling, 2026-09-25: grade only at Base and below), so no rule is shown here rather than a rule shown against the wrong grain.

  • No fine-grained STIG row for CWE-703, a pillar-level weakness, and none of its children carries one either.

References