论文部分内容阅读
虚拟机安全是当前和未来信息安全的基础,是云计算安全的核心内容之一,其重要性不言而喻。然而,一方面,在虚拟机环境下,传统的主机安全问题依然存在,而且还引入了新的安全问题,这使得安全形势更加复杂化;另一方面,虚拟机的架构特性也给安全问题的解决提供了新的思路。为此,本研究从云计算实际应用中的安全问题出发,围绕着虚拟机中代码安全监控、DMA内存数据安全以及网络安全三个方面,研究相应的安全保障及性能优化技术。本文的主要贡献包括:1)提出了基于“首次执行”事件的无代理运行时虚拟机代码安全监控技术。基于客户虚拟机中可执行程序执行过程中的硬件事件序列特征,设计了虚拟机的“首次执行”事件,使得客户机可执行程序代码在被加载到内存后且被CPU执行之前能够被VMM所发现并拦截,从而对代码实施透明的安全检查并能够及时阻止恶意代码的运行,解决了外部监控架构下的语义鸿沟问题。基于该技术思想,进一步提出了无代理运行时虚拟机防病毒技术,解决了传统防病毒工具存在的安全漏洞,避免了防病毒风暴、虚拟机快照回滚漏洞等问题。功能验证和性能测试结果表明,Virt AV不但能够准确、及时地识别并阻止病毒程序,也能够提供较好的性能保证,对于常用的桌面类应用软件能够提供较为满意的性能体验。2)提出了基于IOMMU半虚拟化的虚拟机DMA内存安全保障及其性能优化技术。指出了纯软件模拟设备的DMA安全漏洞问题并分析了导致DMA安全问题的架构设计原因。实现了IOMMU半虚拟化系统,能够统一为模拟设备和硬件直通设备提供I/O地址空间隔离和DMA访问控制功能,解决了虚拟机DMA内存数据安全问题。通过反向转换缓冲区、预分配页面池与最近引用页表指针缓存等性能优化技术,降低了IOMMU半虚拟化开销。网络性能测试表明,采用优化后的PVIOMMU能够达到甚至超过无IOMMU虚拟化环境下的网络性能,相应的CPU资源消耗情况对比也没有明显的差异。3)提出了面向NFV环境的以虚拟机为中心的虚拟网络安全保障及其性能优化技术。提出以虚拟机为中心的轻量级网络安全服务功能链架构,有效防范网络内部发起的攻击。基于TCP/IP协议栈卸载技术,将用户虚拟机和安全虚拟机中的协议栈卸载到专用虚拟机上去,消除了重复的网络包解包和封包操作,提高了网络安全处理效率,降低网络包转发延迟,释放宿主机上的CPU资源。TCP通信延迟测试结果显示,在功能链上只有一台安全虚拟机的情况下,TOSEC能够将网络转发延迟缩小到普通NFV功能链的68%-48%,在功能链上有两台安全虚拟机的情况下,网络转发延迟能够进一步缩小到33%~22%。