Skip to content

Latest commit

 

History

History
33 lines (21 loc) · 2.16 KB

README.md

File metadata and controls

33 lines (21 loc) · 2.16 KB

Stage 0: Setting up DVUEFI Environment

Welcome to DVUEFI!

Before we can begin exploring UEFI vulnerabilities, we must setup our environment. While the environment differs slightly from stage to stage, some elements remain the same.

Compiling EDK II

EDK II is the firmware reference implementation that forms a base for the first two stages (and is used in the last stage also).

We recommend using our docker image to set up the toolchain. See here for instructions on how to build the image and use it to compile the firmware. To use this method, you have to have docker installed on your system.

If you would prefer not to use docker, you can try to install the dependencies that the docker image uses directly on your system, and follow the rest of the instructions as if you were using docker.

Installing QEMU

QEMU can be installed with your package manager, from pre-existing binaries (hosted here for windows), or by compiling it from source.

See also:

  • Compilation instructions for Linux
  • Compilation instructions for Windows (not recommended)

Note: when compiling for Linux, you can configure the build with ./configure --enable-slirp to enable networking, which will be useful for future DVUEFI challenges.

Installing VMware (Only for Stage3: work in progress)

Recently, VMware workstation PRO was made free for personal use.

Unfortunately, we found it quite tricky to obtain the build from the Broadcom website, so we continue using the free VMWare Workstation Player, which can be downloaded for both Windows and Linux from here.

On some Linux installations, we've found that VMWare Player was failing to build some of its required drivers. To fix this, we've used the vmware-host-modules repository.