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

监控VT系统上的目标代理执行模式的方法、计算设备和系统技术方案

技术编号:2827876 阅读:253 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及目标进程执行模式监控方法和装置,以确定进程是否按照期望的方式执行,它通过物理设备的虚拟机管理器来观测物理设备的虚拟机的目标进程的执行情况,包括在执行期间所引用的虚拟机虚拟地址。虚拟机管理器至少部分地根据观测到的虚拟地址引用和期望的虚拟地址引用,进一步确定目标进程是否以期望的方式在执行。

【技术实现步骤摘要】
专利
[0001]实施例涉及数据处理和信息保障领域,尤其涉及监控目标进程的执行模式以确定进程是否按照期望的方式执行。
技术介绍
[0002]现代的病毒和蠕虫对信息处理系统的安全具有很大的威胁。基于主机的入侵检测系统能够在蠕虫突破系统防护时为检测蠕虫提供有效的解决方案。然而,大量的蠕虫会使入侵检测系统受到损害和失去效能。[0003]对于这个问题,已经提供了很多解决方案,所提供的方法用于确保入侵检测系统能够正确运行。例如,已知有很多系统完整性服务,它们都需要由受监控的软件代理(例如入侵检测系统)来提供正确运行的非欺骗性证据。然而,这些服务,需要修改监控代理的编程指令。很多软件厂商并不愿意做出这样的修改。而且,很多的现有软件代理,都是在系统完整性服务出现之前创建的,所以它们不能提供这项技术所需要的非欺骗性证据。[0004]主机代理测量为蠕虫和病毒导致入侵检测系统丧失效能这一问题提供了另外的解决方案。主机代理测量使得在独立执行环境中执行的进程能周期性地验证出受监控的软件代理(例如入侵检测系统)以未变的形式存在于主机存储器中。然而,在有些攻击中,病毒或者蠕虫实际上并没有修改被监控的代理,只是通过损害操作系统的调度器而使代理丧失了效能,这种方法对此不能提供任何保护。附图说明[0005]本专利技术的实施例将通过附图所示的说明性实施例进行描述,但并不受限于此,图中相同的标记表示相同的元件,其中:r>-->[0006]图1a-1b示出了本专利技术不同实施例的总体情况,监控目标进程的执行模式以确定进程是否以期望的方式执行;[0007]图2示出了本专利技术不同实施例的方法的选定操作的流程图;[0008]图3示出了用于实施本专利技术不同实施例的示例性计算机系统。具体实施方式[0009]本专利技术给出的实施例包括、但不限于:通过物理设备的虚拟机管理器观测物理设备的虚拟机的目标进程执行情况(包括在执行期间所引用的虚拟机虚拟地址)的方法和设备。虚拟机管理器至少部分地根据观测到的虚拟地址引用和期望的虚拟地址引用,进一步确定目标进程是否以期望的方式在执行。[0010]下面使用本领域技术人员向本领域其它技术人员传达他们劳动成果时通常使用的术语来描述说明性的实施例的不同方面。然而,对于本领域技术人员来说显然的是,只使用一部分描述的方面就可以实施可替代的实施例。出于解释的目的,为了对说明性的实施例有一个彻底的理解,给出了具体的数字、材料和结构。然而,对本领域技术人员来说不使用特定细节来实施可替代实施例也是显然的。在其它实例中,为了不混淆说明性的实施例,省略或者简化了公知的特征。[0011]另外,本文将不同的操作描述为多个分立的有序操作,这有助于理解说明性的实施例;然而,描述的顺序不应当被解释为是暗示这些操作必须依赖于这样的顺序。尤其是,这些操作不一定要以给出的顺序执行。[0012]重复使用了短语“在一个实施例中”。这个短语通常不是针对相同的实施例;然而,它也可以针对相同的实施例。术语“包含”、“具有”以及“包括”是同义词,除非文中另有说明。短语“A/B”指“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是可选的。[0013]图1a-1b示出了本专利技术不同实施例的总体情况,监控一个目标进程的执行模式以确定进程是否以期望的方式执行。如图所示,计算设备102-->的虚拟机管理器106(用于管理计算设备的虚拟机)的验证引擎120能够进一步比较计算设备102的虚拟机104的目标进程110所引用的虚拟地址和目标进程110期望引用的虚拟地址。这种比较可以包括:由验证引擎120生成统计量,并将统计量和门限度量进行比较,以便于确定是否已经危害目标进程110的安全。目标进程实际引用的虚拟地址可以通过在执行期间引用的虚拟地址来确定。在图1a所示的一个实施例中,虚拟地址引用可以通过以下方式观测到:修改虚拟机管理器106的活动页表116,从而当每次引用一个期望虚拟地址时都导致向存储器管理器114发出页面错误。在图1b所示的一个可替代实施例中,虚拟机管理器106的代码执行引擎(CodeInstrumentation Engine)118可以修改存储器中的目标进程110代码,这样,当目标进程110引用一个期望虚拟地址时,目标进程110可以向代码执行引擎118发出一条调用指令,代码执行引擎118可以捕获这样的调用。[0014]在不同的实施例中,除虚拟机104和虚拟机管理器106之外,计算设备102还可以包括其它额外的虚拟机。虚拟机104可以包括客户页表108以及大量的进程(例如目标进程110),客户页表108中存储着线性存储器地址到客户物理地址的映射。在不同的实施例中,目标进程110可以是关键的进程,例如入侵检测进程。虚拟机管理器106可以包括大量便于对计算设备102的虚拟机进行管理的组件。在这些组件当中,有一个完整性测量模块112可以用于在目标进程被载入到存储器中时验证其完整性以及向存储器管理器116和/或代码执行引擎118以及验证引擎120提供完整性显示(integrity manifest),所述的完整性显示指明了期望的虚拟地址引用。另外,虚拟机管理器106组件还进一步包括存储器管理器114、活动页表116、验证引擎120,以及图1b所示的实施例中的代码执行引擎118。[0015]如图所示,计算设备102可以是任意的单处理器或者多处理器或者本领域中公知的处理器核心中央处理单元(CPU)计算系统。计算设备102可以是个人计算机(PC)、工作站、服务器、路由器、大型机、刀片式服务器或者高密度服务器中的模块化计算机、个人数字助理(PDA)、娱乐中心、机顶盒或者移动设备。计算设备102能够操作多个虚拟机(例如虚拟机104)以及使用虚拟技术的虚拟机管理器106的多个操作系统。如果计算设备102-->是多处理器或者多处理器核心系统,则计算设备102的每一个虚拟机/虚拟机管理器都耦合到专用于虚拟机/虚拟机管理器的处理器或者处理器核心上。在单处理器或者单处理器核心计算设备102中,多个虚拟机和虚拟机管理器106可以共享单处理器或者处理器核心。图3中示出了举例性的单/多处理器或者处理器核心计算设备102,下面会对此进行详细描述。下文中,本文档来自技高网...

