基于虚拟化的主机行为异步侦听截获系统和方法

文档序号:9843966阅读:450来源:国知局
基于虚拟化的主机行为异步侦听截获系统和方法
【技术领域】
[0001]本发明涉及虚拟化安全监控领域,具体涉及基于虚拟化的主机行为异步侦听截获系统和方法。
【背景技术】
[0002]基础架构即服务(Infrastructure as a Service,IaaS)是云计算的一种,其为各种互联网应用提供基础架构服务。作为IaaS的技术基石,虚拟化技术已被广泛应用至大量数据中心及服务器集群。作为虚拟化平台中的重要组成部分,虚拟机监视器(简称Hypervisor)是运行在物理服务器和操作系统之间的中间软件层,维护控制着CPU、内存及I/O等物理资源,可允许多个操作系统和应用共享一套基础物理硬件。虚拟化平台的此种架构为行为监控提供了新的挑战,带来了全新的监控思路。作为一个相对封闭的网络环境,使用虚拟化技术构建的虚拟网络被研究人员广泛应用于协议分析、仿真验证及比武对抗等众多前沿应用,并被期望全面获取其内部的各种行为,以全面分析行为数据,提高分析准确性。虚拟化行为监控自虚拟化技术广泛应用以来,一直是研究人员追求的研究热点,尤其是主机行为监控分析。因此本发明重点关注VM(Virtual Machine,虚拟机)内部的主机行为截获及分析。
[0003]目前虚拟化平台行为监控按照VM行为获取方式划分为主动获取信息方式及被动获取信息方式。主动获取方式是指用户通过扫描或者轮询方式获取VM内部的语义信息,其多采用快照技术或计时触发器;被动获取方式是指设置事件触发器,只有当VM中相应事件发生时,触发事件触发器,才获取VM内部的相关信息。主动获取方式监控粒度较大,无法获取两次获取间隔内的行为,同时采用减少轮询时间或增大扫描频率等方式减少间隔时间,会在一定程度上消耗物理服务器及VM资源,影响物理服务器及VM性能。被动获取方式采用触发器结构能够更及时准确的获取更为关心的行为数据。
[0004]虚拟化平台行为监控按照行为动作获取位置分为内部获取方式和外部获取方式。内部获取方式即是将行为获取部署至VM内部,在内部进行各种行为动作的拦截获取;而外部获取方式是在VM外部获取并分析VM内部的行为动作。内部获取方式将行为获取放置在VM内部,易被入侵者或查杀工具发现并查杀,从而失去了行为获取的能力。外部获取方式具有行为获取隐蔽性等特点,不易被入侵者及内部查杀工具篡改或屏蔽。
[0005]现阶段VM主机行为监控分析的常见方法是:I)利用传统的监控方式,将监控手段完全部署在VM操作系统内或VM内核态中;2)基于trap、断点或rollback方式,在VM内设置Hooks挂钩到Hypervisor ,Hypervisor通过操作Hooks以获取VM的行为动作;3)完全基于Hypervisor进行监控。方法I)将监控手段完全放置于虚拟机内部,易被恶意软件篡改或查杀工具查杀,有很大的安全隐患;方法2)虽然在一定程度上保护了监控工具,但由于仍有部分内容在虚拟机内部,因此仍然存在安全隐患;方法3)是安全级别最高的行为监控,但由于和虚拟机无任何关联,因此监控难度较大。

【发明内容】

