一种检测和防御计算机恶意程序的系统和方法

文档序号:6530558阅读:125来源:国知局
专利名称:一种检测和防御计算机恶意程序的系统和方法
技术领域
本发明涉及一种检测和防御计算机病毒、木马程序等恶意破坏程序的技术,特别是能检测和防御未知恶意程序的系统和方法。
背景技术
长期以来,以计算机病毒、逻辑炸弹、特洛伊木马程序、间谍程序为主的执行结果具有破坏性(毁坏系统、篡改文件、影响系统稳定与执行效率、窃取信息等)的计算机程序(以下统称恶意程序)一直是计算机使用中的重大问题,它们对信息安全具有重大的威胁。这些恶意程序种类繁多,传播方式多样,让人防不胜防,如很多恶意程序利用操作系统的漏洞通过网络传播或通过感染计算机中的可执行文件传播;有的恶意程序(如特洛伊木马程序)经常伪装成正常程序,引诱用户执行,从而达到某种目的。它们一旦发作就会对计算机系统造成破坏,轻则篡改文件、影响系统稳定与执行效率、窃取信息,重则导致系统瘫痪,甚至破坏系统硬件部分。
目前普遍使用的杀毒软件技术大多只能检测和杀除已知类型的恶意程序程序,且普遍采用特征码匹配技术。这种方法无法有效判断未知恶意程序,只有在恶意程序被病毒分析人员分析提取特征码并加入病毒库中后才可以被检测。
目前也有人开发了能够检测未知病毒的杀毒技术,例如广谱查毒、启发式查毒等,通过对大量病毒的行为特征进行描述分析,将经典的病毒行为特征串作为检测标准,主要通过经验判断。此方法误报率和漏报率较高。此类方法依然属于静态特征字符串匹配类型。
还有的通过在“虚拟计算机”中模拟执行待检测程序的方法,可以在一个软件模拟的计算机环境中执行目标程序,并放置诱饵文件,引诱病毒执行,通过检测虚拟环境中诱饵文件是否改变来检测未知病毒的方法。此方法利用虚拟机技术,可以判定一部分未知病毒。但是,由于虚拟机环境与真实计算机环境的差异,不能完整的模拟系统。并且由于检测时需要启动一个虚拟机,占用系统资源较大,只能实现查毒,无法在程序执行时实时监测防御。
虚拟机运行待检测程序判断恶意程序的方法,主要有两方面问题。一是占用系统资源巨大,无法做到在程序运行时实时检测,只能通过人为去执行检测。二是,虚拟机环境与真机之间的差异。已经发现有病毒可以专门针对此种虚拟机进行特定操作,如发现自身在虚拟环境中运行则不执行破坏操作,以躲避检测,更有甚者会针对特定虚拟机的漏洞进行攻击。

