用于虚拟机内省的系统、方法及非暂时性计算机可读介质技术方案

技术编号:14980254 阅读:62 留言:0更新日期:2017-04-03 12:09
虚拟机内省可以包括:实施虚拟机硬盘映像的离线分析。可以在该离线分析期间定位与操作系统关联的核心操作系统文件。基于该核心操作系统文件,可以从符号服务器中访问操作系统结构符号。可以使用所访问的操作系统结构符号来实施该虚拟机的内省。

【技术实现步骤摘要】
【国外来华专利技术】
技术介绍
虚拟化的机器可以用于管理应用和服务。但是,恶意软件(例如,电脑病毒)可以安装在虚拟机(VM)上,并且用于破坏VM的操作、收集存储在VM上的信息和/或获得计算系统的访问权。恶意软件在复杂性和系统感染率方面已经增长。若不做防卫,则VM可能处于抵御恶意软件的风险中。附图说明图1图示根据本公开的用于虚拟机内省的环境的示例。图2图示根据本公开的用于虚拟机内省的系统的示例的图。图3图示根据本公开的用于虚拟机内省的计算设备的示例的图。图4图示根据本公开的用于虚拟机内省的方法的示例的流程图。具体实施方式恶意软件可能对VM带来许多问题。结果,已经设计出一些方法来帮助防止出现这些问题。一些方法尝试检测计算系统上的恶意软件,以允许采取补救措施。为了检测恶意软件,一些方法依赖于安装系统内监视代理,该系统内监视代理可以实施系统内的文件和代码执行的分析。但是,这些监视代理本身可能处于恶意软件攻击的风险中,并且复杂恶意软件的许多片段在感染系统时尝试识别并禁用任何检测到的安全软件。一些方法通过安装系统内监视代理来尝试保持对操作系统(OS)应用编程接口(API)的访问,系统内监视代理被保护以防恶意修改。系统内监视代理随后可以针对恶意软件的攻击而监视OS。但是,虽然此方法旨在保护系统内监视代理,仍可能是:该代理的存在可以被恶意软件检测到并且恶意软件能够改变该代理的行为,以使该代理在检测恶意软件时失效。其它方法通过监视类似系统的组并且通过比较从每个类似系统拍摄的内存快照来检测可能由恶意软件引起的未知的或意料不到的系统行为,对恶意软件进行检测。但是,此方法假设在拍摄内存快照并实施其分析之前,系统是未受感染的。因此,如果在拍摄内存快照以及随后比较内存快照之前多个系统感染了恶意软件,那么这些系统可能似乎未被恶意软件感染。此外,一些方法通过内存快照或通过VM内省来实施系统内存的分析。但是,在更新与系统关联的OS更新时,必须手动地更新与这些方法关联的软件,这可能使该系统直到可以实施该更新为止易受攻击。本公开的示例可以包括:实施VM硬盘映像的离线分析。在该离线分析期间可以定位与OS关联的核心OS文件。可以基于该核心操作系统文件从符号服务器中访问OS结构符号。可以使用被访问的OS结构符号来实施VM的内省。图1图示用于实施VM机内省(introspection)的环境。该环境可以包括主机系统102、管理器106、VM108、内省引擎110和生成的报告112。此外,该环境可以包括以下方法步骤:实施离线盘分析118,启动内省引擎116,以及启动虚拟机120。本公开的示例可以通过实施位于VM108之外的分析来检测VM108上的恶意软件。通过实施位于VM108之外的分析,可以避免与其它方法关联的潜在缺陷。例如,如本文讨论的,虽然一些方法使用系统内监视代理,但是该代理可能被恶意软件损坏。通过外部地实施分析,恶意软件可能没有机会影响正实施的分析。可以使用内省(introspection)来实施该分析,内省可以被限定为以下分析:该分析绕过VM的OS以直接从与VM关联的硬盘读取二进制数据。由于从虚拟机外部(例如,绕过OS)解释该虚拟机的内存可能困难,所以挑战可能与实施内省关联。例如,与虚拟机关联的内存可以包括二进制信息,该二进制信息通常可以由与OS关联的应用编程接口解释。因此,当绕过应用编程接口时,二进制信息必须被转换成有意义的信息。本公开的示例可以访问包含OS结构符号的程序数据库,OS结构符号可以用于解释与VM的内存关联的二进制数据。由于对OS进行更新,所以OS结构符号可能改变。因此,由于进行更新,所以已尝试使用内省的一些方法可能变得过时。这些方法可以包括手动地更新包含OS符号结构的注册表。但是,如本文讨论的,在实施手动更新之前的时间,VM108可能易受到恶意软件攻击。本公开的示例可以在更新包含OS结构符号的程序数据库时更新该OS结构符号。因此,在实施手动更新的时间段期间,虚拟机可以不易受到恶意软件攻击。本公开的示例可以包括:在启动VM108之前,实施118VM硬盘映像的离线分析。在一些示例中,可以启动116内省引擎,以实施离线分析118。例如,可以由内省引擎110实施VM108的分析,并且可以在断开状态下并且在VM108的初始启动之前实施VM108的分析。一旦VM108处于在线状态(例如,连接),恶意软件就可能访问VM108并因此感染VM108。因此,通过离线地实施VM108的分析,恶意软件可能没有机会访问VM108。在一些示例中,VM108硬盘映像的离线分析可以包括:在启动VM108之前,使用VM108硬盘映像生成文件偏移量(offset)。在一些示例中,由于在断开状态下并且在VM108的初始启动之前实施VM108硬盘映像的分析,所以可以根据未改变的和/或未访问的状态下的文件确定文件偏移量。因此,在一些示例中,在VM108启动时,可以在两个状态(例如,启动之前和启动之后)之间分析文件偏移量,以确定正在访问哪些文件。在本公开的一些示例中,在实施118离线分析时并且在启动120VM108之前,可以定位与OS关联的核心OS文件。在一些示例中,可以基于VM108硬盘映像的离线分析来识别OS版本,并且可以基于OS版本定位核心OS文件。核心OS文件可以包括内核编译版本、与OS关联的标识符、和/或程序数据库文件名。内核编译版本可以用于识别OS版本。在视窗OS的示例中,与OS关联的标识符可以包括全局唯一标识符。本公开的示例可以在离线分析期间定位程序数据库文件名和与VM108的OS关联的标识符。通过在离线分析期间定位程序数据库文件名和与VM108的OS关联的标识符,恶意软件可能不会影响文件名和标识符的位置,恶意软件可能引起定位到不正确的程序数据库文件名和/或标识符。如本文讨论的,在视窗OS的示例中,与OS关联的标识符可以包括全局唯一标识符,该全局唯一标识符可以与程序数据库文件名一起用于访问程序数据库。程序数据库可以包含在程序和/或系统崩溃时使用的调试信息。此外,程序数据库可以包含OS结构定义,OS结构定义可以用于实施内省。OS结构定义可以包括OS结构符号,OS结构符号可以用于解释与VM108关联的内存以及实施内省。本公开的示例可以使用程序数据库文件名和与VM108的OS关联的标识符来访问包含OS结构符号的程序数据库,以访问OS结构符号。可选地,可以基于OS版本来访问包含OS结构符号的程序数本文档来自技高网...

