云平台VMM层行为监控方法技术

技术编号:11450708 阅读:77 留言:0更新日期:2015-05-13 23:21
云平台VMM层行为监控方法,本发明专利技术涉及云平台VMM层行为监控方法。本发明专利技术是要解决现有技术的问题主要在于:运行环境不安全,可能被攻破、算法安全监控程序占用的系统资源大、识别异常率不高的问题。云平台VMM层行为监控方法,它包括:用于VMM层劫持系统调用并获得系统调用序列的System Call Interpcepter步骤;用于分析系统调用序列并判断进程异常与否的System Call Analyze步骤;用于接收System Call Analyzer模块的分析结果并发出警报提醒操作系统的System Call Handler步骤。本发明专利技术应用于云平台领域。

【技术实现步骤摘要】
云平台VMM层行为监控方法
本专利技术涉及云平台VMM层行为监控方法。
技术介绍
HostKeeper:该入侵检测系统是一种基于主机上操作行为分析的系统,该系统从系统内核中的获取操作的行为信息,不断的监测主机运行的详细活动,它首先获取每一个应用程序运行的系统调用,得到该应用程序的系统调用号、发生的时间、该系统调用所属的进程以及该系统调用所调用的相关参数等等关键数据,然后分析系统。但是它并没有给出具体的如何进行系统调用行为的分析。基于系统调用参数的入侵检测方法:该方法根据每一个系统调用来实施的,该方法通过分析一段系统调用流,为每个系统调用和该系统调用的参数进行建模,但是不考虑系统调用序列之间的顺序关系。该方法为每个应用的每个系统调用,创建出模型。但是由于系统调用产生的速度快而且数目巨大,对所有的系统调用进行跟踪,而且还要利用模型分析,会造成效率不高,显然这种方法的消耗太高。基于系统调用短序列的入侵检测,该检测方法是利用系统调用的短序列,建立起一个正常行为的标准数据库,每当检测序列来到时,与标准数据库中的特征行为进行比较,从而发现行为中没有出现在标准数据库中的异常行为。但是这种方法只是考虑了系统调用序列之间的关系,而忽略了其他有价值的信息。如:某些系统调用的次数和频率、系统调用参数和返回值等等。而且还存在一些攻击通过修改某些关键系统调用的调用参数把自己伪装成正常的行为,从而绕过该方法的检测。当前云计算因其具有投入低,易于维护,部署快速灵活等特点逐渐受到国内外学者和企业的重视,同时也因为其具有降低成本、改善运营效率等优点,许多企业和组织在云计算上加大投入,进行研究,建设和实施。由于云计算技术的不断发展,面临的安全挑战也更为严峻,安全问题已成为妨碍云计算发展的重要因素。现在人们最关心的是云服务提供商(CSP)能否可以为终端用户提供出安全可信的云服务,但因为云计算环境下的终端用户可直接访问云服务提供商的软硬件资源,这样与常规的网络服务相比,用户的行为给云服务提供商(CSP)带来的安全风险就大大增加,单独的用户身份的可信已不能满足云计算环境下的需求,因此,如何保障用户行为的安全,并对其进行有效进行风险控制就成为云计算走向成熟的关键研究课题。现有技术的问题主要在于:运行环境不安全,可能被攻破、算法开销大、识别异常率不高等。
技术实现思路
本专利技术是要解决现有技术的问题主要在于:运行环境不安全,可能被攻破、算法安全监控程序占用的系统资源大、识别异常率不高的问题,而提供了云平台VMM层行为监控方法。云平台VMM层行为监控方法,它包括:用于VMM层劫持系统调用并获得系统调用序列的SystemCallInterpcepter步骤;用于分析系统调用序列并判断进程异常与否的SystemCallAnalyze步骤;用于接收SystemCallAnalyzer模块的分析结果并发出警报提醒操作系统的SystemCallHandler步骤。附图说明图1为本专利技术流程图;图2为具体具体实施方式二中的劫持说明图;图3为具体实施方式三中的NMF算法处理数据图;图4具体实施方式四中的SCH流程图;图5为具体具体实施方式二中的得到的系统调用号序列图;图6为具体实施方式三中的正常进程图;图7为具体实施方式三中的异常进程图;图8为具体实施方式三中的更改后的异常进程图;图9为具体实施方式三中的用树来表示标准库图;图10为具体实施方式三中的检测序列时滑动窗口示意图图11为具体实施方式三中的匹配成功时滑动窗口位置图;图12为仿真实验中正常进程的误报率图;图13为仿真实验中异常进程判断成功率图;图14为仿真实验中异常进程判断成功率图;图15为仿真实验中正常进程误报率图。具体实施方式具体实施方式一:本实施方式的云平台VMM层行为监控方法,它包括:用于VMM层劫持系统调用并获得系统调用序列的SystemCallInterpcepter步骤;用于分析系统调用序列并判断进程异常与否的SystemCallAnalyze步骤;用于接收SystemCallAnalyzer模块的分析结果并发出警报提醒操作系统的SystemCallHandler步骤。为实现云平台VMM层系统调用的劫持与分析系统,首先要实现云平台的搭建,在此计划利用计算机上搭建虚拟机,在虚拟机上运行操作系统,在其上面运行程序等从而达到模拟云平台的目的。搭建出平台后,在虚拟机VMM层进行系统调用的劫持,实现系统调用劫持和分析系统,完成对程序和进程的分析判断。用户程序或者进程在用户操作系统层面执行运作,然后在VMM层,利用SystemCallInterpcepter(SCI)劫持获得系统调用,然后传递给SystemCallAnalyzer(SCA),SCA利用正常的参考数据得到的类型标准(基矩阵和系数矩阵),得出运行程序系统调用序列的异常与否,然后将分析结果的日志(Log)输出结果到主机上,同时通知客户操作系统对用户程序进行相应的处理SystemHandler(SCH)。该系统的概要设计图1所示:通过上图所示的结构,模拟实现云平台上基于VMM系统调用的劫持与分析系统,该系统主要包含三个部分:主机操作系统、VMM层和客户操作系统,工作原理如下:首先,客户在用户模式运行程序,执行相应操作,调用系统调用,通过客户操作系统的内核模式,在VMM层,我们利用SCI对系统调用进行捕获,获得该程序的对应进程的系统调用号序列。其次,SCI把该系统调用序列数据传递给SCA,SCA利用NMF算法,对原始数据进行处理,利用以前获得的参考数据对新得到的数据进行分析,得出程序异常与否的结果。最后,根据SCA分析的结果用户操作系统的内核模式采取相应的措施对程序进行限制,在主机上生成日志。具体实施方式二:本实施方式与具体实施方式一不同的是:利用Linux系统中自带的strace功能,模仿其应用,在Linux内核中增添代码,当追踪到相应的进程后,跟踪其所有的系统调用,输出其系统调用号。当在kvm的虚拟机上进行相应程序的执行时,在VMM层中的linux内核层就可以获得相应的进程号,从而获得该进程所有调用的系统调用。所述SystemCallInterpcepter步骤具体为:在Linux内核中,修改并利用内核的strace功能来劫持系统调用;其中,所述Strace的核心是ptrace函数,Ptrace函数本身并不具备输出产生系统调用程序的pid和系统调用号的功能,因此,要在内核syscall_trace_enter(structpt_regs*regs)函数的尾部,添加输出对应信息的代码,从而实现系统调用的劫持。系统调用的劫持说明图如图2:在Linux系统中,进程不能直接的对设备硬件进行访问或者操作,当一个进程想要对硬件进行操作时,就必须要由用户态模式切换到内核态的模式,而且这个两个模式的“接口”就是系统调用。在Linux中系统中,strace是Linux自带的命令,可以跟踪任何进程的状态,当然,也能跟踪进程所调用的所有系统调用。strace依靠的内核功能ptrace,能够实现对系统调用的所有信息进行跟踪,包括调用名、调用号、调用参数、运行时间。截获系统调用所使用的关键的技术是更改Linux内核,然后重新编译Linux内核,而且对Linux系统中本文档来自技高网
...
云平台VMM层行为监控方法

