Building a Simics-Compatible Windows Kernel Development VM

We will use VirtualBox to create a Windows Kernel Development Virtual machine before converting the VirtualBox Virtual Disk Image (VDI) to the CRAFF format used by Simics.

There are several advantages to creating the image this way:

  • Speed: VirtualBox runs faster than Simics and is easier to work with interactively
  • Compatibility: The image can be used for other purposes
  • Iteration: Speed and compatibility allow iterating on the image contents more quickly
  1. Install VirtualBox
  2. Download Windows
  3. Create a VM
  4. Install Windows
  5. Set Up SSH
  6. Enable SSH Port Forwarding in VirtualBox
  7. Change Default Shell to PowerShell
  8. Installing the EWDK
  9. Installing Development Tools
  10. Install Simics Agent
  11. Clone and Build HEVD
  12. Install the Code Signing Certificate
  13. Install HEVD Driver
  14. Create a Fuzz Harness
  15. Compile the Fuzz Harness
  16. Convert the Image to CRAFF