虚拟机中的页面错误注入使得经换出的存储器页面映射到虚拟机虚拟化存储器中的制作方法

文档序号:9635155阅读:389来源:国知局
虚拟机中的页面错误注入使得经换出的存储器页面映射到虚拟机虚拟化存储器中的制作方法
【专利说明】虚拟机中的页面错误注入使得经换出的存储器页面映射到 虚拟机虚拟化存储器中
[0001] 相关申请案
[0002] 本申请案主张2013年7月17日申请的题为"虚拟机中的页面错误注入(Page FaultInjectionInVirtualMachines)"的第61/847, 538号美国临时专利申请案的申请 日期的权益,所述申请案的全部内容以引用方式并入本文中。
【背景技术】
[0003] 本发明涉及用于保护计算机系统免受恶意软件影响的系统及方法。
[0004] 恶意软件(也称为恶意软件(malware))影响全世界范围内的大量计算机系统。恶 意软件呈其许多形式(例如计算机病毒、蠕虫病毒、藏匿技术及间谍软件)向数百万的计算 机用户呈现严重风险,从而使其易遭受数据及敏感信息丢失、身份盗用及生产率的损失以 及其它。
[0005] 硬件虚拟化技术允许产生通常被称为虚拟机的模拟计算机环境,其以许多方式表 现为物理计算机系统。在典型的应用程序(例如服务器整合及基础设施即服务(IAAS))中, 若干虚拟机可在相同的物理机上同时运行,共享其间的硬件资源,从而减小投资及操作成 本。每一虚拟机可与其它虚拟机分开地运行其自己的操作系统及/或软件应用程序。由于 恶意软件的平稳扩散,在此类环境中操作的每一虚拟机潜在地需要恶意软件保护。
[0006] 通常用于所属领域中的虚拟化解决方案包括管理程序,也被称为虚拟机监视器, 其由在计算硬件与虚拟机的操作系统(0S)之间操作的软件的层组成,且具有比相应的0S 多的处理器权限。可在管理程序的权限级别下进行反恶意软件操作。尽管此类配置可增加 安全性,但其引入一层额外的复杂性且可带来较大的计算成本。
[0007] 对针对硬件虚拟化平台开发有效、稳健且可扩展的反恶意软件解决方案存在相当 大的兴趣。

【发明内容】

