用于优化反病毒测定的系统和方法与流程

文档序号:12748386阅读:220来源:国知局
用于优化反病毒测定的系统和方法与流程

本申请要求于2015年10月22日提交的2015145266号俄罗斯联邦专利申请的权益,其通过引用全部并入本文。

技术领域

实施例一般地涉及对可执行文件的反病毒检查(antivirus check)。更具体地,实施例涉及用于有策略地将可执行文件从反病毒检查中排除以优化反病毒评估过程的系统和方法。



背景技术:

执行可执行文件或可移植的可执行(PE)文件(其每个可包括动态库或动态链接库(DLL))对于计算机系统用户来说可能是有危险的。恶意代码主要使用这类可执行文件(例如,诸如病毒和木马程序)传播。因此,在执行或运行可执行文件之前,建议进行这类文件的反病毒测定(determinations)(或检查)。传统的反病毒检查可基于简单或复杂的检查方法两者。例如,简单的检查可以是签名扫描,其允许从所有程序中检测已知的恶意程序。然而,签名扫描可能是耗时的过程,因为用于检查的反病毒数据库常常是非常大的。在另一个示例中,复杂的检查可包括分析可执行文件的行为。这类系统可使用具有设计为用于文件的深度分析的分析模块的代码仿真器。前述检查确保计算机系统资源和个人(包括机密)用户数据这两者的安全。前述检查需要各种数量和类型的计算机资源(其典型地是有限的),这取决于所利用的检查的类型。

此外,现今的计算机系统上可执行文件的数目不断增长,其影响对所有可执行文件进行反病毒检查所需要的时间,以及为了实施相关检查需要花费的资源。结果,减少反病毒检查所需要的计算机系统资源的方法很重要。

一些优化反病毒检查的方法典型地包括使用所谓的白名单或黑名单,或基于对文件修改的跟踪(例如通过时间戳),在这之后实施检查。这些方法还可基于特定类型的可执行文件进行,诸如:目标码、PE格式的可执行文件、宏命令、或脚本等。

例如,美国专利7,490,352号描述了检查可执行文件在其开始执行的时刻是否可信的方法。该方法包括确定正被检查的文件是否属于恶意文件类型,并验证文件的完整性和发送或运行文件的源的可靠性。然而,这些方法具有一个非常大的缺点;具体地,需要预先建立前述列表(名单)。因此,上述列表中所包括的可执行文件已经经过较深的反病毒检查至少一次,其通常涉及使用所有可用的反病毒技术的测定,包括前述的那些。因此,硬件资源和时间资源也因此已经为较深的检查和为了建立列表而被分配。然而,计算系统常常需要尽快并且尽可能使用最少的计算机资源来实施新的可执行文件的反病毒检查。“新的可执行文件”意味着前述列表不包括这类文件或任何关于这类文件的信息。

因此,需要减少反病毒测定的持续时间的系统和方法,并且特别是用于包括第一次遇见的可执行文件(“新的可执行文件”)的那些检查。因此,需要优化反病毒检查的系统和方法,包括允许在可执行文件的反病毒检查之前检测可被确定为安全的那些可执行文件、并将其从进一步的反病毒检查中排除的系统和方法。



技术实现要素:

实施例配置为通过将可执行文件等从反病毒检查中排除来优化文件的反病毒检查,具体地,所述可执行文件为动态库和/或资源库,诸如新的可执行格式(NE)文件。结果,通过排除那些不包含可执行代码的文件而加速了反病毒检查。