【技术保护点】
云平台VMM层行为监控方法,其特征在于它包括:用于VMM层劫持系统调用并获得系统调用序列的System Call Interpcepter步骤;用于分析系统调用序列并判断进程异常与否的System Call Analyze步骤;用于接收System Call Analyzer模块的分析结果并发出警报提醒操作系统的System Call Handler步骤。

【技术特征摘要】
1.云平台VMM层行为监控方法,其特征在于它包括:用于VMM层劫持系统调用并获得系统调用序列的SystemCallInterpcepter步骤;用于分析系统调用序列并判断进程异常与否的SystemCallAnalyze步骤;用于接收SystemCallAnalyzer模块的分析结果并发出警报提醒操作系统的SystemCallHandler步骤;所述SystemCallInterpcepter步骤具体为:在Linux内核中,利用内核的strace功能来劫持系统调用;其中,所述strace的核心是ptrace函数,ptrace函数本身并不具备输出产生系统调用程序的pid和系统调用号的功能,因此,要在内核syscall_trace_enter(structpt_regs*regs)函数的尾部,添加向文件输出pid和系统调用号的代码,从而实现系统调用的劫持;所述SystemCallAnalyzer步骤包括NMF算法与滑动窗口算法两部分:一、利用NMF算法,分析系统调用序列的频率矩阵,得出进程异常与否的比率:(1).读入基准系统调用序列A;(2).统计每个系统调用序列出现的频率,得到频率矩阵B,化简频率矩阵B,将和为零的列删除,得到最简频率矩阵C;(3).利用NMF算法,将最简频率矩阵C,分解为基矩阵D和系数矩阵E,并保存起来;(4).读入测试系统调用序列A’;(5).重复步骤(2),得到最简频率矩阵C’;(6).利用NMF算法,以基矩阵D为最简频率矩阵C’的基矩阵,得到系数矩阵E';(7).运用余弦夹角法,计算两个系数矩阵E和E’的相似度S...

【专利技术属性】
技术研发人员:何慧余翔湛叶麟张宏莉詹东阳赵尚杰董玲郭俊武李明哲
申请(专利权)人:哈尔滨工业大学
类型:发明
国别省市:黑龙江;23

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

1