实现虚拟机安全隔离的方法与装置制造方法及图纸

技术编号:21300160 阅读:35 留言:0更新日期:2019-06-12 08:04
本发明专利技术实施例提供一种实现虚拟机安全隔离的方法与装置,其中所述方法包括:采用同层地址空间隔离机制,在虚拟化层创建一个安全隔离的执行环境;利用所述安全隔离的执行环境,采用内存动态标记与跟踪策略,将目标虚拟机的内存隔离于非可信的虚拟化执行坏境,并实现所述目标虚拟机与其余虚拟机之间的相互隔离;利用VMCS、扩展页表结构体隐藏和虚拟机退出重定向策略,在所述安全隔离的执行环境中,监控所述目标虚拟机的上下文切换和所述目标虚拟机的地址映射。本发明专利技术实施例采用同层地址空间隔离机制,在非可信虚拟化执行环境中对虚拟机进行高强度的内存隔离,能够有效保证系统性能开销,全面地对虚拟机内存进行隔离,提高系统的安全性。

Method and Device for Realizing Security Isolation of Virtual Machine

The embodiment of the present invention provides a method and device for realizing the security isolation of virtual machines. The method includes: using the same layer address space isolation mechanism to create a security isolation execution environment in the virtualization layer; using the security isolation execution environment, using the memory dynamic marking and tracking strategy to isolate the memory of the target virtual machine from the untrusted virtualization execution. The target virtual machine is isolated from other virtual machines, and the context switching and address mapping of the target virtual machine are monitored in the secure isolated execution environment by using VMCS, extended page table structure hiding and virtual machine exit redirection strategy. The embodiment of the invention adopts the same layer address space isolation mechanism to isolate the virtual machine in a non-trusted virtualization execution environment, which can effectively guarantee the system performance overhead, isolate the virtual machine memory comprehensively and improve the system security.