在实施例中,用于将没有可执行代码的可执行文件从反病毒检查中排除的系统包括:检查工具,其配置为:接收可执行文件用于反病毒检查,将所述可执行文件发送到分类工具(breakdown tool),以及基于从分析工具所接收的决策,将没有可执行代码的可执行文件从所述反病毒检查中排除;所述分类工具配置为:分析所述可执行文件的结构,并通过检查所述可执行文件的头部来识别所述可执行文件的格式,以及将关于所述可执行文件的所述格式和所述可执行文件的所述结构的信息发送给所述分析工具;所述分析工具配置为:至少基于关于所述可执行文件的所述格式的信息从数据库中选择条件列表,所述条件列表包括用于分析所述可执行文件的所述结构的多个条件,使用所选择的条件列表对所述可执行文件的所述结构实施分析,所述分析包括检查来自所述所选择的条件列表中的每个条件是否满足,基于所述分析建立结果,所述结果包括关于每个被检查的条件是否满足的信息,基于所述结果发布决策,其中所述决策是:当来自所述条件列表的所有条件都满足时,所述可执行文件中不存在可执行代码,将所发布的决策发送给所述检查工具;以及数据库,其可操作地耦连到所述分析工具,并配置为存储条件列表。

在另一实施例中,用于将没有可执行代码的可执行文件从反病毒检查中排除的方法包括:使用检查工具接收可执行文件用于反病毒检查;使用分类工具分析所述可执行文件的结构,并通过检查所述可执行文件的头部来识别所述可执行文件的格式;使用分析工具至少基于关于所述可执行文件的所述格式的信息从数据库中选择条件列表,所述条件列表包括用于分析所述可执行文件的所述结构的多个条件;使用分析工具使用所选择的条件列表对所述可执行文件的所述结构实施分析,所述分析包括检查来自所述所选择的条件列表中的每个条件是否满足;基于所述分析借助于所述检查工具建立结果,所述结果包括关于每个被检查的条件是否满足的信息;基于所述结果发布决策,其中所述决策是:当来自所述条件列表的所有条件都满足时,所述可执行文件中不存在可执行代码;以及使用所述检查工具,基于所述发布的决策,将没有可执行代码的可执行文件从所述反病毒检查中排除。

以上概述并非意在描述本文主题的每个示出的实施例或每个实现方案。随后的附图和详细描述更具体地例示各实施例。

附图说明

结合附图考虑下面各实施例的详细描述可更彻底地理解本发明,其中:

图1是根据实施例的、用于优化可执行文件的反病毒检查的系统的框图。

图2是根据实施例的、用于将可执行文件从反病毒检查中排除的方法的流程图。

图3是配置为实现实施例的计算机系统的框图。

虽然各实施例可经受各种修改和替代形式,其细节已通过在图示中的示例的方式示出,并将进行详细描述。然而,应予以理解的是,意图并非将本发明限于所描述的特定实施例。相反,意图覆盖落入由权利要求所定义的主题内容的精神和范围内的所有修改、等同物以及替代物。

具体实施方式

图1是根据实施例的、用于优化可执行文件的反病毒检查的系统10的框图。具体地,图1的优化系统10配置为代表或为了用户设备20的利益将一个或多个可执行文件100从反病毒检查中排除。用户设备20可包括个人计算机、膝上型计算器、平板电脑、个人数字助理、移动设备、或任何其他配置为执行可执行文件的计算设备。如所描绘的,优化系统10通常包括用于排除一个或多个可执行文件100的反病毒系统110。

如下面将进一步描述的,反病毒系统110通常包括检查工具120和可执行文件检测系统130。可执行文件检测系统130通常包括分类(breakdown)工具150、分析工具160、以及数据库170。反病毒系统110可以经由互联网190、当然也可能通过其他联网配置可操作地耦连到反病毒服务器180。

在实施例中,反病毒检查优化系统10配置为通过将可执行文件从反病毒检查中排除来优化反病毒检查。在实施例中,可执行文件100运行处理被反病毒系统110拦截。在另一示例中,还可在使用诸如按需扫描(ODS)或基于主机的入侵防御系统(HIPS)的技术实施可执行文件100的反病毒检查的情况中利用优化系统10。如本领域技术人员将容易理解的,本文仅以示例的方式提供定时、反病毒检查和/或排除的示例,而非意在限制本申请的范围。

