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

Slides of the talk is available here and code examples are available directly on my github.

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

FREE Courses & Training

Enter your email and we'll send you a bundle of awesome resources. 100% free - 100% awesome.

Any questions about our services and trainings ?

Get in touch today with any questions that you might have.