【技术保护点】
一种存储指令的非暂时性计算机可读介质,所述指令可由计算机执行以使所述计算机进行以下操作:实施虚拟机(VM)硬盘映像的离线分析;在所述离线分析期间,定位与操作系统(OS)关联的核心OS文件;基于所述核心OS文件,从符号服务器访问OS结构符号;以及使用所访问的OS结构符号来实施所述VM的内省。

【技术特征摘要】
【国外来华专利技术】1.一种存储指令的非暂时性计算机可读介质,所述指令可由计算机执行以使所述
计算机进行以下操作:
实施虚拟机(VM)硬盘映像的离线分析;
在所述离线分析期间,定位与操作系统(OS)关联的核心OS文件;
基于所述核心OS文件,从符号服务器访问OS结构符号;以及
使用所访问的OS结构符号来实施所述VM的内省。
2.根据权利要求1所述的介质,包括可执行以进行以下操作的指令:使用所访问
的OS结构符号来读取所述VM的内存。
3.根据权利要求1所述的介质,包括可执行以进行以下操作的指令:在更新所述
符号服务器时接收与所访问的OS结构符号关联的更新。
4.根据权利要求1所述的介质,其中在启动所述VM之前,与所述OS关联的所
述核心OS文件被定位。
5.根据权利要求1所述的介质,包括可执行以进行以下操作的指令:
修改管理器控制命令操纵器;以及
通过所述管理器控制命令操纵器,检测对所述VM的内存的改变。
6.根据权利要求1所述的介质,包括可执行以进行以下操作的指令:
在所述离线分析期间识别OS版本;以及
基于所述OS版本,定位与所述OS关联的核心OS文件。
7.根据权利要求1所述的介质,其中所述OS结构符号是基于OS版本而从所述
符号服务器访问的。
8.根据权利要求1所述的介质,包括可执行以进行以下操作的指令:使用与VM
控制结构关联的管理函数提取VM中央处理单元状态信息。
9.一种系统,包括:
实施分析引擎,用于在启动虚拟机(VM)之前实施VM硬盘映像的离线分析;
定位引擎,用于在所述离线分析期间定位程序数据库文件名和与所述VM的操作
系统(OS)关联的标识符;

【专利技术属性】
技术研发人员:托尼·罗伯茨迈克·雷奈杰尔·爱德华兹
申请(专利权)人:慧与发展有限责任合伙企业
类型:发明
国别省市:美国;US

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

1