Reversing Ewasm smart contracts 101 - EthCC 2020
I just gave a talk/workshop today (03/2020) at EthCC 2020 (Paris – France), about reversing Ewasm (Ethereum flavored WebAssembly) smart contract.
In this talk, I briefly introduce WebAssembly concepts , Ewasm ethereum specificity and opcodes/instructions. Secondly, I show how to create Ewasm smart contracts and expose different techniques/tools to perform WebAssembly module closed-source analysis. Finally, we go through some basic examples to apply reversing (reverse engineering) on those Ewasm contracts and understand the logic inside.
Here is the summary:
- Introduction to WebAssembly
- What is Ewasm?
- Ewasm execution engine / public testnet
- Solidity/YUL to Ewasm
- Ethereum Contract Interface (ECI)
- Reversing Ewasm Bytecode
- Why?
- Disassembling
- CFG & Call graph
- Examples
- Deployment Bytecode
- Storage contract
- ERC-20
- Conclusion
More details about my courses here.
For consulting, WebAssembly or Rust security private trainings, please DM me on Twitter/LinkedIn or use the following contact form. Thanks
Patrick Ventuzelo / @Pat_Ventuzelo