Описание
Py-EVM is vulnerable to arbitrary bytecode injection
Py-EVM v0.2.0-alpha.33 allows attackers to make a vm.execute_bytecode call that triggers computation._stack.values with '"stack": [100, 100, 0]' where b'\x' was expected, resulting in an execution failure because of an invalid opcode. This is reportedly related to "smart contracts can be executed indefinitely without gas being paid."
Ссылки
- https://nvd.nist.gov/vuln/detail/CVE-2018-18920
- https://github.com/ethereum/py-evm/issues/1448
- https://github.com/advisories/GHSA-vqgp-4jgj-5j64
- https://github.com/pypa/advisory-database/tree/main/vulns/py-evm/PYSEC-2018-96.yaml
- https://twitter.com/AlexanderFisher/status/1060923428641878019
- https://twitter.com/NettaLab/status/1060889400102383617
- https://www.reddit.com/r/ethereum/comments/9vkk2g/netta_labs_claim_to_have_found_a_vulnerability_in/e9d3wyx
Пакеты
py-evm
<= 0.2.0a33
Отсутствует
Связанные уязвимости
Py-EVM v0.2.0-alpha.33 allows attackers to make a vm.execute_bytecode call that triggers computation._stack.values with '"stack": [100, 100, 0]' where b'\x' was expected, resulting in an execution failure because of an invalid opcode. This is reportedly related to "smart contracts can be executed indefinitely without gas being paid."
Py-EVM v0.2.0-alpha.33 allows attackers to make a vm.execute_bytecode ...