此外,图1描绘了如反病毒系统110所利用的可执行文件检测系统130的工具之间的示范性交互。如本文所描述的,可在可执行文件100的反病毒检查期间利用反病毒系统110的工具或模块,其因此允许检测可执行文件100并且随后从反病毒检查中排除。在实施例中,“可执行文件”可包括任何包括或匹配PE或NE格式的文件、或任何包括可执行代码的文件。具体地,PE格式文件可包括诸如动态链接库(DLL)的动态库。NE格式文件(此后称为“NE文件”)可包括资源文件(库),诸如包含视窗屏幕程序的文件(也称为背景文件),可包括具有“scr”扩展的文件。

如图1中所描绘的,反病毒系统110的实施例包括检查工具120和可执行文件检测系统130。检查工具120配置为为了检测恶意文件而实施包括可执行文件100的文件的反病毒检查。在实施例中,检查工具120进一步配置为随后移除或修复恶意文件。检查工具120可利用经典的文件检查方法,诸如使用一个或多个反病毒数据库的签名分析。在其他实施例中,检查工具120可利用更复杂的检查方法。复杂的检查方法可包括文件仿真,其包括解析命令中的字节代码,其中每个命令在虚拟的计算机副本上运行。在实施例中,仿真包括当命令运行时监控程序的行为或活动。在另一示例中,复杂的检查方法可包括启发式分析。在实施例中,启发式分析包括分析诸如过去事件的信息以检测未知的恶意程序。在另一示例中,复杂的检查方法包括利用远程服务,诸如信誉服务(例如包含文件上信息的可信服务器)。应注意,所有上述检查是消耗资源和/或耗时的操作。然而,检测系统130允许确定诸如动态库和NE文件的可执行文件100是否包含可执行代码。在实施例中,不包含可执行代码的可执行文件100被认为是安全的文件。因此,无需对安全可执行文件实施反病毒检查。

然而,并非所有的可执行文件格式都匹配特定的安全标准,诸如缺乏可执行代码。为此,系统10的实施例可预先建立仅包含可匹配指定安全标准的文件格式的文件格式列表。例如,包括在格式列表中的仅特定格式的文件被发送到检测系统130用于安全测定。根据实施例,格式列表是可更改的,这样检测系统130可专用于检查特定文件或忽视特定文件。包含在格式列表中的文件格式的示例是用于各种操作系统(诸如Windows,Linus和Mac OS)的动态库和NE文件(例如具有“scr”扩展的背景文件)。

在另一实施例中,可在检测系统130内针对关于文件格式列表中正被检查的类型的信息的可用性实施对文件格式的检查。例如,检查工具120可发送可执行文件到检测工具130。检测系统130可使用分类工具150确定所接收的文件的格式。

为了实施反病毒检查,检查工具120可拦截程序执行并发送一个或多个可执行文件100(例如动态库)到检测系统130。例如,当可执行文件诸如Notepad.exe应用运行时,检查工具120在应用加载动态库并打开其他文件时间期间进行拦截。在一个实施例中,基于可执行文件格式确定可执行的类型。

如图1所描绘的,检测系统130包括分类工具150、分析工具160和数据库170。分类工具150配置为分析可执行文件(例如动态库)的结构。在实施例中,结构测定包括至少确定可执行文件的格式。在实施例中,对于动态库,格式可以是如下中的一个:“本地DLL”或“.NET组件DLL”。

在实施例中,分类工具150还配置为确定是否存在包含在可执行文件100的结构中并被执行的节(section)。例如,如果节可被执行,这样的测定可基于节的可执行状态(标志)来进行。分类工具150还可配置为确定可执行文件的程序代码开始执行的地址(即进入点)。分类工具150可将关于可执行文件100的格式的信息和它的结构提供给分析工具160。

分析工具160配置为根据条件列表分析可执行文件,例如动态库(此后称为“DLL文件”)。在实施例中,基于从分类工具150所接收的文件格式信息,从数据库170选择条件列表。因此,在实施例中,针对每个文件格式将存在一个条件列表。条件列表可包括用于分析可执行文件(动态库)的结构的条件。在下面的示例中提供条件列表的示例。

