您现在的位置是:课程
VT内核虚拟化基础
2023-01-17 13:22课程 人已围观
课程目标:
VT虚拟化是AMD与英特尔退出的提高硬件利用率的技术,,10年前这种技术已经得到运用,目前国内这种技术还没得到普及,网上也匮乏资料,大部分人只能看指令手册,安全技术人员,可以用来做内存隐藏,反调试,反反调试,RootKits,嵌套虚拟化,无所不用其极,VT调试器就是基于VT虚拟化的一种应用而已!
课程简介:
VT是Intel的硬件虚拟化技术,说到VT,就不得不提虚拟机(例如VMWare)。在硬件还没有支持VT前,系统级的虚拟机其实是很难做的,要考虑的东西非常多(主要是效率问题,因为用软件模拟东西资源开销比较大)。VT技术主要就是为了解决这个问题而诞生的,有了VT后,可以减少非常多的资源开销,让虚拟机的速度接近于真机速度。
那么VT到底是个什么技术呢?
首先要说一下VMM(Virtual Machine Monitor),这个是虚拟机的监控器,监控着虚拟机的运行。比如虚拟机想执行一条指令:cpuid,这个时候被VMM捕捉到,然后VMM去模拟执行这条指令,然后返回给虚拟机,完成了一次vm exit。因为VMM需要执行ring0的指令,所以VMM需要运行在ring0下。
而VT使得CPU进入了一个全新的特殊模式(VMX模式),在这个模式下,CPU可以处于VMX root状态或者VMX non-root状态。处于VMX non-root操作状态下的CPU行为受到了某些方面的限制,关键的共享资源必须运行于VMX root操作状态的监控器的控制之下,并且,对于VMX non-root状态中的任何CPU特权都有效(只要处于VMX non-root状态,ring0 - ring3 都被监控)。因此,将VMM运行于VMX root操作状态,可以轻松监控管理客户操作系统(就是安装在虚拟机里面的操作系统)和客户应用程序(虚拟机里面操作系统里面安装的软件)
1.内核VT虚拟化技术简介
10.初始化Guest状态填充VMCS区域
11.初始化Host状态与EPT的概念
12.通过Windbg学习EPT内存扩展表
13.构建EPT内存页表
14.初始化EPT
15.填充EPT的PML4_PDPT_PDT
16.安装VMX与VMCS
17.调整Msr配置虚拟机运行控制域
18.调整VMExit与Entry控制域
19.填充Guest与Host寄存器状态
2.Win10+VS2017+WDK10的安装
20.VMExitHandler原理与实现
21.VMExit必须处理的退出条件
22.虚拟化测试案例与退出虚拟化
3.Win10内核双机调试环境搭建
4.内核程序开发基础入门
5.开启VMware虚拟化与VT基本原理
6.侵染多核CPU的DPC回调安装
7.检测CPU对VT虚拟化的支持情况
8.初始化VMX与VMCS的非分页内存
9.内存对齐与VMCS第1阶段的初始化