当前位置: 首页 > 专利查询>英特尔公司专利>正文

已中断事件的安全处置制造技术

技术编号:9742042 阅读:120 留言:0更新日期:2014-03-07 05:19
本公开的各种实施例可描述用于减少通过在程序之间切换存储页面许可视图而引起的系统等待时间同时仍保护存储器的临界区域免受恶意软件的攻击的方法、设备和系统。其它实施例可被公开并要求权利。

【技术实现步骤摘要】
【国外来华专利技术】已中断事件的安全处置
一般而言,本公开涉及数据处理领域,具体地说,涉及使用虚拟化中断描述符表(VIDT)来访问保证安全的中断处理程序,其具有对虚拟化的具体应用,例如减少系统等待时间同时防止恶意软件攻击。
技术介绍
除非在本文另有指出,否则在这部分中描述的资料对于本申请中的权利要求书而言不是现有技术,并且不准许通过包含在这部分中而成为现有技术。传统操作系统(OS)可在多个特权级下操作,这些特权级对于某一实现也被称为环级。在这些环级当中,受保护程序(诸如内核的部分)通常在最高特权级操作(环0),而未受保护程序(诸如用户级应用)通常在较低特权级操作(例如环3)。基于环的特权模型可掩蔽受保护程序免受未受保护程序的影响。然而,将所有受保护程序都指配到同一环中是一体化保护模型。像这样,这种操作环境对于来自能够赢得更高特权级的恶意软件(病毒/rootkit)的攻击可能仍是脆弱的。一旦恶意软件被升高到更高特权级(例如环0),它就可能具有拦截和改变系统信息的能力,并且可移除其存在的所有痕迹,由此防止检测到该恶意软件。像这样,恶意软件(诸如rootkit)可能难以检测到。在某些情况下,即便检测到了,修复或移除这些恶意软件可能也是困难的。该暴露在具有多个虚拟机的虚拟化上下文中被进一步放大了,其中一个虚拟机中的损害可能将其它虚拟机置于风险中。附图说明本公开的实施例将通过在附图中示出的示范例证(而非限制)进行描述,附图中相似的标记表示类似的要素,并且附图中:图1是例证根据本公开的各种实施例的存储器视图切换指令的示例用法的框图;图2是例证根据本公开的各种实施例减少异步事件期间系统等待时间的VIDT的示例用法的框图;图3是例证根据本公开的各种实施例与建立客OS的VIDT关联的所选操作的流程图;图4是例证根据本公开的各种实施例的VIDT退出桩模块的所选操作的流程图;图5是例证根据本公开的各种实施例的VIDT重进入桩模块的所选操作的流程图;图6例证了根据本公开的各种实施例具有VIDT支持的示例计算装置的框图;图7是例证根据本公开的各种实施例与所描述的方法和/或设备的各种方面结合的示例计算机系统的框图。具体实施方式在如下详细描述中,参考了形成其一部分的附图,并且其中借助于可在其中实施本公开的例证实施例示出了。要理解,可利用其它实施例,并且可进行结构或逻辑改变,而没有脱离本公开的范围。因此,如下详细描述不被视为限制性意义,并且根据本公开的实施例范围由所附权利要求书以及它们的等效方案来定义。各种操作可以用可有助于理解本公开实施例的方式来依次描述为多个分立操作;然而,描述的次序不应该被视为暗示这些操作是次序相关的。为了描述的目的,以“A/B”形式或以“A和/或B”形式的短语意味着(A)、(B)或(A和B)。为了描述的目的,以“A、B和C中至少一个”形式的短语意味着(A)、(B)、(C)、(A和B)、(A和C)、(B和C)或(A、B和C)。为了描述的目的,以“(A)B”形式的短语意味着(B)或(AB),也就是说,A是可选要素。该描述可使用短语“在一个实施例中”或“在实施例中”,它们各指的是相同或不同实施例中的一个或多个实施例。而且,相对于本公开的实施例所使用的术语“包括”、“包含”、“具有”等是同义的。除非在本公开中另有规定,否则术语“处理器”指的是物理计算机芯片和集成电路,它们可使用半导体材料和导体材料制作。处理器的示例是由英特尔公司制造的中央处理单元(CPU)。另外,除非在本公开中另有规定,否则处理器可包含一个或多个处理单元,这些单元可被称为处理器的“核”。除非在本公开中另有规定,否则诸如“程序”、“过程”、“线程”、“桩模块”、“代码”等术语指的是处理器或处理器核的执行路径,并且可被视为同义的。本公开的各种实施例可描述与使用VIDT来访问被保证安全的中断处理程序关联的方法、设备和系统,所述方法、设备和系统可减少当在程序之间切换存储页面许可视图时的系统等待时间,以保护存储器的临界区域免受恶意软件的攻击。随着虚拟化技术的进步,管理计算机系统上操作的多个虚拟机的虚拟机管理器(VMM)可为计算系统提供细粒化保护,同时保持与传统操作系统以及基于它们特权的保护方案的兼容性。这种虚拟化系统中的程序除了传统的特权级之外还可在虚拟机扩展(VMX)根模式或VMX非根模式下操作。VMM可允许运行在VMX根模式的程序监视和保护由在VMX非根模式操作的程序所访问的资源。VMM还可管理基于硬件的页面表,该页面表便于将计算机系统的存储器的客物理存储地址转变成主物理存储地址。这个基于硬件的页面表的示例可包含由在加利福尼亚圣克拉拉的英特尔公司制造的某些处理器中可用的扩展页面表(EPT)。在各种实施例中,VMM可配置成通过约束对存储器的一个或多个物理存储页面的访问来保护这些存储页面。在VMM根模式下操作的系统根代理可由VMM设立,使得向系统根代理驻留在其中的任何受保护主存储页面进行写入的任何尝试都可被处理器捕获,并作为违反来报告给VMM。除非在本公开中另有规定,否则术语“主存储页面”或简称为“存储页面”指的是映射到由VMM和/或EPT来管理的计算系统的物理存储器的存储页面,而非由具体虚拟机(VM)和/或其页面表来管理的虚拟存储页面。在各种实施例中,一旦系统根代理运行良好,它就可为系统的其它存储区域建立附加保护。例如,该系统根代理可约束过程读、写和/或执行存储在主存储页面中的内容的能力。对访问主存储页面的这些约束可被称为许可视图。一个或多个存储页面的许可视图可在EPT中编码,并且受VMM控制。因此,VMM可实施这些视图(即许可),而不管赋予客OS内过程的许可如何。例如,客OS可授予内核驱动器A和内核驱动器B对具体存储页面的完全访问权。然而,由系统根代理建立、在EPT中编码并由VMM实施的许可视图可仅允许内核驱动器A具有对主存储页面的完全访问权,而允许内核驱动器B具有只读访问权。结果,VMM可进一步约束由客OS授予的特权。在各种实施例中,基于许可视图对存储页面的访问违反可引发异常,并且可使控制权转移到VMM。例如,当执行的线程进入受保护客OS程序中时,访问违反可触发故障或陷阱(例如EPT故障),这可使执行控制权转移到VMM。在各种实施例中,执行控制权可由于vmexit调用而从客OS转移到VMM,这可由于EPT故障而被触发。VMM中的许可视图处理程序然后可分析访问违反以确定该访问可被拒绝还是准许。不是所有许可违反都可指示恶意软件感染。例如,许可视图处理程序可验证与触发执行控制权转移的访问事件关联的目的地客线性地址是否是合法目的地。在验证后,许可视图处理程序可将活动EPT或它的一部分切换到允许在目的地客线性地址的过程执行的EPT。在各种实施例中,VMM的许可视图处理程序可通过修改活动EPT来改变与存储页面关联的许可视图,从而允许存储器访问通过。在各种实施例中,在存储器访问完成之后,VMM例如可利用vmentry调用而将控制权转移回到客OS。在各种实施例中,EPT中的编码许可视图可通过过程方式来定义过程中的临界系统区域的保护,并减少恶意软件攻击的可能性。然而,在每个访问违反上都生成异常(例如EPT故障)可使合法许可视图切换通过两个VM退出往返程(例如vmexit调用本文档来自技高网...
已中断事件的安全处置

【技术保护点】
一种用于处置被保证安全的中断处理程序的异步事件的方法,所述方法包括:在过程的执行期间由计算装置的处理器接收所述异步事件的通知,其中所述异步事件与在所述计算装置的存储器的受保护存储页面中保证安全的所述中断处理程序关联,并且所述过程缺少访问所述存储页面以触发所述中断处理程序的执行的许可;以及响应于所述异步事件的所述通知由所述处理器执行虚拟中断描述表(VIDT)退出桩模块,其中所述VIDT退出桩模块配置成使所述处理器执行包含如下操作的操作:切换所述存储页面的许可以有效地允许所述过程触发所述中断处理程序的执行而不会引起访问违反;以及触发所述中断处理程序的执行。

【技术特征摘要】
【国外来华专利技术】2011.07.01 US 13/1755441.一种用于处置被保证安全的中断处理程序的异步事件的方法,所述方法包括:在过程的执行期间由计算装置的处理器接收所述异步事件的通知,其中所述异步事件与在所述计算装置的存储器的受保护存储页面中保证安全的所述中断处理程序关联,并且所述过程缺少访问所述存储页面以触发所述中断处理程序的执行的许可;以及响应于所述异步事件的所述通知由所述处理器执行虚拟中断描述表VIDT退出桩模块,其中所述VIDT退出桩模块配置成使所述处理器执行包含如下操作的操作:切换所述存储页面的许可以有效地允许所述过程触发所述中断处理程序的执行而不会引起访问违反;以及触发所述中断处理程序的执行。2.如权利要求1所述的方法,其中所述操作进一步包含:检索所述过程的访问许可,并将所述访问许可保存在与所述存储器关联的视图专属页面VEP中。3.如权利要求2所述的方法,其中所述操作进一步包含:将所述过程的返回指令指针与所述过程的标识一起保存在所述VEP中。4.如权利要求3所述的方法,其中所述操作进一步包含:用VIDT重进入桩模块的地址替换所述过程的所述返回指令指针。5.如权利要求4所述的方法,进一步包括:由所述处理器执行所述VIDT重进入桩模块,其包含:将所述存储页面的许可切换到保存在所述VEP中的访问许可。6.如权利要求5所述的方法,其中所述VIDT重进入桩模块的所述执行进一步包括:将所述返回指令指针恢复到所述处理器的寄存器,并使所述处理器将执行控制权转移到所述返回指令指针。7.如权利要求4-6中任一项所述的方法,其中所述操作进一步包含:在所述切换之前,由所述处理器将所述处理器的寄存状态保存在所述过程的堆栈中;以及在所述切换之后并在所述中断处理程序的所述执行之前,由所述处理器从所述堆栈恢复保存的寄存状态。8.如权利要求1-6中任一项所述的方法,进一步包括:由所述计算装置的系统根代理和虚拟机监视器(VMM)初始化所述VIDT。9.如权利要求8所述的方法,其中所述处理器包含多个处理器核,并且其中所述初始化包括:由所述处理器核之一初始化用于所述多个处理器核中相应核的中断重定向表。10.如权利要求1-6中任一项所述的方法,其中所述操作进一步包含:由所述处理器确定所述过程是否是受保护过程。11.一种用于处置被保证安全的中断处理程序的异步事件的设备,所述设备包括:用于支持虚拟机的构件,其包含处理器,其中所述虚拟机包含客操作系统OS,所述客操作系统OS包含虚拟中断描述表VIDT,并且所述VIDT包含VIDT退出桩模块;以及用于存储数据的构件,其包含存储器,其中所述用于支持虚拟机的构件包含如下构件:所述构件用于支持所述客操作系...

【专利技术属性】
技术研发人员:RL萨希塔X李MR卡斯特利诺
申请(专利权)人:英特尔公司
类型:
国别省市:

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

1