Skip to content
/ cascade Public

A thin introspection hypervisor framework that allows for low level resource manipulation.

Notifications You must be signed in to change notification settings

POPFD/cascade

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cascade

A thin introspection hypervisor framework

This framework runs a thin hypervisor utilising Intel VT-x to allow granular control of a system.

As this is a introspection style hypervisor all system resources & devices are passed through to the "virtualised" system once initialised. Therefore any operating system of choice can then be loaded as if normal.

Cascade gives the ability to register custom exit handlers for VMEXIT's generated by the guest as well as providing a custom VMCALL interface for registering and executing your own custom callbacks at VMROOT.

An example project is given as a UEFI runtime driver, allowing early boot introspection/blue-pilling of a system. This UEFI runtime driver does not do much apart from load the hypervisor, however it is an example as to how this library can be utilised.

Installation, Compilation & Testing (Ubuntu)

  1. Ensure the following dependencies are installed on your system

    sudo apt-get install qemu qemu-utils ovmf gnu-efi binutils-mingw-w64 gcc-mingw-w64 xorriso mtools cargo cargo install uefi-run

  2. To compile run a simple make command

    make -j $(nproc)

  3. To run the build quickly in a QEMU instance use the EFI run tool (or use ./run-qemu.sh)

    uefi-run -b /usr/share/OVMF/OVMF_CODE.fd -q /usr/bin/qemu-system-x86_64 build/hypervisor.efi

About

A thin introspection hypervisor framework that allows for low level resource manipulation.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published