发明内容
针对上述现有检测恶意程序技术中的问题,本发明的目的在于提供一种能在真实环境中运行、占用系统资源少、误报率低、能实时进行有效检测和防御已知及未知病毒的系统。
本发明的另一目的在于提供一种能在真实环境中运行、占用系统资源少、误报率低、能实时进行有效检测和防御已知及未知病毒的方法。
本发明的目的是通过如下的技术方案实现的一种检测和防御计算机恶意程序的系统,包括计算机操作系统监控装置,用于收集目标程序执行的动作信息;目标程序行为记录装置,用于临时保存目标程序所进行的操作记录,并记录修改前后的文件、注册表内容;已知行为特征存储装置,用于保存已知的、整理到的特定操作信息,并存储有各种操作相对应的威胁级别权值;目标程序行为识别分析装置,用于比较目标程序行为与已知行为特征,根据目标程序行为对应的威胁级别权值进行加权计算,达到一定阈值则确定该目标程序为恶意程序;结果调度处理装置,用于对目标程序行为识别分析装置确定为恶意程序的目标程序进行终止操作并通知用户进行处理或者自行调度处理;恶意行为撤销装置,用于对被推断为恶意程序的目标程序所执行的保存于目标程序行为记录装置中的操作进行撤销。
所述系统还包括用户交互控制装置,用于对经过结果调度处理装置传送来的被终止的目标程序进行处理,并反馈给结果调度处理装置。
所述系统还包括恶意程序报告装置,用于对目标程序行为识别分析装置确定为恶意程序的程序文件或无法确定的文件,在结果调度处理装置的处理下通过网络提交给有关部门或专业反病毒公司,交由专业分析人员分析。
一种检测和防御计算机恶意程序的方法,包括正常的启动和结束步骤外,该方法还包括以下步骤目标程序行为收集步骤,收集目标程序执行的动作信息;目标程序行为记录步骤,临时保存目标程序所进行的操作记录,并记录修改前后的文件、注册表内容;目标程序行为识别分析步骤,比较目标程序行为与已知行为特征,根据目标程序行为对应的威胁级别权值进行加权计算,达到一定阈值则确定该目标程序为恶意程序;结果调度处理步骤对目标程序行为识别分析装置确定为恶意程序的目标程序进行终止操作并通知用户进行处理或者自行调度处理;恶意行为撤销步骤,对被推断为恶意程序的目标程序所执行的操作进行撤销。
所述方法还包括用户交互控制步骤,对经过结果调度处理装置传送来的被终止的目标程序进行处理,并反馈给结果调度处理装置。
所述系统还包括恶意程序报告步骤,对被确定为恶意程序的程序文件或无法确定的文件,经过系统调度或者用户交互控制通过网络提交给有关部门,或专业反病毒公司,交由专业分析人员分析。
本发明根据恶意程序要达到其传播、隐藏、破坏的目的,要进行一些特定的操作的特性。将收集到的目标程序执行的操作,与已知行为(经过计算机安全人员对已有恶意程序的操作信息分析,积累出的经典的危险操作行为)相对照,并对系统敏感文件、敏感磁盘位置进行监控,可以自动推定目标程序的危险级别。当推定一个程序的操作具有破坏性时,便暂停目标程序,并反馈给计算机操作人员进行相应处理或者系统自行进行调度处理。本发明是根据目标程序在真实计算机中运行所产生的结果进行判断,与已有的文件静态扫描,虚拟机执行等方法不同,具有占用系统资源少、误报率低、能实时进行有效检测和防御已知及未知病毒。既可以判断恶意程序,又可以有效防护系统安全,还可以对危险操作进行恢复操作。因此,此项发明对于扼制计算机病毒传播具有一定意义。