[0006]针对上述已有方法存在的问题,本发明公开了一种基于虚拟化的主机行为异步侦听截获系统和方法。考虑到虚拟机监控器完全控制着运行于其上的所有虚拟机对硬件资源的访问,本发明实现了无法被虚拟机内部感知的主机行为监控;面对目前现有技术中的局限性,本发明采用被动获取信息方式,完全在虚拟机监控器层部署行为收集手段,采用异步侦听方式获取虚拟机内部详尽的主机行为数据,并通过事件通道机制将收集的行为数据传递至特权域(简称DomO),由特权域的行为分析手段完成主机行为的数据分析,能够减少对虚拟机性能的影响,提高行为分析的准确性与可靠性。
[0007]本发明公开的基于虚拟化的主机行为异步侦听截获系统如图1A所示,主要有事件接收模块、数据异步缓冲模块、数据访问控制模块、动态更新模块、行为分析控制模块组成。其中事件接收模块负责截获系统指令、拦截系统调用,并将收集的数据转送至数据异步缓冲模块,同时通知数据访问控制模块有新数据生成;数据异步缓冲模块负责异步接收存储系统指令、系统调用信息及虚拟机的基本信息;数据访问控制模块负责接收、分析数据生成指令,并将数据从数据异步缓冲模块中取出,发送至行为分析控制模块;动态更新模块负责动态更新行为检测策略;行为分析控制模块负责管理分析线程,根据动态更新模块生成的行为检测策略对主机行为进行行为分析。
[0008]图1B为图1A所示系统的具体架构及工作流程示意图,该系统运行的具体步骤如下:
[0009](I)当虚拟机执行内部行为时,最终均会通过相应的系统调用得以实施;虚拟机执行系统调用时,由于系统运行时已将EFER寄存器的SCE字段置为O,因此会陷入至VMM(Virtual Machine Monitor,虚拟机管理器)中,事件接收器(对应图1A中的事件接收模块)拦截到异常信息时,判断是否由syscall或sysret引起的,若是由这两条指令引起的,则收集系统调用号、系统调用参数、系统调用进程号、发生系统调用的地址、虚拟机的基本信息等。图1B中DomO为特权域,DomU为客户域。
[0010](2)异步环型缓冲区(对应图1A中的数据异步缓冲模块)接收事件接收器收集的系统调用信息,并存储在共享内存内。
[0011](3)系统调用信息收集结束之后,事件接收器通过事件通道机制通知数据存储容器(对应图1A中的数据访问控制模块)取走数据,同时模拟syscall或sysret指令的运行,恢复虚拟机的操作。
[0012](4)行为分析控制模块(图1B中的“分析控制”)不断测探数据存储容器内的数据量大小,根据数据量大小,动态控制分析线程的创建与消亡,并根据动态更新模块生成的主机行为检测策略对系统调用信息进行详细分析,并挖掘分析不同系统调用信息之间的关联关系,获取行为动作的完整动作,如文件的打开与关闭等。
[0013](5)动态更新模块(图1B中的“动态更新策略”)实时接收用户对主机行为的检测需求,并对检测需求进行分析整理,与现有行为策略进行整合,形成完整的主机行为检测策略,供行为分析控制模块使用。
[0014]与现有技术相比,本发明的优点和有益效果如下:
[0015](I)细粒度的主机行为截获分析。本发明具备系统指令、系统调用层次的行为截获功能,通过截获syscall及sysret指令信息,并从指令信息中提取系统调用信息,进而完成用户层的行为分析。
[0016](2)对虚拟机的性能影响较低。本发明采用异步侦听方式截获主机行为数据,待行为数据收集完毕之后即刻恢复虚拟机运行,对虚拟机的性能影响几乎忽略不计,虚拟机用户对此无察觉。
[00?7] (3)具备高安全可靠性。本发明将主机行为截获功能完全放置于Hypervi sor层,使虚拟机内部的防护工具不能感知且不能防范此动作的实施;将主机行为分析功能放置于和虚拟机完全隔离的特权域,使主机行为分析不能被虚拟机内部的防护工具影响。
[0018](4)支持动态、可扩展的主机行为分析。本发明能够动态接收用户的行为分析需求,以在系统运行过程中动态更新行为检测策略,提高行为检测实时性;同时提供数据接口,扩展能够分析的系统调用种类。
【附图说明】
[0019]图1A.基于虚拟化的主机行为异步侦听截获系统模块组成图。
[0020]图1B.基于虚拟化的主机行为异步侦听截获方法框架图。
[0021 ]图2.事件接收方法流程图。
[0022]图3.数据异步缓冲存储方法流程图。
[0023 ]图4.数据访问控制方法流程图。
[0024]图5.动态更新方法流程图。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1