CVE-2022-39354

Source
https://cve.org/CVERecord?id=CVE-2022-39354
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2022-39354.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2022-39354
Aliases
Published
2022-10-25T00:00:00Z
Modified
2026-03-14T03:32:12.285451Z
Severity
  • 5.9 (Medium) CVSS_V3 - CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N CVSS Calculator
Summary
evm has incorrect is_static parameter for custom stateful precompiles
Details

SputnikVM, also called evm, is a Rust implementation of Ethereum Virtual Machine. A custom stateful precompile can use the is_static parameter to determine if the call is executed in a static context (via STATICCALL), and thus decide if stateful operations should be done. Prior to version 0.36.0, the passed is_static parameter was incorrect -- it was only set to true if the call came from a direct STATICCALL opcode. However, once a static call context is entered, it should stay static. The issue only impacts custom precompiles that actually uses is_static. For those affected, the issue can lead to possible incorrect state transitions. Version 0.36.0 contains a patch. There are no known workarounds.

Database specific
{
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/39xxx/CVE-2022-39354.json",
    "cna_assigner": "GitHub_M",
    "cwe_ids": [
        "CWE-670"
    ]
}
References

Affected packages

Git /

Affected ranges

Database specific

unresolved_ranges
[
    {
        "events": [
            {
                "introduced": "0"
            },
            {
                "fixed": "0.36.0"
            }
        ]
    }
]
source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2022-39354.json"