[0008] 根据一个方面,一种主机系统包括:经配置以操作管理程序及存储器自省引擎的 硬件处理器。所述管理程序经配置以暴露包括虚拟化处理器及虚拟化存储器的虚拟机,所 述虚拟机经配置以利用虚拟化处理器执行目标进程。所述存储器自省引擎在虚拟机外部执 行且经配置以根据虚拟机的页面表确定目标进程的虚拟存储器空间的目标页面是否被换 出虚拟化存储器,且作为响应,当目标页面被换出虚拟化存储器时直接将页面错误注入到 虚拟机中,所述页面错误使得虚拟机的操作系统将目标页面映射到虚拟化存储器的页面。
[0009] 根据另一方面,一种方法包括:利用主机系统的至少一个硬件处理器执行管理程 序,所述管理程序经配置以暴露包括虚拟化处理器及虚拟化存储器的虚拟机,所述虚拟机 进一步经配置以利用所述虚拟化处理器执行目标进程。所述方法进一步包括:利用至少一 个硬件处理器以确定所述目标进程的虚拟存储器空间的目标页面是否被换出虚拟化存储 器,且作为响应,当所述页面被换出所述虚拟化存储器时利用所述至少一个硬件处理器直 接将页面错误注入到所述虚拟机中,所述页面错误使得所述虚拟机的操作系统将所述目标 页面映射到所述虚拟化存储器的页面。
[0010] 根据另一方面,一种非暂时性计算机可读媒体存储指令,所述指令在由主机系统 的至少一个硬件处理器执行时使得所述主机系统形成存储器自省引擎,其中所述主机系统 进一步经配置以执行暴露包括虚拟化处理器及虚拟化存储器的虚拟机的管理程序,所述虚 拟机经配置以利用虚拟化处理器执行目标进程。所述存储器自省引擎在所述虚拟机外部执 行且经配置以根据所述虚拟机的页面表确定所述目标进程的虚拟存储器空间的目标页面 是否被换出所述虚拟存储器,且作为响应,当所述目标页面被换出所述虚拟化存储器时直 接将页面错误注入到所述虚拟机中,所述页面错误使得所述虚拟机的操作系统将所述目标 页面映射到所述虚拟化存储器的页面。
【附图说明】
[0011] 在阅读以下详细的描述之后且在参看图式之后,本发明的前述方面及优点将得到 更好的理解,在图式中:
[0012] 图1展示根据本发明的一些实施例的由在主机系统上执行的管理程序暴露的一 组示范性虚拟机,及保护所述组虚拟机免受恶意软件影响的存储器自省引擎。
[0013] 图2展示根据本发明的一些实施例的主机系统的示范性硬件配置。
[0014] 图3展示根据本发明的一些实施例的被暴露到客户虚拟机的虚拟化硬件的示范 性配置。
[0015] 图4说明根据本发明的一些实施例的在各种处理器权限级别下在主机系统上执 行的软件对象的示范性分层。
[0016] 图5展示根据本发明的一些实施例的存储器地址的示范性映射及存储器页面换 入及换出虚拟化存储器的示范性交换。
[0017] 图6展示根据本发明的一些实施例的由存储器自省引擎执行以保护虚拟机免受 恶意软件影响的步骤的示范性序列。
[0018] 图7展示根据本发明的一些实施例的由存储自省执行以实施直接页面错误注入 的步骤的示范性序列。
[0019] 图8展示根据本发明的一些实施例的说明图6到7的方法的应用的步骤的示范性 序列。
[0020] 图9展示根据本发明的一些实施例的说明图6到7的方法的另一应用的步骤的示 范性序列。
[0021] 图10说明根据本发明的一些实施例的含有目标进程的数据的存储器页面的一组 虚拟地址的示范性确定。
【具体实施方式】
[0022] 在以下描述中,应理解,结构之间所有所列举的连接可为直接可操作的连接或通 过中间结构的间接可操作的连接。一组元件包含一或多个元件。对元件的任何列举被理解 为指代至少一个元件。多个元件包含至少两个元件。除非另外要求,否则任何所描述的方 法步骤无需一定以特定的所说明的次序执行。来源于第二元素的第一元素(举例来说,数 据)包含与第二元素相同的第一元素,也包含通过处理第二元素及任选地其它数据产生的 第一元素。根据参数做出确定或决策包含根据参数及任选地根据其它数据做出确定或决 策。除非另外指定,否则一些量/数据的指示符可为所述量/数据本身或不同于量/数据 本身的指示符。除非另外指定,否则进程为计算机程序(例如应用程序或操作系统的一部 分)的实例,且以具有至少一个执行线程及由操作系统指派到其的虚拟存储器的区段为特 征,相应的区段包括可执行代码。除非另外指定,否则页面表示被个别地映射到主机系统的 物理存储器的虚拟机的最小单元。除非另外指定,否则直接将页面错误注入到虚拟机中包 括:在无需来自操作系统或在相应的虚拟机内执行的其它软件的协助的情况下,在相应的 虚拟机的虚拟化处理器内诱发页面错误事件。此类直接注入不排除操作系统或其它软件响 应于所注入的页面错误而采取动作,例如以处理页面错误。计算机可读媒体包含非暂时性 媒体,例如磁存储媒体、光存储媒体及半导体存储媒体(举例来说,硬盘驱动器、光盘、闪存 存储器、DRAM),也包含通信链路,例如导电电缆及光纤链路。根据一些实施例,本发明尤其 提供包括经编程以执行本文中描述的方法的硬件(举例来说,一或多个处理器)的计算机 系统,以及对指令编码以执行本文中描述的方法的计算机可读媒体。
[0023] 以下描述作为实例但不一定作为限制说明本发明的实施例。
[0024] 图1展示根据本发明的一些实施例的将硬件虚拟化用于恶意软件保护的主机系 统10的示范性配置。主机系统10可表示企业计算装置(例如企业服务器)或终端用户装 置(例如个人计算机或智能手机)。其它示范性主机系统包含娱乐装置(例如TV或游戏 机)或具有存储器及处理器且需要恶意软件保护的任何其它装置。在图1的实例中,主机 系统10执行由管理程序30暴露的一组客户虚拟机32a到b。虚拟机(VM)包括实际的物 理机/计算机系统的抽象(举例来说,软件模拟),所述VM能够运行操作系统及其它应用 程序。管理程序30包含经配置以产生多个虚拟化装置(例如虚拟处理器及虚拟存储器控 制器)且将此类虚拟化装置呈现到软件以替代主机系统10的真实的物理装置的软件。在 一些实施例中,管理程序30允许由主机系统10的硬件资源的多个虚拟机进行的多路复用 (共享)。管理程序30可进一步管理此类多路复用使得每一VM独立地操作且察觉不到主 机系统10上同时执行的其它VM。流行的管理程序的实例包含来自Vmware公司的VMware vSphere?及开源Xen管理程序以及其它。
[0025] 每一VM32a到b可分别执行客户操作系统(0S)34a到b。一组示范性应用程 序42a到d-般表示任何软件应用程序,例如文字处理、图像处理、媒体播放器、数据库、 日历、个人联系人管理、浏览器、游戏、音频通信、数据通信及反恶意软件应用程序以及其 它。操作系统34a到b可包括任何广泛可用的操作系统,例如MicrosoftWindows'?.、 MacOS?、Linux?、iOS?或Android?以及其它。每一0S在虚拟机内执行的应用程序与 相应的VM的虚拟化硬件装置之间提供接口。在以下描述中,在虚拟机的虚拟处理器上执行 的软件被认为在相应的虚拟机内执行。例如,在图1的实例中,应用程序42a到b被认为在 客户VM32a内执行,而应用程序42c到d被认为在客户VM32b内执行。相比之下,管理程 序30被认为在客户VM32a到b外部或下面执行。
[0026] 在一些实施例中,管理程序30包含经配置以执行如下文进一步描述的反恶意软 件操作的存储器自省引擎40。引擎40可被并入到管理程序30中,或可作为与管理程序30 不同且独立于管理程序30但在与管理程序30实质上类似的处理器权限级别下执行的软件 组件而被传递。单一引擎40可经配置以对在主机系统10上执行的多个VM进行恶意软件 保护。
[0027]
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1