CVE-2022-39354
MEDIUM5.9EPSS 0.24%evm incorrect state transition
發布日:2022/10/25修改日:2023/11/8
描述
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.
受影響套件(2)
- crates.io/evmfrom 0, < 0.36.0
- crates.io/evm>= 0.0.0-0, < 0.36.0
CVSS 分數
| 來源 | 版本 | 嚴重程度 | 向量 |
|---|---|---|---|
| osv | CVSS 3.1 | MEDIUM5.9 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N |
參考連結(6)
- ADVISORYhttps://nvd.nist.gov/vuln/detail/CVE-2022-39354
- PATCHhttps://crates.io/crates/evm
- PATCHhttps://github.com/rust-blockchain/evm
- WEBhttps://github.com/rust-blockchain/evm/pull/133
- WEBhttps://github.com/rust-blockchain/evm/security/advisories/GHSA-hhc4-47rh-cr34
- WEBhttps://rustsec.org/advisories/RUSTSEC-2022-0083.html