分析本身包括检查来自条件列表的每个条件针对正被检查的特定文件(DLL文件)被满足。在这之后,分析工具160可建立分析结果。分析结果可包括关于来自条件列表的每个条件是否已被满足的信息。如果所有条件都满足,分析工具160发布不存在可执行代码的决断,并裁决正被检查的文件为安全的。否则,如果至少一个条件未满足,分析工具160发布存在可执行代码的决断,并裁决正被检查的文件为可疑的。结果,文件将随后经受反病毒检查。分析工具160随后将所发布的决断提供给检查工具120。相应地,在检查工具120获得不存在可执行代码的决断的实施例中,检查工具120将该可执行文件从反病毒检查中排除。否则,如果检查工具120获得存在可执行代码的决断,检查工具120将实施反病毒检查并发布关于该文件安全或恶意的决断。

在实施例中,对于格式列表中的至少每个格式,数据库170配置为存储一个条件列表以用于在分析中使用。因此,当向格式列表添加新的格式时,也将针对该新格式的新的条件列表添加到数据库170。数据库170也可不管格式列表而被填充,这样条件列表可自组织地(ad hoc)被填充或没有一对一比例的格式与条件列表。

在另一实施例中,可基于特定的未满足条件而设置具体类型的反病毒检查。例如,对于DLL文件,条件可指示输出节(export section)的地址和大小必须等于0,即节必须为空。然而,如果输出节包含任何信息(例如,需要什么函数用于文件的执行以及可从什么地址接收该函数),这指示未满足或失效的条件。这样,来自节的该信息可在反病毒检查期间被使用,例如,基于文件的相关“白名单”或“黑名单”或文件签名使用签名分析。

如图1所示,反病毒系统110配置为可操作地耦连到反病毒服务器180。在实施例中,反病毒系统110和反病毒服务器180之间的接口允许经由诸如互联网190的各种网络交换信息。例如,反病毒服务器180使与格式列表的新格式或新的或经修改的条件列表相关的信息传输或以其他方式可用。进一步地,反病毒系统110可将关于经检查和被排除的可执行文件(动态库)的信息传输到反病毒服务器180或以其他方式对反病毒服务器180可用。

下面讨论的是将Notepad.exe应用的可执行文件从反病毒检查中排除的示例。当Notepad.exe应用运行时,也加载包含Notepad.exe应用运作所需要的资源和函数的动态库。例如,动态库之一是Notepad.exe.mui动态库。在操作中,反病毒系统110使用检查工具120拦截动态库Notepad.exe.mui的加载过程。在实施例中,检查工具120可包含如上所述的格式列表。在该实施例中,检查工具120配置为仅将匹配格式列表中的那些的文件发送到分类工具150或以其他方式使其对分类工具可用。在该示例中,Notepad.exe.mui动态库是匹配格式列表中格式的DLL格式文件(此后称为“DLL文件”)。因此,检查工具120将动态库发送到检测系统130。具体地,将Notepad.exe.mui特别发送到分类工具150。

一旦接收到DLL文件,分类工具150将DLL文件的结构进行“分类”或分析。在将DLL文件结构分类期间,通过检查DLL文件在字段(field)“特征”中的数据头(header)来确定(确认)DLL文件格式。在指定字段中,(在DLL文件中,例如,字段值被针对IMAGE_FILE_DLL结构而设置)检测相应的标志。对于DLL文件,分类工具150配置为确定文件属于“本地DLL”动态库类型。在此之后,分类工具150发送包括DLL文件(动态库)100的格式的信息以及DLL文件结构给分析工具160。