【技术实现步骤摘要】
实现虚拟机安全隔离的方法与装置
本专利技术实施例涉及计算机操作系统与虚拟化
,更具体地,涉及一种实现虚拟机安全隔离的方法与装置。
技术介绍
云计算技术利用虚拟化技术来给上层的多租户提供资源,但是由于多租户资源隔离性不强,导致上层租户中敏感数据泄露问题严峻,数据安全问题已发展成为一个全球性问题,研究非可信虚拟化执行环境中的虚拟机安全具有十分重要的理论意义和实际应用价值。虚拟机监控器(Hypervisor)在底层给上层虚拟机提供物理资源分配和管理功能,并被授予最高权限。当攻击者攻击虚拟机监控器时,很可能会危及到整个云计算基础设施的安全,并危及租户的数据安全。另外,多租户和虚拟机监控器共享底层的物理资源,攻击者通过跨域攻击和虚拟机逃逸攻击,可对共享同一物理服务器的其它虚拟机进行攻击,泄露其敏感数据。目前针对x86平台非可信虚拟化执行环境中虚拟机敏感数据的安全问题的解决方法中,存在系统运行的性能开销大、实现复杂、移植性差以及对原系统改造较大等问题。另外,当前x86平台上的硬件扩展方法SGX只提供对应用程序的隔离保护,无法提供对整个虚拟机的内存保护,且更改复杂。
技术实现思路
为了克服上述问题或者至少部分地解决上述问题,本专利技术实施例提供一种实现虚拟机安全隔离的方法与装置,用以有效保证系统性能开销,全面地对虚拟机内存进行隔离,提高系统的安全性。第一方面,本专利技术实施例提供一种实现虚拟机安全隔离的方法,包括:采用同层地址空间隔离机制,在虚拟化层创建一个安全隔离的执行环境;利用所述安全隔离的执行环境,采用内存动态标记与跟踪策略,将目标虚拟机的内存隔离于非可信的虚拟化执行坏境,并实现所述目标虚拟机与其余虚拟机之间的相互隔离;利用VMCS结构体、扩展页表关键数据结构隐藏和虚拟机退出重定向策略,在所述安全隔离的执行环境中,监控所述目标虚拟机的上下文切换和所述目标虚拟机的地址映射。第二方面,本专利技术实施例提供一种实现虚拟机安全隔离的装置,包括:地址空间隔离模块,用于采用同层地址空间隔离机制,在虚拟化层创建一个安全隔离的执行环境;虚拟机隔离模块,用于利用所述安全隔离的执行环境,采用内存动态标记与跟踪策略,将目标虚拟机的内存隔离于非可信的虚拟化执行坏境,并实现所述目标虚拟机与其余虚拟机之间的相互隔离;虚拟机监控模块,用于利用VMCS结构体、扩展页表关键数据结构隐藏和虚拟机退出重定向策略,在所述安全隔离的执行环境中,监控所述目标虚拟机的上下文安全切换以及所述目标虚拟机的地址映射。第三方面,本专利技术实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如上第一方面所述的实现虚拟机安全隔离的方法。本专利技术实施例提供的实现虚拟机安全隔离的方法与装置,采用同层地址空间隔离机制,在非可信虚拟化执行环境中对虚拟机进行高强度的内存隔离,能够有效保证系统性能开销,全面地对虚拟机内存进行隔离,提高系统的安全性。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术一实施例提供的实现虚拟机安全隔离的方法的流程示意图;图2为根据本专利技术实施例提供的实现虚拟机安全隔离的方法中创建隔离的地址空间的流程示意图;图3为根据本专利技术实施例提供的实现虚拟机安全隔离的方法中页表访问控制实现过程示意图;图4为根据本专利技术实施例提供的实现虚拟机安全隔离的方法中页表多映射防护的流程示意图;图5为根据本专利技术实施例提供的实现虚拟机安全隔离的方法中页表重映射防护的流程示意图;图6为根据本专利技术实施例提供的实现虚拟机安全隔离的方法中虚拟机退出重定向的流程示意图;图7为本专利技术另一实施例提供的实现虚拟机安全隔离的方法的流程示意图;图8为本专利技术实施例提供的实现虚拟机安全隔离的装置的结构示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术实施例的一部分实施例,而不是全部的实施例。基于本专利技术实施例中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本专利技术实施例保护的范围。目前针对x86平台非可信虚拟化执行环境中虚拟机敏感数据的安全问题的解决方法中,存在系统运行的性能开销大、实现复杂、移植性差以及对原系统改造较大等问题。针对该问题,本专利技术实施例采用同层地址空间隔离机制,在非可信虚拟化执行环境中对虚拟机进行高强度的内存隔离,能够有效保证系统性能开销,全面地对虚拟机内存进行隔离,提高系统的安全性。以下将具体通过多个实施例对本专利技术实施例进行展开说明和介绍。图1为本专利技术一实施例提供的实现虚拟机安全隔离的方法的流程示意图,如图1所示,该方法包括:S101,采用同层地址空间隔离机制,在虚拟化层创建一个安全隔离的执行环境。本专利技术实施例为解决安全隔离执行环境的安全和性能问题,采用创建与虚拟机监控器相同权限级别的安全隔离地址空间,即同层地址空间隔离机制,减小环境切换的性能开销,能够抵御外界破坏该系统的DMA攻击,控制流劫持攻击。具体而言,本专利技术实施例在虚拟化层创建一个安全隔离的执行环境,用于给虚拟机隔离和虚拟机监控提供执行环境,使得关键的事件的处理和关键数据结构的访问在该环境中进行;环境切换给系统带来的性能开销相对较小,且能够保证隔离环境一定的安全性。S102,利用安全隔离的执行环境,采用内存动态标记与跟踪策略,将目标虚拟机的内存隔离于非可信的虚拟化执行坏境,并实现目标虚拟机与其余虚拟机之间的相互隔离。本专利技术实施例为解决虚拟机内存隔离的安全问题,采用内存动态标记与跟踪法,以及物理内存多重映射防护法法实现虚拟机物理内存的高强度隔离。即,将虚拟机隔离于非可信的虚拟化执行坏境,即隔离于非可信的虚拟机监控器,以及其余虚拟机,避免虚拟机上用户敏感数据被不可信虚拟机或者虚拟机监控器恶意访问。S103,利用VMCS结构体、扩展页表关键数据结构隐藏和虚拟机退出重定向策略,在安全隔离的执行环境中,监控目标虚拟机的上下文切换和目标虚拟机的地址映射。本专利技术实施例为解决监控虚拟机关键数据问题,在安全隔离的执行环境中监控虚拟机、宿主机上下文切换以及虚拟机地址映射过程,涉及VMCS结构体、扩展页表结构隐藏的方法,能够抵御控制流攻击,防止物理内存页多重映射,避免用户敏感数据泄露。具体而言,本专利技术实施例监控虚拟机的上下文安全切换过程,在安全隔离的执行环境完成上下文安全切换,阻止系统关键信息被恶意访问。本专利技术实施例提供的实现虚拟机安全隔离的方法,采用同层地址空间隔离机制,在非可信虚拟化执行环境中对虚拟机进行高强度的内存隔离,能够有效保证系统性能开销,全面地对虚拟机内存进行隔离,提高系统的安全性。其中,根据上述各实施例可选的,采用同层地址空间隔离机制,在虚拟化层创建一个安全隔离的执行环境的步骤具体包括:采用同层地址空间隔离机制,创建与虚拟化层相同特权级别的运行隔离空间框架,得到隔离的地址空间;创建当在原地址空间中监控本文档来自技高网...

