CN105590054A - 虚拟机进程监控的方法、装置及系统 - Google Patents
虚拟机进程监控的方法、装置及系统 Download PDFInfo
- Publication number
- CN105590054A CN105590054A CN201410643969.0A CN201410643969A CN105590054A CN 105590054 A CN105590054 A CN 105590054A CN 201410643969 A CN201410643969 A CN 201410643969A CN 105590054 A CN105590054 A CN 105590054A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- list
- internal process
- virtual
- watch
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种虚拟机进程监控的方法、装置及系统,其中,虚拟机进程监控的方法包括:获取虚拟化平台中各虚拟机内部进程的列表;所述虚拟机进程监控的装置向监控设备发送所述虚拟机内部进程的列表,其中,所述监控设备用于监控所述虚拟机的内部进程。通过本发明,避免了在虚拟机内部对虚拟机进行监控而导致虚拟机内部恶意软件避开监控的问题,提高了虚拟机的安全性。
Description
技术领域
本发明涉及计算机安全领域,具体而言,涉及一种虚拟机进程监控的方法、装置及系统。
背景技术
随着近年多核系统、集群、网格甚至云计算的广泛部署,虚拟化技术在商业上的优势日益体现,不仅降低了IT成本,而且还增强了系统的安全性、可靠性和可维护性,从而显著提升企业整体业务的竞争力。
目前,虚拟化技术不断深入,采用虚拟化技术的企业数量正以越来越快的速度增长,越来越多的企业依靠虚拟化架构运行关键的日常功能。虚拟化技术在解决传统计算机系统存在的成本、安全性和可靠性等问题的同时,又引入了虚拟化架构下的新的安全问题。如何保护虚拟化架构的安全也成为企业亟待解决的问题之一。
所谓虚拟化安全就是基于虚拟化技术架构与原理,在虚拟化平台实现一个逻辑安全层,以解决虚拟化架构下的,诸如虚拟机跳跃攻击、虚拟机逃逸攻击、虚拟机Rootkit攻击、虚拟机迁移攻击、虚拟机拒绝服务攻击和远程管理漏洞等安全问题。
针对现已普遍存在的虚拟机感知式恶意软件(如RedPill)以及虚拟机Rootkit(如BluePill)等虚拟平台攻击软件,目前的监控手段是在虚拟机内部安装防病毒软件或其它监控软件。这种在虚拟机内部对系统进行监控的方式,很容易被同处在虚拟机内部的恶意软件绕开。
由此可见,针对相关技术中如何提高虚拟机安全的问题,目前尚未提出有效的解决方案。
发明内容
针对如何提高虚拟机安全的问题,本发明提供了一种虚拟机进程监控的方法、装置及系统,以至少解决上述问题。
根据本发明的一个方面,提供了一种虚拟机进程监控的方法,包括:
获取虚拟化平台中各虚拟机内部进程的列表;向监控设备发送所述各虚拟机内部进程的列表,其中,所述监控设备用于监控所述各虚拟机的内部进程。
可选地,所述获取虚拟化平台中各虚拟机内部进程的列表,包括:获取虚拟化平台中各虚拟机内部进程的内存信息;根据所述进程的内存信息解析得到所述各虚拟机内部进程的列表。
可选地,所述获取虚拟化平台中各虚拟机内部进程的内存信息包括:基于虚拟化平台的内存自省技术,获取所述虚拟机内部进行的内存信息。
可选地,所述向监控设备发送所述各虚拟机内部进程的列表,包括:判断所述各虚拟机内部进程的列表是否发生变化;在所述各虚拟机内部进程的列表发生变化时,向监控设备发送所述各虚拟机内部进程的列表。
可选地,所述向监控设备发送所述各虚拟机内部进程的列表,包括:接收监控设备的命令,其中,所述命令用于请求获取所述各虚拟机内部进程的列表;响应所述命令,向监控设备发送所述各虚拟机内部进程的列表。
根据本发明的另一个方面,提供了一种虚拟机进程监控的装置,所述装置包括:获取模块,用于获取虚拟化平台中各虚拟机内部进程的列表;发送模块,用于向监控设备发送所述各虚拟机内部进程的列表,其中,所述监控设备用于监控所述各虚拟机的内部进程。
可选地,所述获取模块,包括:获取单元,用于获取虚拟化平台中各虚拟机内部进程的内存信息;解析单元,用于根据所述进程的内存信息解析得到所述各虚拟机内部进程的列表。
可选地,所述发送模块,包括:判断单元,用于判断所述各虚拟机内部进程的列表是否发生变化;发送单元,用于在所述各虚拟机内部进程的列表发生变化时,监控设备发送所述虚拟机内部进程的列表。
可选地,所述发送模块,包括:接收单元,用于接收监控设备的命令,其中,所述命令用于请求获取所述各虚拟机内部进程的列表;发送单元,用于响应所述命令,向监控设备发送所述各虚拟机内部进程的列表。
根据本发明的再一个方面,提供了一种虚拟机进程监控的系统,包括:进程获取装置和进程监控装置,其中,所述进程获取装置,用于获取所述虚拟化平台中运行的各虚拟机的内部进程的列表,并向所述进程监控装置发送所述各虚拟机的内部进程的列表;所述进程监控装置,位于监控设备中,用于接收所述各虚拟机的内部进程的列表,并显示所述各虚拟机的内部进程的列表。
通过本发明,获取虚拟化平台中各个虚拟机内部进程的列表,并将虚拟机内部进程的列表发送给监控设备,从而从虚拟机外部实现了的对虚拟机的监控,避免了在虚拟机内部对虚拟机进行监控而导致虚拟机内部恶意软件避开监控的问题,提高了虚拟机的安全性。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的虚拟机进程监控的方法的流程图;
图2是根据本发明实施例的虚拟机进程监控的装置的结构框图;
图3是根据本发明实施例的虚拟机进程监控的系统的示意图;
图4是根据本发明实施例的一个实例的虚拟机进程的监控系统的示意图;以及
图5是根据本发明实施例的一个实例的监控方法的流程图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
图1是根据本发明实施例的虚拟机进程监控的方法的流程图,如图1所示,该方法包括步骤101至步骤102。
步骤101,获取虚拟化平台中各虚拟机内部进程的列表。
上述步骤101中,可以按照周期性或者事件触发的方式获取虚拟机内部进程的列表。虚拟化平台中可以运行一个或多个虚拟机。
步骤102,向监控设备发送所述各虚拟机内部进程的列表,其中,所述监控设备用于监控所述虚拟机的内部进程。
在上述步骤102中,在存在多个虚拟机的情况下,可以按照虚拟机对虚拟机内部进程的列表进行分类。
通过本发明实施例,获取虚拟化平台中各虚拟机内部进程的列表,并将虚拟机内部进程的列表发送给监控设备,从而从虚拟机外部实现了的对虚拟机的监控,避免了在虚拟机内部对虚拟机进行监控而导致虚拟机内部恶意软件避开监控的问题,提高了虚拟机的安全性。
在本发明实施例的一个实施方式中,上述步骤101中,可以获取虚拟机内部进程的内存信息,根据所述进程的内存信息解析得到所述虚拟机内部进程的列表。
进一步地,可以基于虚拟化平台的内存自省技术,获取所述虚拟机内部进行的内存信息。
在本发明实施例的一个实施方式中,上所述步骤102中,可以判断所述虚拟机内部进程的列表是否发生变化,在所述虚拟机内部进程的列表发生变化时,向监控设备发送所述虚拟机内部进程的列表。通过该实施方式,在虚拟机的列表发生变化时向监控设备发送虚拟机内部进程的列表,有利于降低消息发送数量,同时还能够保证可靠性。
在本发明实施例的一个实施方式中,上述步骤102中,可以接收监控设备的命令,其中,所述命令用于请求获取所述虚拟机内部进程的列表;响应所述命令,向监控设备发送所述虚拟机内部进程的列表。通过该实施方式,可以在监控设备的请求下向监控设备发送虚拟机内部进程的列表。
图2是根据本发明实施例的虚拟机进程监控的装置的结构框图,如图2所示,所述装置包括:
获取模块10,用于获取虚拟化平台中各虚拟机内部进程的列表;
发送模块20,与获取模块10相连接,用于向监控设备发送所述各虚拟机内部进程的列表,其中,所述监控设备用于监控所述虚拟机的内部进程。
在本发明实施例的一个实施方式中,获取模块10可以包括:获取单元,用于获取虚拟机内部进程的内存信息;解析单元,用于根据所述进程的内存信息解析得到所述虚拟机内部进程的列表。
进一步地,获取单元可以基于虚拟化平台的内存自省技术,获取所述虚拟机内部进行的内存信息。
在本发明实施例的一个实施方式中,发送模块20可以包括:判断单元,用于判断所述虚拟机内部进程的列表是否发生变化;发送单元,用于在所述虚拟机内部进程的列表发生变化时,监控设备发送所述虚拟机内部进程的列表。
在本发明实施例的一个实施方式中,发送模块20可以包括:接收单元,用于接收监控设备的命令,其中,所述命令用于请求获取所述虚拟机内部进程的列表;发送单元,用于响应所述命令,向监控设备发送所述虚拟机内部进程的列表。
图3是根据本发明实施例的虚拟机进程监控的系统的示意图,如图3所示,该系统包括:进程获取装置1和进程监控装置2,其中:
进程获取装置1,位于虚拟化平台底层,用于获取所述虚拟化平台中运行的各虚拟机的内部进程的列表,并向所述进程监控装置发送所述各虚拟机的内部进程的列表。
进程监控装置2,位于监控设备中,用于接收所述各虚拟机的内部进程的列表,并显示所述各虚拟机的内部进程的列表。
对于该系统中与上述方法及装置相同或相应的部分,参见上述描述,在此不再赘述。
下面对本发明实施例的一个实例进行描述。
图4是根据本发明实施例的一个实例的虚拟机进程的监控系统的示意图,如图4所示,该系统包括:
服务器(支持硬件辅助虚拟化技术),服务器中运行主机操作系统Xen虚拟化操作系统;虚拟机,虚拟机上运行虚拟机操作系统,例如Windows/Linux。计算机,计算机上运行操作系统,例如Windows等。
虚拟化平台管理系统包括:虚拟机进程信息采集模块和服务端信息发送模块,其中,虚拟机进程信息采集模块,在虚拟化平台中,采用虚拟机内存自省技术,对指定虚拟机的内存分布进行解析,生成虚拟机进程列表;服务端信息发送模块,在虚拟化平台中,实时调用虚拟机进程信息采集模块,生成各虚拟机动态的进程列表,并将进程列表信息发送给系统管理软件。
计算机中包括:客户端进程信息处理模块,在远程系统管理软件中,与虚拟化平台建立网络连接,向虚拟化平台的服务端信息发送模块发送启动、关闭与属性设置等命令,接收虚拟化平台中服务端信息发送模块发送过来的虚拟机进程列表信息,并对接收到的虚拟机进程列表进行分析,在相应虚拟机相关的界面上展示,供系统管理员查看。
可选地,所述虚拟机进程信息采集模块实现过程如下:
a.通过libxc库函数接口,获取指定虚拟机内存空间基地址,对虚拟机内存分布进行分析,找出系统进程链表头,并对链表进行遍历,根据虚拟机操作系统类型Windows或者Linux分别执行b和c;
b.针对Windows虚拟机,通过特征代码搜索的方式,从内核ntoskrnl.exe中查找或导出符号PsInitialSystemProcess所在内存地址,即进程链表头指针,并从PsInitialSystemProcess开始依次遍历链表中各个系统进程的EPROCESS结构,解析出每进程的信息;
c.针对Linux虚拟机,在Linux系统的System.map文件中查找init_task符号地址,即0号进程,再依次遍历链表中各个系统进程的数据结构,解析出每进程的信息。
可选地,服务端信息发送模块实现过程如下:
a.设置时间间隔,针对每个虚拟机创建一个线程,线程每一定时间间隔调用一次虚拟机进程信息采集模块采集对应虚拟机的进程信息;
b.线程把实时采集虚拟机的进程信息与之前采集并缓存的信息进行特征对比,如果进程信息没有发生变化,线程不作处理,等待下一次的采集;如果进程信息发生变化,则清除旧的进程信息,缓存新的进程信息,并把缓存空间指针插入全局的进程信息指针队列;
c.创建线程,与客户端建立socket连接,从客户端接收管理员的操作指令,如启动、关闭虚拟机的进程信息采集功能,以及相关属性设置等;依次从全局的进程信息指针队列中取得各虚拟机进程信息缓存指针,把进程信息通过socket发送给客户端。
可选地,客户端进程信息处理模块实现过程如下:
a.实现一个用户界面,使系统管理员通过点击用户界面上的按钮,向服务端发送操作命令,如启动、关闭虚拟机的进程信息采集功能,以及相关属性设置等;在界面中展示虚拟机进程列表信息,并能实时更新。
b.与服务端建立socket连接,向服务端发送系统管理员操作指令,以及从服务端接收虚拟机的进程列表信息,对其进行解析,并在用户界面中进行展示。
图5是根据本发明实施例的一个实例的监控方法的流程图,如图5所示,该方法包括步骤501至步骤505:
步骤501,启动系统管理软件,并连接远程的Xen虚拟化服务器;
步骤502,在系统管理软件用户界面上启动虚拟机,选择虚拟机的进程列表标签,点击显示进程列表;
步骤503,系统管理软件向服务器的虚拟化平台管理系统发送操作指令,启动虚拟进程信息采集程序;
步骤504,虚拟化平台管理系统将虚拟进程信息采集程序采集的进程列表信息发送回系统管理软件;
步骤505,系统管理软件接收服务器发来的进程列表信息,在用户界面上展示。
从以上的描述中,可以看出,本发明实现了如下技术效果:位于虚拟机所在虚拟化平台底层的虚拟机进程监控的装置获取虚拟机内部进程的列表,并将虚拟机内部进程的列表发送给监控设备,从而从虚拟机外部实现了的对虚拟机的监控,避免了在虚拟机内部对虚拟机进行监控而导致虚拟机内部恶意软件避开监控的问题,提高了虚拟机的安全性。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种虚拟机进程监控的方法,其特征在于,包括:
获取虚拟化平台中各虚拟机内部进程的列表;
向监控设备发送所述各虚拟机内部进程的列表,其中,所述监控设备用于监控所述各虚拟机的内部进程。
2.根据权利要求1所述的方法,其特征在于,所述获取虚拟化平台中各虚拟机内部进程的列表,包括:
获取虚拟化平台中各虚拟机内部进程的内存信息;
根据所述进程的内存信息解析得到所述各虚拟机内部进程的列表。
3.根据权利要求2所述的方法,其特征在于,所述获取虚拟化平台中各虚拟机内部进程的内存信息包括:基于虚拟化平台的内存自省技术,获取所述虚拟机内部进行的内存信息。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述向监控设备发送所述各虚拟机内部进程的列表,包括:
判断所述各虚拟机内部进程的列表是否发生变化;
在所述各虚拟机内部进程的列表发生变化时,向监控设备发送所述各虚拟机内部进程的列表。
5.根据权利要求1至3中任一项所述的方法,其特征在于,所述向监控设备发送所述各虚拟机内部进程的列表,包括:
接收监控设备的命令,其中,所述命令用于请求获取所述各虚拟机内部进程的列表;
响应所述命令,向监控设备发送所述各虚拟机内部进程的列表。
6.一种虚拟机进程监控的装置,其特征在于,所述装置包括:
获取模块,用于获取虚拟化平台中各虚拟机内部进程的列表;
发送模块,用于向监控设备发送所述各虚拟机内部进程的列表,其中,所述监控设备用于监控所述各虚拟机的内部进程。
7.根据权利要求6所述的装置,其特征在于,所述获取模块,包括:
获取单元,用于获取虚拟化平台中各虚拟机内部进程的内存信息;
解析单元,用于根据所述进程的内存信息解析得到所述各虚拟机内部进程的列表。
8.根据权利要求6或7所述的装置,其特征在于,所述发送模块,包括:
判断单元,用于判断所述各虚拟机内部进程的列表是否发生变化;
发送单元,用于在所述各虚拟机内部进程的列表发生变化时,监控设备发送所述虚拟机内部进程的列表。
9.根据权利要求6或7所述的装置,其特征在于,所述发送模块,包括:
接收单元,用于接收监控设备的命令,其中,所述命令用于请求获取所述各虚拟机内部进程的列表;
发送单元,用于响应所述命令,向监控设备发送所述各虚拟机内部进程的列表。
10.一种虚拟机进程监控的系统,其特征在于,包括:进程获取装置和进程监控装置,其中,所述进程获取装置,用于获取所述虚拟化平台中运行的各虚拟机的内部进程的列表,并向所述进程监控装置发送所述各虚拟机的内部进程的列表;
所述进程监控装置,位于监控设备中,用于接收所述各虚拟机的内部进程的列表,并显示所述各虚拟机的内部进程的列表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410643969.0A CN105590054A (zh) | 2014-11-11 | 2014-11-11 | 虚拟机进程监控的方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410643969.0A CN105590054A (zh) | 2014-11-11 | 2014-11-11 | 虚拟机进程监控的方法、装置及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105590054A true CN105590054A (zh) | 2016-05-18 |
Family
ID=55929629
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410643969.0A Pending CN105590054A (zh) | 2014-11-11 | 2014-11-11 | 虚拟机进程监控的方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105590054A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106203091A (zh) * | 2016-06-30 | 2016-12-07 | 北京奇虎科技有限公司 | 一种虚拟机逃逸检测方法及装置 |
WO2019174048A1 (zh) * | 2018-03-16 | 2019-09-19 | 华为技术有限公司 | 容器逃逸检测方法、装置、系统及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102147843A (zh) * | 2011-05-16 | 2011-08-10 | 湖南大学 | 一种基于内核不变量保护的rootkit入侵检测和系统恢复方法 |
CN103065084A (zh) * | 2012-12-27 | 2013-04-24 | 武汉大学 | 在虚拟机外部机进行的windows隐藏进程检测方法 |
CN103544090A (zh) * | 2013-10-16 | 2014-01-29 | 北京航空航天大学 | 虚拟机进程监控方法和装置 |
-
2014
- 2014-11-11 CN CN201410643969.0A patent/CN105590054A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102147843A (zh) * | 2011-05-16 | 2011-08-10 | 湖南大学 | 一种基于内核不变量保护的rootkit入侵检测和系统恢复方法 |
CN103065084A (zh) * | 2012-12-27 | 2013-04-24 | 武汉大学 | 在虚拟机外部机进行的windows隐藏进程检测方法 |
CN103544090A (zh) * | 2013-10-16 | 2014-01-29 | 北京航空航天大学 | 虚拟机进程监控方法和装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106203091A (zh) * | 2016-06-30 | 2016-12-07 | 北京奇虎科技有限公司 | 一种虚拟机逃逸检测方法及装置 |
CN106203091B (zh) * | 2016-06-30 | 2019-02-22 | 北京奇虎科技有限公司 | 一种虚拟机逃逸检测方法及装置 |
WO2019174048A1 (zh) * | 2018-03-16 | 2019-09-19 | 华为技术有限公司 | 容器逃逸检测方法、装置、系统及存储介质 |
US11989283B2 (en) | 2018-03-16 | 2024-05-21 | Huawei Cloud Computing Technologies Co., Ltd. | Container escape detection method, apparatus, and system, and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11748480B2 (en) | Policy-based detection of anomalous control and data flow paths in an application program | |
US10530789B2 (en) | Alerting and tagging using a malware analysis platform for threat intelligence made actionable | |
US11086987B2 (en) | Malware detection in event loops | |
US11429625B2 (en) | Query engine for remote endpoint information retrieval | |
US10200389B2 (en) | Malware analysis platform for threat intelligence made actionable | |
CN103365702B (zh) | IaaS云环境下轻量级虚拟机进程追踪系统和方法 | |
US9166988B1 (en) | System and method for controlling virtual network including security function | |
US11503070B2 (en) | Techniques for classifying a web page based upon functions used to render the web page | |
CN110084039A (zh) | 用于端点安全与网络安全服务之间的协调的框架 | |
US20240154982A1 (en) | Device Anomaly Detection | |
US11706251B2 (en) | Simulating user interactions for malware analysis | |
CN113961245A (zh) | 一种基于微服务应用的安全防护系统、方法及介质 | |
US10701087B2 (en) | Analysis apparatus, analysis method, and analysis program | |
CN111459609B (zh) | 虚拟机安全防护方法、装置及电子设备 | |
EP3750061A1 (en) | Event to serverless function workflow instance mapping mechanism | |
CN105590054A (zh) | 虚拟机进程监控的方法、装置及系统 | |
CN109189652A (zh) | 一种封闭网络终端行为数据的采集方法及系统 | |
CN113010268B (zh) | 恶意程序识别方法及装置、存储介质、电子设备 | |
CN109472147A (zh) | 一种虚拟化平台的安全检测方法及装置 | |
Schmieders et al. | Architectural runtime models for privacy checks of cloud applications | |
Wang et al. | A novel covert channel detection method in cloud based on XSRM and improved event association algorithm | |
CN109086122A (zh) | 一种虚拟机的监控方法、装置和存储介质 | |
US20240154992A1 (en) | Event-driven collection and monitoring of resources in a cloud computing environment | |
US11689630B2 (en) | Request processing method and apparatus, electronic device, and computer storage medium | |
US9436523B1 (en) | Holistic non-invasive evaluation of an asynchronous distributed software process |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160518 |
|
WD01 | Invention patent application deemed withdrawn after publication |