muellerberndt / laser-ethereum

Symbolic virtual machine for Ethereum
MIT License
68 stars 20 forks source link

Codesize only modelled as instruction length and missing constants #41

Open konradweiss opened 6 years ago

konradweiss commented 6 years ago

https://github.com/b-mueller/laser-ethereum/blob/d1231fe94589357642404f8432c1e185888c4d87/laser/ethereum/svm.py#L637

The value loaded from codesize in the svm only counts instructions which is to short considering that the argument for PUSHX are not counted but should. Codesize is used when initializing memory in the constructor for example, depending on the provided (bytecode + encoded_constructor_params)

JoranHonig commented 6 years ago

Hi LoCorVin, thanks for the report! This project has been moved to the mythril repository, However, since your report is still a valid problem there, I'll move this over: https://github.com/ConsenSys/mythril/issues/302