【技术保护点】
一种方法,包括:由物理设备的虚拟机管理器观测所述物理设备的虚拟机的目标进程的执行情况,所述执行情况包括在执行期间所引用的虚拟机虚拟地址;由所述虚拟机管理器至少部分地根据观测到的虚拟地址引用和期望的虚拟地址引用,确定目标进程是否以期望的方式在执行。

【技术特征摘要】
US 2006-9-29 11/541,4741.一种方法,包括:
由物理设备的虚拟机管理器观测所述物理设备的虚拟机的目标进程的
执行情况,所述执行情况包括在执行期间所引用的虚拟机虚拟地址;
由所述虚拟机管理器至少部分地根据观测到的虚拟地址引用和期望的
虚拟地址引用,确定目标进程是否以期望的方式在执行。
2.根据权利要求1的方法,其中,
所述期望的执行方式反映在完整性显示中,所述显示包括目标进程期
望引用的虚拟地址,
所述确定包括:由所述虚拟机管理器把观测到的虚拟地址引用和期望
的虚拟地址引用进行比较。
3.根据权利要求2的方法,其中,由所述虚拟机管理器的存储器管理
器来执行所述观测,
该方法进一步包括:由所述存储器管理器来修改所述虚拟机管理器的
活动页表,以便于由所述存储器管理器捕获对虚拟地址的所述引用而进行
处理。
4.根据权利要求3的方法,其中,由所述存储器管理器进行的所述修
改包括:
修改所述虚拟机管理器的活动页表,以便于对虚拟地址的所述引用会
导致向所述存储器管理器发出页面错误。
5.根据权利要求2的方法,其中,由所述虚拟机管理器的存储器管理
器来执行所述观测,
该方法进一步包括:由所述存储器管理器来修改所述虚拟机管理器的
嵌套和扩展页表,以便于由所述存储器管理器捕获对虚拟地址的所述引用
而进行处理。
6.根据权利要求2的方法,其中,由所述虚拟存储器管理器的代码执
行引擎执行所述观测,
该方法进一步包括:由所述代码执行引擎修改目标进程,以便于由所
述代码执行引擎捕获对虚拟地址的所述引用而进行处理。
7.根据权利要求6的方法,其中,所述修改包括:当要引用所述虚拟
地址时,修改目标进程以调用所述代码执行引擎,
该方法进一步包括:
第一,在捕获到引用时,就由所述代码执行引擎恢复目标进程的被替
换指令,以启动原始函数的执行,
第二,在捕获到引用时,就由所述代码执行引擎将所述捕获通知给验
证引擎,所述验证引擎记录对所述虚拟地址的引用,
第三,在执行时,由所述代码执行引擎重新修改指令,以使所述代码
执行引擎再一次捕获对所述虚拟地址的未来引用。
8.根据权利要求1的方法,其中,所述虚拟地址是映射到计算设备寄
存器的存储器。
9.根据权利要求1的方法,进一步包括:
额外地观测至少一个已观测到的虚拟地址引用的存储器访问类型。
10.根据权利要求1的方法,进一步包括:
由验证引擎比较不同虚拟地址的引用统计量和相应的门限度量。
11.根据权利要求1的方法,其中,目标进程是入侵检测进程。
12.根据权利要求1的方法,其中,所述观测进一步包括:
监控目标进程和由该目标进程实际引用的另一进程的相互依赖性以及
调用和返回点中的至少一个。
13.一种物理设备,包括:
一个或多个处理器;
由所述一个或多个处理器操作的虚拟机管理器,其用于:观测所述物
理设备的虚拟机的目标进程的执行情况,包括观测在执行期间所引用的虚
拟机虚拟地址;至少部分地根据观测到的虚拟地址引用和期望的虚拟地址
引用,确定目标进程是否以期望的方式在执行,
所述虚拟机管理器包括存储器管理器,其用于执行所述观测,包括修
改活动页表,以便于由所述存储器管理器捕获对虚拟地址的引用而进行处
理。
14.根据权利要求13的物理设备,其中,所述虚拟机和所述虚拟机管
理器由同一处理器操作。
15.根据权利要求13的物理设备,其中,所述存储器管理器修改所述
虚拟机管理器的活动页表,以使得对虚拟地址的所述引用会导致向所述存
储器管理器发出页面错误。
16.根据权利要求15的物理设备,其中,所述期望的执行方式反映在
完整性显示中,所述显示包括目标进程期望引用的虚拟地址,
所述虚拟机管理器进一步包括验证引擎,其通过把观测到的虚拟地址
引用和期望的虚拟地址引用进行比较来执行所述确定,并基于比较结果产
生引用统计量。<...

【专利技术属性】
技术研发人员:U萨瓦冈卡尔R萨希塔D德拉姆
申请(专利权)人:英特尔公司
类型:发明
国别省市:US[]

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

1