一种预防虚拟机逃逸攻击的访问控制方法技术

技术编号:14564002 阅读:111 留言:0更新日期:2017-02-05 20:58
本发明专利技术公开了一种预防虚拟机逃逸攻击的访问控制方法,包括四个步骤:步骤1:设置相应的模型元素;步骤2:设置引用监视器;步骤3:运行预防虚拟机逃逸攻击Learning模式,记录系统数据;步骤4:运行预防虚拟机逃逸攻击Enforce模式,进行虚拟机逃逸攻击预判。本发明专利技术中的预防虚拟机逃逸攻击模型可以管理在虚拟化平台中虚拟机与Hypervisor之间的系统调用和资源使用,有效的遏制虚拟机非法权限状态转换,达到预防虚拟机逃逸攻击的目的。

【技术实现步骤摘要】

本专利技术涉及计算机操作系统和虚拟化技术,具体是一种预防虚拟机逃逸攻击的访问控制方法
技术介绍
云计算把IT资源、数据、应用作为一种服务,通过网络提供给用户,这是服务方式的变革,是共享数据模式的改变。目前,全球各IT企业纷纷制定和发布自己的云战略,如谷歌、亚马逊、IBM等已经形成提供大规模全球化计算服务的云计算平台。云计算平台灵活性、可靠性、可扩展性等优势的保持必然要依赖于一些新技术,但这些新技术的使用在给云计算带来保障的同时也带来了一些新的安全风险。云计算的服务类型不同,其技术支撑也不相同,每种服务类型面临的技术风险也有所差异。云计算提供的服务可分为laaS(InfrastructureasaService)、PaaS(PlatformasaService)和SaaS(SoftwareasaService)三个层面。laaS的虚拟化技术、PaaS的分布式处理技术以及SaaS的应用虚拟化技术是构建云计算核心架构的关键技术,也是云计算平台所需要面临技术风险的主要来源。由于上层技术继承下层技术,所以云服务也具有继承的特点,而信息安全风险问题也具有继承的特性,所以上层云服务除了继承下层云服务中已有的技术风险之外,还会有新增的技术风险。我们可将这三层云服务的技术风险继承关系表示为如图1。在2008年,VMWare公司的Workstation产品首次出现虚拟机逃逸攻击,Workstation版本为6.0.2或5.5.4上,攻击者可以利用漏洞(CVE-2008-0923)使得虚拟机逃逸到虚拟机管理器上。虚拟机逃逸攻击的概念最早可追溯至2007年,但相对权威的概念是由KenOwens在2009年提出来。由于逃逸攻击属于laaS层的安全风险,而laaS层存在的安全隐患会导致整个云计算平台安全体系的崩塌,因此倘若云计算环境中发生虚拟机逃逸攻击,则会对整个云平台带来灾难性的损害。英特尔的硬件辅助虚拟化技术(VirtualizationTechnology,VT)是一种设计更简单、实施更高效和可靠的方法,是世界上首个x86平台的硬件辅助虚拟化解决方案。x86处理器共有4个不同优先级(Ring0,Ring1,Ring2,Ring3)。Ring0的优先级最高,Ring3最低。Ring0用于操作系统内核,Ring1和Ring2用于操作系统服务,Ring3用于应用程序。在虚拟化环境中,系统内核必须运行于Ring0,而Hypervisor及其管理下的GuestOS却不能运行于Ring0(否则就无法对所有虚拟机进行有效的管理,就像以往的协同式多任务操作系统无法保证系统的稳健运行一样)。因此,在没有硬件辅助虚拟化的情况下,困难在于如何采用Ring0之外的等级来运行GuestOS。目前主流的解决方法是利用RingDeprivileging(特权等级下降),并具有两种选择:GuestOS运行于Ring1(0/1/3模型),或者Ring3(0/3/3模型)。无论是哪种模型,GuestOS都无法运行于Ring0。如图2所示,Hypervisor运行于根模式下的Ring0,虚拟机模拟器以及宿主机的应用程序运行于根模式下的Ring3,虚拟机中的Kernel运行于非根模式下的Ring0,虚拟机中的应用程序运行于非根模式下的Ring3。在虚拟机逃逸攻击中,攻击者利用恶意应用程序获得该虚拟机的最高权限,即从非根模式的Ring3权限升级到非根模式的Ring0权限,继而可代替该虚拟机执行Hypervisor给予的全部操作。由于虚拟机模拟器与Hypervisor之间通过I/O控制模拟指令进行交互,此时的攻击者便可模拟伪I/O操作来获得根模式下的Ring3权限,之后攻击者便可利用Hypervisor本身存在的漏洞或者将攻击代码注入到Hypervisor,造成Hypervisor的堆栈溢出、默认命令修改等问题,此时的Hypervisor已经被攻陷。由于攻击者已经获得根模式下的Ring0权限,Hypervisor以及宿主机操作系统处于非安全状态,宿主机的数据以及运行在该宿主机上全部虚拟机的运行状态都有可能被攻击或篡改。本专利技术提出的预防虚拟机逃逸攻击的访问控制方法是基于BLP模型的。在访问控制模型中,BLP模型是由D.Bell和J.LaPadula于1973年在《Mathematicalfounda-onesandmodel》中提出并加以完善,它根据军方的安全政策设计,解决的本质问题是对具有密级划分信息的访问控制,即通过制定主体对客体的访问规则和操作权限来保证系统的安全性。BLP模型是从“访问控制”的角度出发,既能保证主体有效的访问客体,又能保证系统的安全性不遭到破坏。
技术实现思路
本专利技术的目的在于提供一种基于BLP模型的预防虚拟机逃逸攻击的访问控制方法,能够对虚拟机逃逸攻击形成良好的控制识别。为实现上述目的,本专利技术提供如下技术方案:一种预防虚拟机逃逸攻击的访问控制方法,在KVM(Kernel-basedVirtualMachine,基于硬件辅助的全虚拟化虚拟机管理器)平台上设计预防虚拟机逃逸攻击(PVME,PreventVirtualMachineEscape)模块,该模块由模型元素、安全公理、状态转换规则三部分组成,以此来适应针对虚拟机逃逸(主要为Hypervisor与虚拟机之间的通信)的场景,实现对虚拟机逃逸攻击的识别和预判,从而做到预防虚拟机逃逸攻击:所述方法包含以下四个步骤:步骤1:设置相应的模型元素;步骤2:设置引用监视器;步骤3:运行PVMELearning模式,记录系统数据;步骤4:运行PVMEEnforce模式,实现对虚拟机逃逸攻击的预判与识别。作为本专利技术进一步的方案:所述的步骤1中,对虚拟机逃逸攻击中的对象设置成相应的主客体及其对应的访问属性集、安全等级、客体层次、访问控制矩阵、请求元素集合、判定集合。作为本专利技术进一步的方案:所述的步骤2中,在主体与客体访问之间加入引用监视器,将主客体的访问信息同步更新到访问控制信息库中。作为本专利技术进一步的方案:所述的步骤3中,在Learning模式下运行的PVME模块,只会将主客体访问之间的访问信息记录到学习矩阵中去。作为本专利技术进一步的方案:所述的步骤4中,在Enforce模式下运行的PVME模块,对主客体之间的访问信息与访问矩阵中数据进行匹配,并做相应的返回。下面对上述PVME模块中的模型元素、安全公理和状态转换规则进行详细说明:一、模型元素主体(Subject):发出访问操作、存取本文档来自技高网
...

