基于影子内存的无代理虚拟机进程防护

Shadow Memory-Based Agentless Virtual Machine Process Protection

  • 摘要: 为了提高虚拟机中进程的安全性,避免系统调用表SSDT和系统调用执行流被恶意挂钩,提出一种基于影子内存的无代理虚拟机进程防护方案。首先利用VMM的高特权级在虚拟机的非换页内存区透明构建一块影子内存,通过向影子内存透明注入SSDT和跳转函数,构建全新SSDT和系统调用执行流,保证SSDT和系统调用执行流的完整性。通过主动挂钩影子内存中的SSDT,利用硬件虚拟化的自动陷入机制检测进程的敏感行为,在VMM中过滤针对受保护进程的非法操作,实现无代理的进程防护。实验结果表明,该方案可以有效地对虚拟机中指定进程进行防护并过滤大部分的rootkit攻击,对虚拟机性能的影响在3%以下。

     

    Abstract: To improve security of process in virtual machine (VM) and avoid system service descriptor table (SSDT) and system call execution path being hooked, a agentless method based on shadow memory of protecting process security in VM is proposed. First, a block of shadow memory is constructed in nonpaged pool of VM by using of high privilege level of virtual machine manager (VMM), then new system service descriptor table (SSDT) and system call execution path are injected to shadow memory. The process sensitive behavior is detected by using of characteristic of hardware virtualization and hook technology, and the invalid operation to targeted process is filtered in VMM so as to implement protecting process security without agent in VM. Analysis and test results show that almost all the attacks from rootkits can be prevented, and the targeted process in VM can be protected well with almost no performance loss.

     

/

返回文章
返回