一种监控操作系统行为的方法及装置与流程

文档序号:12786776阅读:311来源:国知局
一种监控操作系统行为的方法及装置与流程

本申请涉及计算机技术领域,尤其涉及一种监控操作系统行为的方法及装置。



背景技术:

随着互联网技术的不断发展,计算机在用户的日常生活中也变得越来越重要。但是也有越来越多的恶意程序(如,计算机病毒、后门程序、木马、间谍软件以及广告软件等)在攻击着用户使用的计算机,威胁着用户的个人信息(如,账号信息、身份信息等)安全,极大的影响了用户对互联网的使用。

目前,越来越多的用户选择在个人电脑(Personal Computer,PC)上安装第三方安全防御软件,通过第三方安全软件对计算机操作系统的行为进行监控,并对监控到的恶意操作系统行为进行相应处理,以达到防御恶意程序攻击的目的。

其中,在进行操作系统的行为监控时,往往需要第三方安全防御软件对操作系统内核进行修改操作。

然而,现有的一些计算机操作系统(如,微软的64位Windows操作系统等),禁止第三方安全防御软件对操作系统内核进行修改操作,这就使第三方安全防御软件无法对操作系统的行为进行监控,从而导致第三方安全防御软件无法实现为计算机提供防御恶意程序攻击的功能。



技术实现要素:

本申请实施例提供一种监控操作系统行为的方法,用以解决由于计算机操作系统禁止第三方软件对操作系统内核进行修改操作,而导致第三方安全软件 无法对操作系统的行为进行监控的问题。

本申请实施例还提供一种监控操作系统行为的装置,用以解决由于计算机操作系统禁止第三方软件对操作系统内核进行修改操作,而导致第三方安全软件无法对操作系统的行为进行监控的问题。

本申请实施例采用下述技术方案:

一种监控操作系统行为的方法,包括:

对计算机操作系统内核进行修改操作,并确定进行所述修改操作的计算机是否出现预定响应;

当所述计算机出现预定响应时,通过对所述计算机操作系统执行硬件虚拟化操作,生成虚拟机监视器,并向所述计算机中央处理器发送模式切换请求,以使得所述中央处理器响应于所述请求,将所述计算机操作系统切换为虚拟机模式,并通过所述虚拟监视器监控运行在虚拟机模式下的计算机操作系统行为;

当所述计算机未出现预定响应时,对所述计算机操作系统行为进行监控。

一种监控操作系统行为的装置,包括:

预定响应监控单元,用于对计算机操作系统内核进行修改操作,并确定进行所述修改操作的计算机是否出现预定响应;

虚拟机监视器生成单元,用于当所述计算机出现预定响应时,通过对所述计算机操作系统执行硬件虚拟化操作,生成虚拟机监视器,并向所述计算机中央处理器发送模式切换请求,以使得所述中央处理器响应于所述请求,将所述计算机操作系统切换为虚拟机模式,并通过所述虚拟监视器监控运行在虚拟机模式下的计算机操作系统行为;

操作系统操作行为监控单元,用于当所述计算机未出现预定响应时,对所述计算机操作系统行为进行监控。

本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:

防护程序对计算机操作系统内核进行修改操作,并确定进行修改操作的计 算机是否出现预定响应;当所述计算机未出现预定响应时,可以确定所述计算机操作系统允许防护程序对操作系统内核进行修改操作,则防护程序可以通过所述内核修改操作,对该计算机操作系统行为进行监控;当所述计算机出现预定响应时,说明该计算机操作系统禁止防护程序对操作系统内核进行修改操作,则防护程序通过对所述计算机操作系统执行硬件虚拟化操作,生成虚拟机监视器,并向所述计算机中央处理器发送模式切换请求,以使得所述中央处理器将所述计算机操作系统切换为虚拟机模式,从而可以通过所述虚拟监视器监控运行在虚拟机模式下的计算机操作系统行为。因此,防护程序可以对计算机操作系统行为的监控,从而可以为计算机提供防御恶意程序攻击的功能。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1为本申请实施例提供的一种监控操作系统行为的方法的具体流程示意图;

图2为本申请实施例提供的一种监控操作系统行为的装置的具体结构示意图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

以下结合附图,详细说明本申请各实施例提供的技术方案。

实施例1

本申请实施例1提供了一种监控操作系统行为的方法,用以解决由于计算机操作系统禁止第三方软件对操作系统内核进行修改操作,而导致第三方安全软件无法对操作系统的行为进行监控的问题。

本申请实施例提供的拦截系统调用方法的执行主体,可以但不限于为平板电脑以及个人电脑(Personal Computer,PC)等终端设备中的至少一种。此外,该方法的执行主体,也可以是终端设备上安装的应用程序。

为便于描述,下文以该方法的执行主体为防护程序为例,对该方法的实施方式进行介绍。可以理解,该方法的执行主体为防护程序只是一种示例性的说明,并不应理解为对该方法的限定。

该方法的具体实现流程示意图如图1所示,主要包括下述步骤:

步骤11,防护程序对计算机操作系统内核进行修改操作;

