/symbolic-execution-tutorial

Tutorial on Symbolic Execution. Hands-on session is based on the angr framework.

Primary LanguagePython

Symbolic Execution

Slides

Current version of the slides is available here.

Download slides:

  • revision 2020-05-16: PDF
  • revision 2019-12-05: PDF
  • revision 2018-11-29: PDF

Hands-on

Setup

See setup/README.md.

Slide example

You can find the source code, binary (Linux x86_64) and an angr script in the slide-example directory. solve-example.py must be customized, replacing {XXX, YYY, ZZZ} placeholders.

Logic bomb

A Windows PE-32 logic bomb can be found in the bomb/ directory. A very similar bomb for Linux/x86_64 can be found in the linux-bomb/ directory. Source code is not available. The angr script for solving the first phase is called phase-1.py (replace {XXX, YYY, ZZZ} placeholders!).