memo
Patent:METHOD AND APPARATUS FOR HYPERVISOR BASED MONITORING OF SYSTEM INTERACTIONS
- BarklyProtects,Inc.
nitro
- 现版本
- linux:4.9.0
- qemu:2.8.0
- 目标版本
- linux:4.10.2
- qemu:2.6.0
linux
根据apply nitro patch commit更改。
qemu
KVM层面
Extended Feature Enable Register(EFER)
是用来启用SYSCALL/SYSRET
的寄存器。
Intel IA-32e
和64
位在ISA引入了syscall
和sysret
,以及一些型号指定寄存器MSRs,IA32STAR
和IA32LSTAR
。
IA32STAR
保存着CS(code segment)
寄存器的值,表示代码在内存中的存储位置。IA32LSTAR
保存着RIP(Register Instruction Pointer)
寄存器的值,表示syscall指令的目标地址。- RCX寄存器保存着sysret的返回地址。
EPT
- EPT可以设置内存页面可执行不可读,即处理器可以执行该页面指令但是访问数据。
Trap
- trap机制允许hypervisor捕获VM对
IA32LSTAR
MSR任何的读写操作。hypervisor可以修改或模拟对MSR的读写。