【技术保护点】
一种预防虚拟机逃逸攻击的访问控制方法,在KVM平台上设计预防虚拟机逃逸攻击模块,该模块由模型元素、安全公理、状态转换规则三部分组成,实现对虚拟机逃逸攻击的识别和预判,从而做到预防虚拟机逃逸攻击:其特征在于,所述方法包含以下四个步骤:步骤1:设置相应的模型元素;步骤2:设置引用监视器;步骤3:运行预防虚拟机逃逸攻击Learning模式,记录系统数据;步骤4:运行预防虚拟机逃逸攻击Enforce模式,实现对虚拟机逃逸攻击的预判与识别。

【技术特征摘要】
1.一种预防虚拟机逃逸攻击的访问控制方法,在KVM平台上设计预防虚拟机逃逸攻
击模块,该模块由模型元素、安全公理、状态转换规则三部分组成,实现对虚拟机逃逸攻
击的识别和预判,从而做到预防虚拟机逃逸攻击:其特征在于,所述方法包含以下四个步
骤:
步骤1:设置相应的模型元素;
步骤2:设置引用监视器;
步骤3:运行预防虚拟机逃逸攻击Learning模式,记录系统数据;
步骤4:运行预防虚拟机逃逸攻击Enforce模式,实现对虚拟机逃逸攻击的预判与识别。
2.根据权利要求1所述的预防虚拟机逃逸攻击的访问控制方法,其特征在于,所述的
步骤1中,对虚拟机逃逸攻击中的对象设置成相应的主客体及其对应的访问属性集、安全
等级、客体...

【专利技术属性】
技术研发人员:沈国军
申请(专利权)人:上海君是信息科技有限公司
类型:发明
国别省市:上海;31

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

1