Skip to content

GSOC 2020 PROJECT

Svmidbg: developing a Stealthy Hypervisor based VM Introspection Debugger

Svmidbg will be a debugger using virtual machine introspection (VMI) that tries to be stealthy by leveraging hypervisor technologies to create...

Contributor
Christopher Pelloux
Mentors
Tamas Lengyel, Rian Quinn
Organization
The Honeynet ProjectSecurity
Program
GSoC 2020Completed · Advanced difficulty

About this project

Description from the program archive

<p>Svmidbg will be a debugger using virtual machine introspection (VMI) that tries to be stealthy by leveraging hypervisor technologies to create undetectable breakpoints or as Mathieu Tarral calls them, <em>Advanced SoftHyperBreakpoint</em>. These kinds of hypervisor assisted breakpoints use second level address translation (SLAT), also called extended page tables (EPT) by Intel, or nested page table (NPT) by AMD to hide memory and to trap into the hypervisor (i.e. EPT Hooks). Although, it will not try to hide the hypervisor itself.</p> <p>By running under Boxy, an extension of the Bareflank hypervisor, it will effectively turn the current running host OS into a VM, and via VMI, allow kernel debugging similar to LiveKD, but unlike LiveKD, the host OS won't know it is being debugged. A companion PC connected via UART will control the debugger.</p> <p>Svmidbg will also target the Xen hypervisor with Drakvuf and its use of altp2m for stealthy breakpoints. I have worked on this part until now and will reuse work on the GDB protocol for this GSoC. The Boxy integration with LibVMI will be the main work of this GSoC. It will run on Linux (host and target) and on Windows (host with Bareflank only and target).</p>

Tags

AIUX

From the people who did it

No proposal or progress posts shared yet

Worked on this project? Share the proposal that got you selected and the posts you wrote.

Claim this project
  1. Improve cloning & serving functionality for Snare

    mzfrMentored by Evgeniia Tokarchuk, Lukas Rist

  2. libmicrovmi – full bindings to Xen and KVM

    Arnab DuttaMentored by Mathieu Tarral, rageagainsthepc

  3. Improving the usability of mitmproxy with new features

    Martin PlattnerMentored by Maximilian Hils

  4. HosTaGe: a mobile honeypot

    Irini LygerouMentored by Shreyas Srinivasa, E. Vasilomanolakis

  5. Analytical malware classification

    Armin HuremagicMentored by Ricardo van Zutphen

  6. New Web Interface for IntelOwl & Adding New Analyzers

    Eshaan BansalMentored by Pietro Delsante, Matteo Lodi

  7. Expanding Clang-Tidy to include AUTOSAR compliance

    YannanMentored by Tamas Lengyel, Rian Quinn

  8. Tenjint Orchestration framework

    Aman AhujaMentored by Sebastian Vogl, pfohjo

  9. LibVMI as a Unikraft Application

    felix bMentored by Tamas Lengyel, Sergej Proskurin

Data: Google Summer of Code public archive. This project in the official archive