在实施例中,分类工具150配置为检查是否存在可执行节。例如,分类工具150可确定是否可执行特定节。对于经识别的可执行节,分类工具150还配置为检查入口点或程序代码执行的开始。该数据(入口点和节的检查)可以是随前述信息和DLL文件结构发送到分析工具160的附加的标准。例如,对于本地DLL格式动态库,如下传输标准可以是强制性的:对于每个执行节,入口点必须指示零地址(0x00),并且在节阵列中不存在执行状态(标志)。否则,如果至少一个标准未满足,则分类工具150不将前述信息和DLL文件结构发送给分析工具160,并且反而通知检查工具120。相应地,检查工具120实施反病毒检查。此外,在另一个实施例中,指定的标准可以是数据库170中存储的至少一个条件列表中包括的条件。

分析工具160基于从分类工具150所接收的关于DLL文件格式的信息从数据库170选择条件列表。条件列表的选择是根据具体的文件格式。对于上述DLL文件(Notepad.exe.mui),条件列表根据“本地DLL”格式而选择。例如,条件列表可以包含如下条件,意在用于IMAGE_DATA_DIRECTORY结构阵列的分析:

-“资源表”节(资源节)的地址和大小不等于零,即关于资源的信息存在;

-“输出表”节(输出节)的地址和大小等于零,即不存在关于可输出函数的信息;

-“输入表”节(输入节)的地址和大小等于零,即不存在关于可输入函数的信息;

-“输入地址表”节(输入表节)的地址和大小等于零,即不存在关于输入地址表的信息;以及

-“线程本地存储”(TLS)表(线程存储器节)的地址和大小等于零,即不存在TLS。

在实施例中,条件列表包括前述条件中的至少三个。在其他实施例中,也可利用其他组合或联合的条件。在其他实施例中,还可利用其他组合或链接条件。例如,第一条件可以触发第二条件的评估。在另一示例中,第一条件可以触发第二和第三条件两者的评估等。

分析工具160还配置为根据所选择的条件列表进行DLL文件结构的分析。在实施例中,根据条件列表对文件结构的分析包括检查来自条件列表的每个条件是否被满足。在分析之后,分析工具160建立结果。结果包含关于条件是否满足的信息。例如,结果可包括关于是否所有条件都满足或是否至少一个条件未满足的二进制标志。在另一个示例中,结果可包括关于满足的一个或多个条件和未满足的一个或多个条件的数据。在这类实施例中,可利用合适的数据结构来包含条件数据。

回到Notepad示例,DLL文件(Notepad.exe.mui)的检查结果对应于所有条件都满足的情况。因此,分析工具160发布存在可执行代码的决断,以及至少基于可执行代码的存在,裁决被检查的文件是安全的。在此之后,分析工具160将所发布的决策发送给检查工具120或以其他方式使其对检查工具120可用。检查工具120随后至少基于来自分析工具160的存在可执行代码的决策将DLL文件从反病毒检查中排除。

在另一个示例中,可从反病毒检查中排除系统资源文件。例如,可调用来自标准微软.NET框架包的System.XML.resources.dll文件。相应地,反病毒系统110可使用检查工具120拦截System.XML.resources.dll文件(此后称为“.NET文件”)的载入。随后,将.NET文件发送到分类工具150或以其他方式使其对分类工具150可用。分类工具150随后将.NET文件的结构进行分类。例如,分类工具150可通过字段“特征”中的文件头确定.NET文件格式。在字段“特征”中,相关标志的存在被检测或以其他方式被确定。分类工具150可确定.NET文件属于“.NET组件DLL”动态库类型。在此之后,分类工具150将关于.NET文件100的格式的信息和它的结构发送到分析工具160或以其他方式使其对分析工具160可用。

进一步地,在实施例中,分类工具150还可检查是否存在可执行节(可被执行的节),并可确定入口点(程序代码执行的开始)的地址。该数据可随文件结构数据被发送到分析工具160。例如,对于“.NET资源DLL”动态库格式,以下的标准可以是强制性的:

-至多存在一节可被执行,即该节在字段“特征”中具有相应的标志;以及

