Sign inSign up

ioterw/tracevm

By ioterw

•Updated over 2 years ago

Track the values and addresses of slots inside the Ethereum contract, as well as tracking logs.

Image
Security
Developer tools
Monitoring & observability
0

919

ioterw/tracevm repository overview

⁠TracEVM

This tool is used to track the values and addresses of slots (storage variables in Solidity) inside the Ethereum contract, as well as tracking logs (Solidity events).

  • Partial symbolic execution provides the complete data on how a specific variable or slot address was calculated
  • Suitable for learning about Solidity internals
  • Written in Go and Python

⁠Config

You can use the sample config to start. Save it as conf.json.

{
    "kv": {
        "engine": "memory",
        "root": ""
    },
    "logger": {
        "opcodes_short": ["e0", "e1"],
        "opcodes": [],
        "final_slots_short": true,
        "final_slots": true,
        "codes_short": false,
        "codes": false,
        "return_data_short": false,
        "return_data": true,
        "logs_short": false,
        "logs": true,
        "sol_view": true
    },
    "output": "http://0.0.0.0:4334",
    "past_unknown": false
}

⁠Running

cat conf.json | docker run --rm -i -p 4334:4334 -p 8545:8545 ioterw/tracevm 

⁠More info

Can be found on Github⁠

Tag summary

Content type

Image

Digest

sha256:29dfeb79d…

Size

75.3 MB

Last updated

over 2 years ago

docker pull ioterw/tracevm