【技术保护点】
1.一种实现虚拟机安全隔离的方法,其特征在于,包括:采用同层地址空间隔离机制,在虚拟化层创建一个安全隔离的执行环境;利用所述安全隔离的执行环境,采用内存动态标记与跟踪策略,将目标虚拟机的内存隔离于非可信的虚拟化执行坏境,并实现所述目标虚拟机与其余虚拟机之间的相互隔离;利用VMCS结构体、扩展页表关键数据结构隐藏和虚拟机退出重定向策略,在所述安全隔离的执行环境中,监控所述目标虚拟机的上下文切换和所述目标虚拟机的地址映射。

【技术特征摘要】
1.一种实现虚拟机安全隔离的方法,其特征在于,包括:采用同层地址空间隔离机制,在虚拟化层创建一个安全隔离的执行环境;利用所述安全隔离的执行环境,采用内存动态标记与跟踪策略,将目标虚拟机的内存隔离于非可信的虚拟化执行坏境,并实现所述目标虚拟机与其余虚拟机之间的相互隔离;利用VMCS结构体、扩展页表关键数据结构隐藏和虚拟机退出重定向策略,在所述安全隔离的执行环境中,监控所述目标虚拟机的上下文切换和所述目标虚拟机的地址映射。2.根据权利要求1所述的方法,其特征在于,所述采用同层地址空间隔离机制,在虚拟化层创建一个安全隔离的执行环境的步骤具体包括:采用同层地址空间隔离机制,创建与所述虚拟化层相同特权级别的运行隔离空间框架,得到隔离的地址空间;创建当在原地址空间中监控的事件发生时,所述安全隔离的执行环境和原虚拟化执行环境之间的安全切换门,以隐藏所述隔离的地址空间的入口地址,防止破坏所述安全切换门的安全性;当所述虚拟化层不再可信时,对所述隔离的地址空间进行安全防护,以防止破坏所述隔离的地址空间的安全性。3.根据权利要求1所述的方法,其特征在于,所述利用所述安全隔离的执行环境,采用内存动态标记与跟踪策略,将目标虚拟机的内存隔离于非可信的虚拟化执行坏境,并实现所述目标虚拟机与其余虚拟机之间的相互隔离的步骤具体包括:通过绑定扩展页表和所述目标虚拟机,对扩展页表进行标记,并进行动态内存的标记与跟踪;设定共享页接口,以处理共享页问题,并进行虚拟机地址映射时的潜在多映射和重映射攻击防护。4.根据权利要求2所述的方法,其特征在于,所述监控所述目标虚拟机的上下文切换和所述目标虚拟机的地址映射的步骤具体包括:在所述隔离的地址空间中,采用VMCS结构体和扩展页表关键数据结构隐藏策略,监控所述目标虚拟机和虚拟机监控器的上下文切换及虚拟机地址映射;在所述隔离的地址空间中,通过退出重定向策略,完成所述目标虚拟机的退出函数处理。5.根据权...

【专利技术属性】
技术研发人员:涂碧波刘文清张坤
申请(专利权)人:中国科学院信息工程研究所
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1