-入口点必须指示零地址(0х00)或根据具体节的入口点可被执行;在该情况下,来自.NET文件的入口点指示从mscoree.dll库调用_CorDllMain函数。否则,如果至少一个标准未满足,则分类工具150不向分析工具160发送.NET文件格式和结构信息,而是适当地通知检查工具120。相应地,检查工具120随后实施反病毒检查。此外,在另一示例中,指定标准还可包括来自数据库170中存储的条件列表的条件。在实施例中红,如果前述标准是条件,则分类工具不使用它们作为附加传输标准。

回到格式和结构标准都满足的示例,分析工具160如上所述地基于从分类工具150所接收的关于.NET文件格式的信息从数据库170中选择条件列表,并根据所选择的条件列表实施对.NET文件的分析。对于.NET文件,条件列表可根据.NET资源DLL格式而被选择,并且可包含如下条件:

-到_CorDllMain可输入函数的入口点,在其中不存在其他可输入函数,并且_CorDllMain函数本身从mscoree.dll输入;

-除了从mscoree.dll库可输入的函数,不存在可输入函数;

-“输出表”节(输出节)的地址和大小等于零,即不存在关于可输出函数的信息;

-“线程本地存储”(TLS)表(线程存储器节)的地址和大小等于零,即不存在TLS;

-.NET元数据节的地址和大小不等于零;

-管理的本地头(ManagedNativeHeader)结构的地址和大小等于零,即被检查的.NET文件不是本地图像(NativeImage)文件;

-存在可管理资源,其大小不等于零;以及

-掩蔽有效(MaskValid)字段没有与以下方法中的表相关的位(bit):MethodDef、MethodPtr、MethodSemantics、MethodImpl以及MetodSpec。

在实施例中,条件列表包括前述条件中的至少三个。在其他实施例中,条件列表可包括前述条件中的少于三个。

在分析确定条件是否满足之后,分析工具160建立相关的结果。结果包含关于是否来自条件列表的所有条件均满足或是否至少一个条件未满足的信息。例如NET文件,假定来自条件列表的所有上述条件都满足。这样,分析工具160发布存在可执行代码的决策,并裁决被检查的文件是安全的。在此之后,分析工具160将所发布的决策发送给检查工具120或以其他方式使其对检查工具120可用。相应地,检查工具120基于存在可执行代码的至少一个决策将.NET文件从反病毒检查中排除。

为了从反病毒检查中被排除,其他匹配前述格式列表的文件格式可被分析。例如,可执行DOS文件以及资源文件(诸如字体文件)是MZ-NE格式文件的示例。因此,对于上述文件格式,用于执行文件分析的条件列表可与文件格式相对应。例如,条件列表可包含以下条件:

-节的数目等于零(文件段(segment)数=0,自动数据段数=0);

-堆(heap)分配节(存储器分配节)的地址和大小等于零;

-堆栈(stack)分配节(堆栈中的位置)的地址和大小等于零;

-控制寄存器以零开始(IP=0,CS=0,SP=0,SS=0);以及

-不存在用于输入的库(输入名称(ImportNames)节指示零地址,0x0000)。

在另一实施例中,分析工具160配置为在文件分析期间实施顺序的条件检查。例如,仅当前面的条件满足后才检查后面的条件。因此,如果一个条件未满足,则分析工具160可中断检查,并将相应的结果连同检查因为条件未满足而被中断的消息发送到检查工具120。因此,检查工具120根据指定的条件将实施反病毒检查。

参考图2,描绘了根据实施例的用于将可执行文件从反病毒检查中排除的方法200的流程图。具体地,方法200适于将诸如缺乏可执行代码的动态库的可执行文件100从反病毒检查中排除。在反病毒处理期间,如果文件被裁决为可执行的,那么,在对该文件进行反病毒检查之前,方法200被应用以从反病毒检查中排除该可执行文件。基于方法200的结果,可做出决策以从反病毒检查中排除可执行文件。如本文所描述的,方法200可特别用于排除动态库和NE文件。

