Jump-Oriented Programming on EVM Opcode

Introduction

Jump-Oriented Programming(JOP) on EVM is like ROP in Ethereum smart contract. It can be used in smart contract honeypot to hide backdoors, and probably can be utilized in other ways at other platforms.

It's been implemented first during Realworld CTF 2018 World Final, the Acoraida Monica challenge, designed by me.

Special thanks to @peter50216, from team 217. He's the only one solved this challenge during the 2-day Realworld CTF, which makes this challenge complete.
Special thanks to @liveoverflow. He made a great video serial to explain his approach and throughts about this challenge:
https://www.youtube.com/watch?v=ozqOlUVKL1s&t=841s
https://www.youtube.com/watch?v=RfL3FcnVbJg
https://www.youtube.com/watch?v=WP-EnGhIYEc

DEFCON27 Blockchain Village Talk

Recently I delivered a talk about EVM JOP at DEFCON27 Blockchain Village, here's the slides:
https://github.com/xhyumiracle/defcon27

If you are interested in details of JOP and etherscan verfication process that weren't included in the slides, leave a message or email to xhyumiracle@gmail.com

Jump-Oriented Programming on EVM Opcode
Share this