所述防护程序,可以为计算机提供病毒查杀、插件清理、漏洞修复、操作行为监控、操作行为拦截、隐私数据保护、垃圾数据清理以及访问痕迹清理,等多种功能。

防护程序可以通过修改操作,对计算机操作系统内核的关键数据以及内核代码进行修改,比如防护程序可以通过修改操作,替换、修改或者删除计算机操作系统内核的关键数据。

步骤12,判断通进行所述计算机操作系统内核修改的计算机是否出现预定响应;当判断结果为否时,执行步骤13;当判断结果为是时,执行步骤14;

所述预定响应可以包括计算机蓝屏。

所述蓝屏,又称蓝屏死机(Blue Screen of Death,BSoD)。是指当计算机操作系统(如,Windows操作系统)崩溃或停止执行(由于内核错误或者内部条件阻止操作系统继续运行下去)时,计算机所显示的蓝色屏幕。

目前,一些计算机操作系统开发商为了避免第三方应用程序对操作系统内核代码与关键数据的修改,在其开发的操作系统中引入了计算机操作系统保护 程序。在这种情况下,当第三方应用程序通过修改操作对操作系统内核进行修改后,所述计算机操作系统保护程序将会阻止操作系统继续运行,进而造成计算机蓝屏。

防护程序通过对计算机操作系统内核进行修改操作,并根据进行修改操作后的计算机是否蓝屏,进而可以确定所述计算机操作系统是否允许应用程序对计算机操作系统内核进行修改。

需要说明的是,防护程序可以通过对计算机操作系统内核进行修改操作,以使得该防护程序可以对所述计算机操作系统行为进行监控。比如,防护程序可以将操作系统内核中模式专用寄存器调用驱动地址修改为所述防护程序驱动的入口地址,在这种情况下,所述计算机操作系统对驱动程序的调用请求均会发送至所述防护程序驱动,从而可以达到通过防护程序对操作系统行为进行监控的目的。

步骤13,对所述计算机操作系统行为进行监控;

其中,所述计算机操作系统行为,比如可以包括计算机操作系统对存储器的读写行为,对硬件驱动程序的调用行为以及对系统调用接口的调用行为等等中的至少一种。

通过执行步骤11,当所述计算机未出现蓝屏,则说明所述计算机允许第三方应用程序对计算机操作系统内核的修改。在这种情况下,防护程序可以采用对计算机操作系统内核进行修改操作的方法,对所述计算机操作系统行为进行监控的目的。

需要说明的是,当通过步骤11对计算机操作系统内核进行的修改操作,以使得该防护程序可以对所述计算机操作系统行为进行监控时,则此时防护程序可以直接对执行步骤11后的计算机操作系统的行为进行监控。

步骤14,通过对所述计算机操作系统执行硬件虚拟化操作,生成虚拟机监视器。

通过执行步骤11,当所述计算机出现蓝屏时,则说明所述计算机不允许第 三方应用程序对计算机操作系统内核的修改。在这种情况下,防护程序将无法通过对计算机操作系统内核进行修改操作的方式,对所述计算机操作系统行为进行监控。

为了解决由于计算机操作系统禁止防护程序对操作系统内核进行修改操作,而导致防护程序无法对操作系统的行为进行监控的问题,本申请实施例中,防护程序可以利用中央处理器(Central Processing Unit,CPU)的硬件虚拟化技术,通过对所述计算机操作系统执行硬件虚拟化操作,生成虚拟机监视器(Virtual Machine Monitor,VMM),并通过所述虚拟监视器对计算机操作系统行为进行监控,具体包括:通过对所述计算机操作系统执行硬件虚拟化操作,生成虚拟机监视器,并向所述计算机中央处理器发送模式切换请求,以使得所述中央处理器响应于所述请求,将所述计算机操作系统切换为虚拟机模式,并通过所述虚拟监视器监控运行在虚拟机模式下的计算机操作系统行为。

需要说明的是,所述防护程序可以向所述计算机操作系统的至少一个中央处理器发送硬件虚拟化的请求,以使得所述至少一个中央处理器响应于所述硬件虚拟化的请求,执行硬件虚拟化操作,生成虚拟机监视器。

其中,硬件虚拟化是指借助计算机硬件(主要是主机处理器)的支持来实现的全虚拟化。硬件虚拟化技术的具体原理为:允许物理机器(如,个人电脑、平板电脑等)被分区或共享,以使该机器的底层硬件呈现为一个或多个独立工作的虚拟机。

计算机操作系统可以在虚拟机上运行,防护程序可以通过向CPU发送模式切换请求,以使得CPU将所述计算机操作系统切换至虚拟机上运行。在虚拟机内运行的计算机操作系统可以访问计算机上的硬件资源。所述计算机上的硬件资源可包括一个或多个处理器、驻留在该处理器(例如,高速缓冲存储器)上的资源、存储器以及驻留在物理机中的其他资源(例如,输入/输出(input/output,I/O)设备)。