在210,接收待解决(at-issue)的可执行文件用于反病毒检查。在另一实施例中,拦截可执行文件的运行过程。例如,可利用检查工具120接收可执行文件。检查工具120可随后将所接收的文件发送给分类工具150或以其他方式使其对分类工具150可用。

在220,分类工具150基于分析文件结构和在文件头中的字段“特征”中检测相应的文件格式标记来确定所接收文件的格式。例如,可做出文件是动态库(本地DLL格式)、可控动态库(.NET组件DLL)、或NE文件(MZ-NE格式)的测定。

在230,将经确定的文件格式与文件格式列表相比较。格式列表包含如果后续检查成功则可从反病毒检查中排除的文件的格式。如果文件的格式存在于格式列表中,则分类工具150对文件实施进一步的分类或分析。否则,由检查工具120在235对文件实施反病毒检查。

回到文件格式与格式列表中的格式之一相匹配的情况,分类工具150确定可被执行的程序代码的节。在实施例中,可被执行的节可采用字段“特征”中的相关标记来标记。在240,在250确定可执行文件中程序代码执行开始地址(入口点)。在该情况下,将前述条件(对节和入口点的检查)与针对特定文件格式的相关标准进行比较。在图1的描述中呈现240和250的示例。例如,针对本地DLL文件格式的这些条件(对节和入口点的检查)必须满足如下标准:入口点必须指示零地址,针对每个可执行节的节阵列开始处必须没有可执行标记。如果上述条件未满足,方法200停止于255。然后,通知检查工具120,检查工具120继续到235。否则,分类工具150将关于文件格式和结构的信息发送到分析工具160。

在260,分析工具160基于所接收的关于文件格式的信息选择条件列表以用于进行分析。

在270,分析工具160根据所选择的条件列表实施分析并建立分析结果。在实施例中,在270的分析包括检查来自条件列表的每个条件被满足。分析结果可包括关于条件列表的每个条件满足的信息。

在280,基于分析结果,建立所有条件都满足的决策。这样,如果至少一个条件未满足,则分析工具160发布存在可执行代码的决策,并裁决被检查的文件是可疑的,并要求在235使用检查工具120进行反病毒检查。否则,如果所有条件均满足,则分析工具160发布不存在可执行代码的决策,并裁决被检查的文件是安全的。在此之后,分析工具160将不存在可执行代码的决策发送到检查工具120或以其他方式使其对检查工具120可用。

因此,基于所接收的决策,检查工具120在290将可执行文件从反病毒检查中排除。

图3是更详细示出根据各实施例的、本文所描述的发明的各方面可在其上实现的计算机系统300的示意图。

计算机系统300可包括诸如个人计算机320的计算设备,所述个人计算机320包括一个或多个处理单元321、系统存储器322和系统总线323,其包含各系统组件,包括与一个或多个处理单元321连接的存储器。在各实施例中,处理单元321可包括能够处理存储在计算机可读介质上的信息多个逻辑核。系统总线323实现为相关技术水平已知的任何总线结构,依次包含总线存储器或总线存储器控制器、外围总线和本地总线,其能够与任何其他总线架构交互。系统存储器可包括诸如只读存储器(ROM)324的非易失性存储器,或诸如随机存取存储器(RAM325)的易失性存储器。基本输入/输出系统(BIOS)326包含确保个人计算机320的元件之间的信息传输的基本程序,例如,在使用ROM 324启动操作系统期间。

个人计算机320依次具有用于数据读写的硬盘驱动327、用于在可移动磁盘329上读写的磁盘驱动328、以及用于在可移动光盘331上读写的光驱330,可移动光盘331诸如CD-ROM、DVD-ROM、以及其他光介质。硬盘驱动327、磁盘驱动328以及光驱330分别通过硬盘驱动接口332、磁盘驱动接口333和光驱接口334与系统总线323相连接。这些驱动和相应的计算机信息截止表示不依赖能量的装置,用于存储计算机指令、数据结构、程序模块和个人计算机320上的其他数据。