图1为包含本发明检测和防御计算机恶意程序的系统的计算机结构示意图;图2为本发明检测和防御计算机恶意程序的方法的工作流程图;具体实施方式
如图1所示,在一个普通的计算机系统中,装有一个可由该计算机执行的检测和防御计算机恶意程序的系统1、目标程序2、计算机操作系统3、以及网络连接模块4、文件系统5、注册表数据库6;在该计算机中还带有通常的CPU、内存储设备和外存储设备(图中未示出)。所述目标程序2可以存在于计算机内外存储设备的文件以及从网络下载和传输的文件或数据包中。所述目标程序2能够在所述计算机操作系统3中运行,并能够调用相关功能函数达到操作所述网络连接模块、文件系统、注册表数据库等软硬件。所述检测和防御计算机恶意程序的系统1能够通过对所述目标程序调用相关功能函数的过程进行有效监控。
所述检测和防御计算机恶意程序的系统1包括计算机操作系统监控装置11,用于收集目标程序执行动作信息,是所述检测和防御计算机恶意程序的系统1中最基本的装置,又称为目标程序行为收集装置。所述计算机操作系统监控装置11一般包括文件监控模块111、进程监控模块112、网络监控模块113、注册表监控模块114。
所述文件监控模块111,通过挂接操作系统文件操作,可以监控目标程序2的每一个读写文件请求。因为对于传统文件传染型病毒,包括DOS、PE病毒,为了达到传播复制的目的,必须对被感染EXE或COM文件进行改写;传统引导型病毒,会改写软盘及硬盘引导扇区特定位置;对于木马、间谍软件等恶意程序,为了实现破坏或窃取信息目的,也会对特定文件进行读写操作。为了增加对恶意程序判定的准确率,可以在系统中放置特定的诱饵文件;或特别通过文件监控收集目标程序对操作系统敏感文件的读写操作。通过文件监控模块可以将以上目标程序的操作截获,并将此动作信息提交给目标程序行为记录装置12。
进程监控模块112,监控目标程序2执行的系统调用。
网络监控模块113,由于大多新型病毒通过网络进行传播,木马、间谍程序窃取信息也大多通过网络发送。通过监控目标程序2网络连接与发送行为,供上层分析程序参考。
注册表监控模块114,操作系统注册表是操作系统各种重要信息、系统配置的数据库。其中一些重要内容,如系统启动运行项目、文件类型关联等等,一旦被改动,对系统安全会造成不确定影响。注册表监控模块114会将目标程序2对注册表所进行改动操作收集汇报给目标行为记录装置。
目标程序行为记录装置12,用于临时保存目标程序2所进行的敏感操作记录,并记录修改后的文件、注册表内容。供行为识别分析装置判断目标程序2的威胁级别,并在确认恶意程序后供恶意行为撤销装置用于恢复修复系统原有状态。
已知行为特征存储装置14,用于保存根据对已知恶意程序的分析,总结整理出的经典行为参考数据,包括有各种操作威胁级别的权值;用于辅助判定,提高恶意程序识别的效率与准确程度;目标程序行为识别分析装置13,根据计算机操作系统监控装置11收集的目标程序行为,以及存储于已知行为特征存储装置14现有的行为特征,进行综合判断;并根据目标程序行为对应的威胁级别权值进行加权计算,达到一定阈值则确认为该目标程序为恶意程序。它利用恶意程序行为的基本特征感染性、敏感系统文件操作等特性来综合检测恶意程序。对于无法确定的恶意程序,可以通过结合传统病毒特征码技术进行扫描。
恶意程序行为撤销装置15,用于在已经判定目标程序为恶意程序后,根据目标行为记录装置12中所保存的目标程序所执行的操作行为记录,反向进行回滚操作,以撤销其对系统的影响,恢复到保存的之前状态。因为有些操作无法撤销(如发送网络数据),因此此方法理论上不能做到完全的防御,但却可以通过优化将恶意程序对系统及网络的破坏减到最小。
结果调度处理装置16,用于对目标程序行为识别分析装置13确定为恶意程序的目标程序2进行挂起(终止)操作并通知用户进行处理或者自行调度处理。即当目标程序行为识别分析装置13判断目标程序2具有一定威胁程度,便挂起(终止)目标程序2,并通知用户进行处理或者自行调度处理。自行处理可以调用恶意程序行为撤销装置恢复系统状态或者通过恶意程序报告装置上报相关机构。
所述检测和防御计算机恶意程序的系统1还包括用户交互控制装置17,用于对经过结果调度处理装置16传送来的被挂起的目标程序进行处理(一般以弹出式菜单供用户选择),并反馈相关信息给结果调度处理装置16。此时,用户可以选择忽略继续执行、调用恶意程序行为撤销装置恢复系统状态和/或通过恶意程序报告装置上报相关机构;
恶意程序报告装置18,用于将被确定为恶意程序的目标程序文件,或无法确定的目标程序文件,通过网络提交给有关部门,或专业反病毒公司,交由专业分析人员分析。这将有利于突发新病毒的早发现,早处理,可以遏制病毒传播。
如图2所示为本发明检测和防御计算机恶意程序方法的工作流程图。该流程的各个步骤如下S0、启动启动检测和防御计算机恶意程序的系统1。在启动检测和防御计算机恶意程序的系统1之前操作系统3业已启动,否则没办法启动上述系统1;为了达到理想效果,最好在启动检测和防御计算机恶意程序的系统1之后再启动目标程序2。
S1、目标程序行为收集步骤在该步骤中,所述目标程序2发出调用系统的请求,所述计算机操作系统监控装置11通过对目标程序2在所述操作系统3中运行时发出的调用请求监控收集目标程序2欲执行的动作信息;这些监控包括文件监控、进程监控、网络监控、注册表监控等。
S2、目标程序行为记录步骤临时保存来自计算机操作系统监控装置11收集来的目标程序2所进行的操作记录信息,并记录修改后的文件、注册表内容。与此同时,操作系统执行目标程序的动作。
S3、目标程序行为识别分析步骤根据保存于目标程序行为记录装置12中的来自计算机操作系统监控装置11收集的目标程序行为,以及存储于已知行为特征存储装置14现有的行为特征,进行综合判断;并根据目标程序行为对应的威胁级别权值进行加权计算,达到一定阈值则确认为该目标程序为恶意程序;而且目标程序行为对应的威胁级别加权值越高,该恶意程序的危险程度越高。否则,认为该目标程序为正常程序,执行步骤S6。
S4、结果调度处理在本步骤中,通过步骤S3被确定为恶意程序的目标程序将会被终止执行;并通知用户进行处理或者自行调度处理。自行处理可以调用恶意程序行为撤销装置恢复系统状态和/或者通过恶意程序报告装置上报相关机构。
S5、恶意程序行为撤销步骤,对于被确认为恶意程序的目标程序所执行的操作,根据目标行为记录装置12中所保存的目标程序所执行的操作行为记录,反向进行回滚操作,以撤销其对系统的影响,恢复到保存的之前状态;并执行步骤S7。
S6、判断是否结束检测系统,如果不结束,则返回步骤S1进行循环检测;如果结束,则执行步骤S7。
S7、结束检测系统的运行。
所述检测和防御计算机恶意程序的方法1还包括如下步骤S8、用户交互控制步骤用户对经过结果调度处理装置16传送来的被终止的目标程序进行处理(一般以弹出式菜单供用户选择)。用户可以选择忽略继续执行、调用恶意程序行为撤销装置恢复系统状态和/或通过恶意程序报告装置上报相关机构;然后可以结束。
S9、恶意程序报告步骤,对被确定为恶意程序的程序文件或无法确定的文件,经过系统调度或者用户交互控制通过网络提交给有关部门或专业反病毒公司,交由专业分析人员分析。
本发明的上述恶意程序检测与防御系统都可以通过普通的计算机编程语言(如C语言等)编制相应的软件程序来实现,该系统可以装在计算机中运行;可以包含在软盘、光盘等介质中进行销售和运行使用;也可以通过网络和互联网的方式进行传播和下载执行。
本发明的实施例不能认为是对本发明的一种限制,本领域的技术人员在本发明的基础上所做的非实质性的改进或改变都应该落入本发明权利要求书的保护范围。
权利要求
1.一种检测和防御计算机恶意程序的系统,其特征在于,该系统包括计算机操作系统监控装置,用于收集目标程序执行的动作信息;目标程序行为记录装置,用于临时保存目标程序所进行的操作记录,并记录修改前后的文件、注册表内容;已知行为特征存储装置,用于保存已知的、整理到的特定操作信息,并存储有各种操作相对应的威胁级别权值;目标程序行为识别分析装置,用于比较目标程序行为与已知行为特征,根据目标程序行为对应的威胁级别权值进行加权计算,达到一定阈值则确定该目标程序为恶意程序;结果调度处理装置,用于对目标程序行为识别分析装置确定为恶意程序的目标程序进行终止操作并通知用户进行处理或者自行调度处理;恶意行为撤销装置,用于对被推断为恶意程序的目标程序所执行的保存于目标程序行为记录装置中的操作进行撤销。
2.根据权利要求1所述的系统,其特征在于,该系统还包括用户交互控制装置,用于对经过结果调度处理装置传送来的被终止的目标程序进行处理,并反馈给结果调度处理装置。
3.根据权利要求1所述的系统,其特征在于,所述系统还包括恶意程序报告装置,用于对目标程序行为识别分析装置确定为恶意程序的程序文件或无法确定的文件,在结果调度处理装置的处理下通过网络提交给有关部门或专业反病毒公司,交由专业分析人员分析。
4.根据权利要求1或2或3所述的系统,其特征在于,计算机操作系统监控装置,包括有文件监控模块、进程监控模块、网络监控模块、注册表监控模块;所述文件监控模块,通过挂接操作系统文件操作,用于监控目标程序的每一个读写文件请求;所述进程监控模块,用于监控目标程序执行的系统调用;所述网络监控模块,用于监控目标程序网络连接与发送行为;所述注册表监控模块,用于监控目标程序对注册表所进行改动操作。
5.根据权利要求4所述的系统,其特征在于,在所述系统中,通过文件监控收集目标程序对操作系统敏感文件的读写操作。
6.一种检测和防御计算机恶意程序的方法,包括正常的启动和结束步骤外,其特征在于,该方法还包括以下步骤目标程序行为收集步骤,收集目标程序执行的动作信息;目标程序行为记录步骤,临时保存目标程序所进行的操作记录,并记录修改前后的文件、注册表内容;目标程序行为识别分析步骤,比较目标程序行为与已知行为特征,根据目标程序行为对应的威胁级别权值进行加权计算,达到一定阈值则确定该目标程序为恶意程序;否则,认为该目标程序为正常程序,结束检测或者循环检测;结果调度处理步骤对目标程序行为识别分析装置确定为恶意程序的目标程序进行终止操作并通知用户进行处理或者自行调度处理;恶意行为撤销步骤,对被推断为恶意程序的目标程序所执行的操作进行撤销。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括用户交互控制步骤,对经过结果调度处理装置传送来的被终止的目标程序进行处理,并反馈给结果调度处理装置。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括恶意程序报告步骤,对被确定为恶意程序的程序文件或无法确定的文件,经过系统调度或者用户交互控制通过网络提交给有关部门或专业反病毒公司,交由专业分析人员分析。
9.根据权利要求6或7或8所述的方法,其特征在于,所述目标程序行为收集步骤通过文件监控、进程监控、网络监控块、注册表监控实现;所述文件监控,通过挂接操作系统文件操作,可以监控目标程序的每一个读写文件请求;所述进程监控,监控目标程序执行的系统调用;所述网络监控,监控目标程序网络连接与发送行为;所述注册表监控,监控目标程序对注册表所进行改动操作。
10.根据权利要求9所述的方法,其特征在于,在所述系统中,通过文件监控收集目标程序对操作系统敏感文件的读写操作。
全文摘要
一种检测和防御计算机恶意程序的系统,包括计算机操作系统监控装置,用于收集目标程序执行的动作信息;目标程序行为记录装置,用于临时保存目标程序所进行的操作记录,并记录修改前后的文件、注册表内容;已知行为特征存储装置,用于保存已知的、整理到的特定操作信息,并存储有各种操作相对应的威胁级别权值;目标程序行为识别分析装置,用于比较目标程序行为与已知行为特征,根据目标程序行为对应的威胁级别权值进行加权计算,达到一定阈值则确定该目标程序为恶意程序;结果调度处理装置,用于对被确定为恶意程序的目标程序进行终止操作并通知用户进行处理或者自行调度处理;恶意行为撤销装置,用于对被推断为恶意程序的目标程序所执行的操作进行撤销。
文档编号G06F1/00GK1737722SQ20051003627
公开日2006年2月22日 申请日期2005年8月3日 优先权日2005年8月3日
发明者陈睿, 孟槟榔, 韩祝鹏, 陈飞舟, 孙国军 申请人:珠海金山软件股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1