Baremetal emulation

Back to the list of Speakers and Sessions

Ever wanted to make a CPU says Hello world? Or figure how a driver to communicate with hardware? Or how to reverse engineer a bootloader? Then this workshop is for you.

The ultimate goal of this workshop is to make participants understand how they could emulate and debug binaries which runs directly on a CPU, without an underlying operating system. Good examples of such binaries are bootloaders and the kernel of the operating system itself.

To this end, this workshop propose the following:

  • Install a cross compiler toolchain and compile the Qemu emulator from source code.
  • Try code samples with our compiled Qemu
  • Modify these samples to make them work on different machine types
  • Solve CTF challenge with static and dynamic analysis of a more complex binary using Qemu's debugging capabilities.