所描绘的系统包括硬盘驱动327、可移动磁盘驱动329和可移动光驱330,但是应理解可能使用其他类型的计算机介质,其能够以计算机可读形式(固态驱动、闪存卡、数字盘、随机存取存储器(RAM)等)存储数据,通过控制器355连接到系统总线323。

计算机320包括文件系统336,在其中存储记录的操作系统335、以及附加的程序应用337、其他程序引擎338和程序数据339。用户可使用输入设备(键盘340、鼠标342)将命令和信息输入到个人计算机320。也可使用其他输入设备(未示出),诸如麦克风、操纵杆、游戏控制器、扫描仪等。这类输入设备通常通过串行端口346连接到计算机系统320,串行端口346转而连接到系统总线,但是它们还可以不同的方式连接——例如,使用并行端口、游戏端口或通用串行总线(USB)。监视器347或另外类型的显示设备也通过诸如视频适配器348的接口的连接到系统总线323。除了监视器347,个人计算机320可配备有其他外围输出设备(未示出),诸如扬声器、打印机等。

个人计算机320能够在网络环境中工作;在该情况下,它使用网络与一个或若干其他远程计算机349连接。一个或多个远程计算机349与个人计算机或服务器类似,其具有当描述如图3中所示的个人计算机320的内容时早期陈述的以上元件中的大部分或全部。计算网络还可具有其他设备,诸如路由器、网络站、对等设备或其他网络节点。

网络连接可包括局域网(LAN)350和广域网(WAN)。这类网络用于企业计算机网络或用于企业内部网中,并通常可接入互联网。在LAN或WAN网络中,个人计算机320通过网络适配器或网络接口351连接到局域网350。当使用网络时,个人计算机320可使用调制解调器354或其他装置用于连接到广域网,诸如互联网。为内部或外部设备的调制解调器354通过串行端口346连接到系统总线323。应该阐明,这些网络连接仅是示例,且不必体现精确的网络配置,即在现实中存在其他使用通信技术手段在计算机之间建立连接的装置。

本文已描述系统、设备和方法的各实施例。这些实施例仅以示例的方式给出,而非意在限制所要求保护的发明的范围。此外,应理解,已描述的实施例的各特征可以各种方式加以组合以产生大量附加的实施例。此外,虽然已描述各种材料、尺寸、形状、配置和位置等用于所公开的实施例,但可在不超过所要求保护的发明的范围的情况下利用所公开那些以外的其他。

相关领域的普通技术人员将意识到,本文的主题可包括比上文所描述的任何单个实施例中所示出的更少的特征。本文所描述的实施例不意味着是本文的主题的各种特征可以其组合的方式的穷举呈现。因此,这些实施例不是相互排斥的特征的组合;而是,如本领域的普通技术人员所理解的,各实施例可包括从不同的各个实施例中所选择的不同的各个特征的组合。此外,关于一个实施例所描述的元素可在其他实施中实现,即使在这类实施例中没有描述,除非另有说明。

虽然从属权利要求可能引用权利要求中一个或多个其他权利要求的特定组合,其他实施例也可包括该从属权利要求与每个其他从属权利要求的主题的组合,或一个或多个特征与其他从属或独立权利要求的组合。这类组合在本文中提出,除非说明某具体组合是不需要的。

限制通过引用上文文档的任何合并,使得不合并与本文明确的公开相反的主题。进一步限制通过引用上文文档的任何合并,使得在文档中所包括的权利要求不会通过引用被合并。还进一步限制通过引用上文文档的任何合并,使得除非本文明确加以包括,否则本文不通过引用对文档中所提供的任何定义加以合并。

出于对本发明诠释权利要求的目的,明确意图的是,除非在权利要求中引述具体术语“用于……的装置”或“用于……的步骤”,否则将不调用美国法典第35篇第112节第六段的条款。

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