Virtual Machine Introspection: Difference between revisions
(add r2vmi) |
m (add pyvmidbg) |
||
Line 18: | Line 18: | ||
* [http://tklengyel.github.io/drakvuf/ DRAKVUF - Dynamic Malware Analysis] (contains a number of demos) |
* [http://tklengyel.github.io/drakvuf/ DRAKVUF - Dynamic Malware Analysis] (contains a number of demos) |
||
* [https://github.com/Zentific/vmidbg vmidbg Enables debuggers to remotely access and manipulate VM memory, utilizing the virtual machine introspection capabilities of LibVMI] |
* [https://github.com/Zentific/vmidbg vmidbg Enables debuggers to remotely access and manipulate VM memory, utilizing the virtual machine introspection capabilities of LibVMI] |
||
* [https://github.com/Wenzel/r2vmi Hypervisor-Level Debugger based on Radare2/LibVMI] |
* [https://github.com/Wenzel/r2vmi Hypervisor-Level Debugger based on Radare2/LibVMI] |
||
* [https://github.com/Wenzel/pyvmidbg pyvmidbg: LibVMI based GDB stub, a flexible hypervisor-level debugger] |
|||
* [https://github.com/libvmi/libvmi LibVMI on GitHub] |
* [https://github.com/libvmi/libvmi LibVMI on GitHub] |
||
* [http://libvmi.com/ LibVMI Home Page] |
* [http://libvmi.com/ LibVMI Home Page] |
Revision as of 23:02, 20 January 2019
In Xen 4.5, VM introspection using Intel EPT / AMD RVI hardware virtualization functionality was added building on Xen Project Hypervisors Memory Inspection APIs introduced in 2011. In Xen 4.6 a number of significant improvements to Xen’s Virtual Machine Introspection (VMI) subsystems make it the best hypervisor for security applications. Hardware support for VM Functions (VMFunc) available on Intel’s 4th generation Haswell CPUs and Atom Silvermont CPUs decreases overheads. Support for Virtualization Exceptions is now available on Intel’s 5th generation Broadwell CPUs and Atom Goldmont CPUs has significantly reduced latency. VMI support for ARM CPUs has also been added. Further improvements were made in Xen 4.7 and 4.8.
VMI addresses a number of security issues from outside the guest OS without relying on functionality that can be rendered unreliable by advanced malware. The approach works by auditing access of sensitive memory areas using HW support in guests in an unobtrusive way (or maybe better: with minimal overhead) and allows control software running within a dedicated VM to allow or deny attempts to access sensitive memory based on policy and security heuristics.
Key contributors in alphabetical order: Bitdefender, Intel, Novetta, Zentific
Background Information, papers, presentations
- Virtual Machine Introspection: A Security Innovation With New Commercial Applications (2016)
- Hypervisor Extensions for Virtual Machine Memory Introspection (2016)
- TLSkex: Harnessing virtual machine introspection for decrypting TLS communication (2016)
- Stealthy Monitoring with alt2pm (2016)
- Stealthy, Hypervisor-based Malware Analysis (2016)
- Virtual Machine Introspection with Xen (2015)
- VM Introspection: Practical Applications (2015)
- YouTube video (presentation) (2014)
Related Projects
- DRAKVUF - Dynamic Malware Analysis (contains a number of demos)
- vmidbg Enables debuggers to remotely access and manipulate VM memory, utilizing the virtual machine introspection capabilities of LibVMI
- Hypervisor-Level Debugger based on Radare2/LibVMI
- pyvmidbg: LibVMI based GDB stub, a flexible hypervisor-level debugger
- LibVMI on GitHub
- LibVMI Home Page
- The Bitdefender virtual machine introspection library is now on GitHub
Commercial Applications (in alphabetical order)
- AIS IntroVirt (XenServer)
- BitDefender Hypervisor Introspection (for XenServer)
- Zentific Zazen (for Xen Project and XenServer)