为了可以通过所述虚拟监视器监控运行在虚拟机上的计算机操作系统行 为,防护程序需要对所述虚拟监视器以及运行在虚拟机上的计算机操作系统的权限进行修改,具体可以包括:向所述至少一个中央处理器发送操作模式设置请求,以使得所述中央处理器响应于所述操作模式设置请求,在非根虚拟化操作模式下运行所述计算机操作系统;向所述至少一个中央处理器发送操作模式设置请求,以使得所述中央处理器响应于所述操作模式设置请求,在根虚拟化操作模式下运行所述虚拟监视器。

通过上述操作,可以使得计算机操作系统运行在权限较低的非根虚拟化操作模式,而将所述虚拟监视器运行在权限较高的根虚拟化操作模式,即,此时计算机操作系统的权限低于所述虚拟监视器的权限,从而可以通过所述虚拟监视器对所述计算机操作系统的行为进行监控。

通过执行步骤13,防护程序可以利用CPU提供的硬件虚拟化技术,对所述计算机操作系统执行硬件虚拟化操作,生成虚拟机监视器,并通过所述虚拟监视器,对计算机操作系统行为进行监控。采用上述方法,防护程序不需要对计算机操作系统内核进行修改,而仅利用计算机CPU提供的硬件虚拟化技术,即可达到对计算机操作系统行为监控的目的。

采用本申请实施例1提供的监控操作系统行为的方法,防护程序通过对计算机操作系统内核进行修改操作,并确定进行修改操作的计算机是否出现预定响应;当所述计算机未出现预定响应时,可以确定所述计算机操作系统允许防护程序对操作系统内核进行修改操作,则防护程序可以通过所述内核修改操作,对该计算机操作系统行为进行监控;当所述计算机出现预定响应时,说明该计算机操作系统禁止防护程序对操作系统内核进行修改操作,则防护程序通过对所述计算机操作系统执行硬件虚拟化操作,生成虚拟机监视器,并向所述计算机中央处理器发送模式切换请求,以使得所述中央处理器将所述计算机操作系统切换为虚拟机模式,从而可以通过所述虚拟监视器监控运行在虚拟机模式下的计算机操作系统行为。因此,防护程序可以对计算机操作系统行为的监控,从而可以为计算机提供防御恶意程序攻击的功能。

实施例2

本申请实施例2提供了一种监控操作系统行为的装置,用以解决由于计算机操作系统禁止第三方软件对操作系统内核进行修改操作,而导致第三方安全软件无法对操作系统的行为进行监控的问题。该装置的具体结构示意图如图2所示,包括:预定响应监控单元21、虚拟机监视器生成单元22以及操作系统操作行为监控单元23。

其中,预定响应监控单元21,用于对计算机操作系统内核进行修改操作,并确定进行所述修改操作的计算机是否出现预定响应;

虚拟机监视器生成单元22,用于当所述计算机出现预定响应时,通过对所述计算机操作系统执行硬件虚拟化操作,生成虚拟机监视器,并向所述计算机中央处理器发送模式切换请求,以使得所述中央处理器响应于所述请求,将所述计算机操作系统切换为虚拟机模式,并通过所述虚拟监视器监控运行在虚拟机模式下的计算机操作系统行为;

操作系统操作行为监控单元23,用于当所述计算机未出现预定响应时,对所述计算机操作系统行为进行监控。

在一种实施方式中,所述预定响应包括蓝屏。

在一种实施方式中,虚拟机监视器生成单元22,用于:向所述计算机操作系统的至少一个中央处理器发送硬件虚拟化的请求,以使得所述至少一个中央处理器响应于所述硬件虚拟化的请求,执行硬件虚拟化操作,生成虚拟机监视器。

在一种实施方式中,虚拟机监视器生成单元22,还用于:向所述至少一个中央处理器发送操作模式设置请求,以使得所述中央处理器响应于所述操作模式设置请求,在非根虚拟化操作模式下运行所述计算机操作系统。

在一种实施方式中,虚拟机监视器生成单元22,还用于:向所述至少一个中央处理器发送操作模式设置请求,以使得所述中央处理器响应于所述操作模 式设置请求,在根虚拟化操作模式下运行所述虚拟监视器;通过所述运行在根虚拟化操作模式下的虚拟监视器对运行在非根虚拟化操作模式下的计算机操作系统的行为进行监控。

采用本申请实施例2提供的监控操作系统行为的装置,防护程序通过对计算机操作系统内核进行修改操作,并确定进行修改操作的计算机是否出现预定响应;当所述计算机未出现预定响应时,可以确定所述计算机操作系统允许防护程序对操作系统内核进行修改操作,则防护程序可以通过所述内核修改操作,对该计算机操作系统行为进行监控;当所述计算机出现预定响应时,说明该计算机操作系统禁止防护程序对操作系统内核进行修改操作,则防护程序通过对所述计算机操作系统执行硬件虚拟化操作,生成虚拟机监视器,并向所述计算机中央处理器发送模式切换请求,以使得所述中央处理器将所述计算机操作系统切换为虚拟机模式,从而可以通过所述虚拟监视器监控运行在虚拟机模式下的计算机操作系统行为。因此,防护程序可以对计算机操作系统行为的监控,从而可以为计算机提供防御恶意程序攻击的功能。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使 得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和 硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1