创建在恶意软件检测中使用的定制化置信带的系统和方法

文档序号:6360869阅读:161来源:国知局
专利名称:创建在恶意软件检测中使用的定制化置信带的系统和方法
创建在恶意软件检测中使用的定制化置信带的系统和方法
背景技术
消费者和企业面临着恶意软件日渐增长的趋势,恶意软件威胁他们的计算机的稳定性和性能以及他们数据的安全性。具有恶意动机的计算机程序员已经创建并继续创建病毒、特洛伊木马、蠕虫、以及其他程序(统称为“恶意软件”),以试图危害计算机系统。为了逃避检测,不怀好意的程序员可以将恶意软件注入合法程序之中或之间。很多安全软件公司通过为它们的客户定期地创建和配置恶意软件签名(例如,唯一识别恶意软件的散列函数)来努力与恶意软件进行斗争。然而,大量恶意软件仍未得到识别,因此利用传统的基于签名的恶意软件检测机制是无法检测到,尤其是因为恶意软件作者可以定期地修改他们的恶意软件,以试图绕过通常使用的基于签名的恶意软件检测机制。除了基于签名的方法外或作为它的替代形式,安全软件公司可以采用各种探试法,以便基于不同特征和/或行为对文件和程序进行分类(例如分类为恶意的或安全的)。不幸地是,基于探试法的分类方法可能导致不可接受数量的误判和/或漏判。因此,本披露认识到需要一些改进的恶意软件检测机制和技术。

发明内容
如以下更为详细说明的,本披露总体上涉及创建在恶意软件检测中使用的定制化置信带的多种系统及方法。在一个实例中,在此描述的系统可以通过以下操作完成这种任务:1)识别能够接收可执行内容的一个门户(例如互联网浏览器、电子邮件客户端、对等网络客户端、聊天客户端等),2)识别与该门户相关的元数据,3)分析该元数据以确定通过该门户接收的可执行内容造成何种风险,然后4)基于该分析,创建一个置信带以便应用在通过该门户接收的可执行内容的至少一次处置过程中。在一些实例中,该元数据识别源自该门户的多个可执行对象、该门户的受欢迎程度(例如,该门户的用户数量和/或使用频率)、和/或源自该门户的不受信任的可执行对象的发生率(例如,从该门户下载的可执行对象被安全系统标记的频率)。在此描述的系统可以从各种来源汇集这类元数据,例如该门户的多个实例(例如,从该门户在各种用户的系统上的不同安装程序)。在一些实例中,该门户可以包括能够创建一个附加可执行对象(例如,通过下载该附加可执行对象,从而在一个本地系统上创建一个副本)的一个可执行对象(例如,进程、可执行文件等)。在一个实例中,在此描述的系统可以基于可应用于该门户的一个或多个用户配置来创建该置信带。例如,用户、管理员、和/或安全厂商可以基于某些门户和/或多类门户的已知特征为这些门户或多类门户设置参数。在一些实例中,该置信带可以应用到一类门户(例如,总的来说是互联网浏览器,而不是一个具体的互联网浏览器)。—旦创建了置信带,在此描述的系统可以通过以下操作应用该置信带:1)识别源自该门户的与该置信带相关联的一个可执行对象(例如,从该门户下载的一个可执行文件),以及2)在该可执行对象的一次处置过程中应用该置信带(例如,通过利用该置信带并结合该可执行对象的分析来确定针对于该可执行对象采取何种安全动作(如果存在的话))。例如,在此描述的系统可以确定与该可执行对象相关联的一个风险评分(独立产生或接收自一个信誉服务)使得该可执行对象被分类为在置信带中是安全的、恶意的、或不确定的。如以下将要详细解释的,在此描述的系统和方法可以基于原始门户能够进行可执行对象的定制化处置。在可执行对象的处置过程中通过利用定制化的置信带,这些系统和方法可以改善现有的基于试探法的恶意软件检测技术,有可能减少误判和/或漏判并因此增强安全性和/或用户体检。来自上述任一个实施方案的多种特征可以根据在此说明的通用原理彼此相互结合使用。通过阅读以下的详细说明连同附图和权利要求,将会更加全面地理解这些以及其他的实施方案、特征、和优点。


附图展示了多个示例性实施方案并且是本说明书的一部分。这些附图与以下的说明共同展现并解释了本披露的不同原理。图1是创建在恶意软件检测中使用的定制化置信带的一个示例性系统的方框图。图2是创建在恶意软件检测中使用的定制化置信带的一个示例性系统的方框图。图3是创建在恶意软件检测中使用的定制化置信带的一个示例性方法的流程图。图4是用于恶意软件检测的示例性定制化置信带的图示。图5是创建在恶意软件检测中使用的定制化置信带的一个示例性系统的方框图。图6是创建在恶意软件检测中使用的定制化置信带的一个示例性方法的流程图。图7是一个示例性计算系统的方框图,该计算系统能够实施在此说明和/或展示的这些实施方案中的一个或多个。图8是一种示例性计算网络的框图,该计算网络能够实施在此说明和/或展示的这些实施方案中的一个或多个。贯穿这些附图,相同的参考字符以及描述表示相似的但并不一定完全相同的要素。虽然在此说明的这些示例性实施方案可容许进行不同的修改以及多种替代形式,在此仍在附图中以举例的方式示出多个具体的实施方案并且对其进行了详细的说明。然而,在此说明的多个示例性实施方案无意限制于所披露的这些具体形式。相反,本披露涵盖了落入所附权利要求范围内的所有修改形式、等效形式、以及替代方案。
具体实施例方式以下将参见图1、2以及5详细描述创建在恶意软件检测中使用的定制化置信带的示例性系统。还将结合图3、4和6提供相应的计算机实施的方法的详细说明。另外,将结合图7和8分别提供一种示例性计算系统和网络架构的详细说明,它们能够实施在此说明的这些实施方案中的一个或多个。图1是创建在恶意软件检测中使用的定制化置信带的一个示例性系统100的方框图。如此图中所示,示例性系统100可以包括用于执行一项或多项任务的一个或多个模块102。例如,如以下将更为详细解释的,示例性系统100可以包括识别模块104,该模块被编程用于I)识别接收可执行内容的门户,以及2)识别与该门户相关的元数据。示例性系统100还可以包括分析模块106,该模块被编程用于分析元数据以确定通过该门户接收的可执行内容造成何种风险。示例性系统100还可以包括创建模块108,该模块被编程用于基于这种分析来创建置信带以便在可执行内容(通过该门户接收)的一次或多次处置过程中应用。尽管展示为多个分离的元件,图1中模块102的一个或多个可以代表一个单一模块或应用程序中的多个部分。在某些实施方案中,图1中模块102的一个或多个可以代表一个或多个软件应用程序或程序,这些软件应用程序或程序在由计算装置执行时可以使该计算装置执行一项或多项任务。例如,如以下更为详细解释的,模块102中的一个或多个可以代表在一个或多个计算装置上存储并被配置为在其上运行的多个软件模块,例如图2所示计算系统202、图7中的计算系统710、和/或图8中的示例性网络架构800的多个部分。图1中模块102的一个或多个还可以代表被配置用于执行一项或多项任务的一个或多个专用计算机的全部或一部分。图1中的示例性系统100可以采用各种方式进行部署。例如,示例性系统100的全部或一部分可以代表图2中示例性系统200的多个部分。如图2所示,系统200可以包括通过网络204与服务器206进行通信的计算系统202。在一个实施方案中,计算系统202可以包括图1的模块102 (例如,识别模块104、分析模块106以及创建模块108)。在一个实施方案中,如以下更为详细讨论的,模块102可以被编程用于(例如作为安装在计算系统202上的安全软件的一部分)1)识别能够接收可执行内容(例如,通过网络204来自于服务器206的内容)的计算系统202上的一个门户(例如,门户210),2)识别与该门户相关的元数据(例如,元数据220),3)分析该元数据以确定通过该门户接收的可执行内容会造成何种风险,然后4)基于该分析创建一个置信带以便应用在通过该门户接收的可执行内容的一次或多次处理过程中。接着,模块102可以将置信带应用在源自该门户的可执行对象的处理过程中(例如,通过利用该置信带并结合该可执行对象的分析来确定针对该可执行对象采取何种安全动作(如果存在的话))。计算系统202通常代表能够读取计算机可执行指令的任意类型或形式的计算装置。计算系统202的实例包括(但不限于)膝上型计算机、桌上型计算机、服务器、蜂窝电话、个人数字助理(PDA)、多媒体播放器、嵌入式系统、以上各项中的一项或多项的组合、图7中示例性计算系统710、或任意其他适当的计算装置。服务器206通常代表任意类型或形式的计算装置,该装置能够传输可执行内容和/或传输产生可执行内容的指令。服务器206的实例包括(但不限于)被配置用于提供各种数据库服务和/或运行某些软件应用程序的应用程序服务器和数据库服务器。网络204通常代表能够协助通信或数据传输的任意介质或架构。网络204的实例包括(但不限于):内部网、广域网(WAN)、局域网(LAN)、个人区域网(PAN)、互联网、电力线通信(PLC)、蜂窝网络(例如GSM网络)、图8中的示例性网络架构800等。网络204可以利用无线或有线连接来协助通信或数据传送。在一个实施方案中,网络204可以协助计算系统202和服务器206之间的通信。图3是一个示例性的用于创建在恶意软件检测中使用的定制化置信带的计算机实施的方法300的流程图。图3中所示的步骤可以由任意适合的计算机可执行代码和/或计算系统来执行。在一些实施方案中,图3所示的步骤可以由图1中系统100和/或图2中系统200的组件中的一个或多个来执行。如图3所示,在步骤302本文描述的系统的一个或多个可以识别接收可执行内容的门户。例如,作为图2中计算系统202的一部分,识别模块104可以识别门户210。如本文所用,术语“可执行内容”可以指代任意可执行文件和/或可执行指令集。另外或可替代地,“可执行内容”可以指代能够转换为和/或解释为可执行指令的任何数据。例如,“可执行内容”可以指代包含可执行文件的归档文件、具有指令(可由解释器执行)的脚本、库对象等。在一些实例中,“可执行内容”可以指代使得门户创建、产生和/或保存可执行指令的内容。如本文所用,术语“门户”通常可以指代能够接收可执行内容的任何对象和/或路径。门户的实例包括(但不限于)互联网浏览器(例如,能够从互联网下载可执行内容的浏览器),例如MOZILLA FIREF0X、微软IE浏览器或SAFARI ;电子邮件客户端(例如,能够接收和/或下载可执行内容作为附件的客户端),例如微软OUTLOOK ;对等网络客户端(例如,分布式和/或分散式文件共享客户端),例如UTORRENT、LIMEWIRE、或AZUREUS ;聊天客户端(例如,能够接收可执行内容作为附件和/或接收可执行内容的链接的客户端),例如SKYPE、AOLINSTANT MESSENGER、或 G00GLETALK 等。在一些实例中,门户可以包括能够创建附加可执行对象(例如可执行文件、进程等)的可执行对象(即,包括可执行内容的任意对象)。在此实例中,通过创建从另一个位置(例如,在网络上)接收的可执行对象的本地副本,可执行对象可以“创建”附加的可执行对象。例如,门户可以包括能够下载附加可执行对象的可执行对象。本文描述的系统可以采用任意适合的形式来识别步骤302中的门户。例如,识别模块104可以检测创建新的可执行对象的尝试并可以将图2中的门户210识别为该尝试的来源。在此实例中,识别模块104可监控与门户210相关联的I/O操作和/或网络流量。另外或可替代地,识别模块104可以接收消息(例如从入侵防护系统),该消息识别源自门户210的新近创建的可执行对象。在其他实例中,识别模块104通过简单地从识别该门户的配置文件(例如将该门户识别为需要定制化置信带的门户)进行读取来识别该门户。在一些实例中,识别模块104可以将应用程序识别为门户。另外或可替代地,识别模块104可以将可执行组件(例如,插件、库、扩展名等)识别为门户。例如,如果一个互联网浏览器包括能够下载可执行内容的插件,则识别模块104可以该识别互联网浏览器和/或可以识别该插件。转至图3,在步骤304,本文描述的系统的一个或多个可以识别与步骤302中识别的门户相关的元数据。例如,在步骤304,作为图2中计算系统202的一部分,识别模块104可以识别与门户210相关的元数据220。如本文所用,术语“与门户相关的元数据”可以指代在由门户接收和/或创建的可执行内容的处置过程中有帮助的任何数据。这种元数据的实例包括(但不限于)与该门户和/或该门户接收的可执行内容相关的统计资料、指示源自该门户的可执行对象数量的信息(例如,指示该门户已经创建了 1000个可执行对象的信息)、指示源自该门户的不受信任可执行对象的发生率的信息(例如,该信息表示门户已经创建了 100个不受信任的可执行对象和/或该门户创建的可执行对象的10%是不受信任的)、指示该门户的受欢迎程度的信息(例如,该门户如何广泛地被采用、该门户被使用了多少次等)或类似的信息。在一些实例中,通过汇集门户的多个实例上的元数据,识别模块104可以识别与该门户相关的元数据。例如,识别模块104可以识别、汇集和/或总计不同用户系统上门户的不同安装程序的元数据。识别模块104可以采用任意适合的方式来执行步骤304。在一些实例中,通过监控门户,识别模块104可以识别与有问题的门户相关的元数据。另外或可替代地,通过读取包括该元数据的数据库,识别模块104可以识别与有问题的门户相关的元数据。在一些实例中,识别模块104可从另一个应用程序接收元数据。例如,识别模块104可以从能够跟踪门户的已识别实例的安全软件(例如N0RT0NINSIGHT)来接收表示该门户的受欢迎程度的信息。同样,识别模块104可以接收表示多个可执行对象和/或源自安全软件的门户的被感染和/或不受信任的可执行对象的比率的信息。转至图3,在步骤306,本文描述的系统的一个或多个可以分析步骤304中识别的元数据以确定通过门户接收的可执行内容会造成何种风险。例如,在步骤306,作为图2中计算系统202的一部分,分析模块106可以分析元数据220以确定通过门户210接收的可执行内容对计算系统202会造成何种风险。分析模块106可以采用任意适合的方式执行步骤306。例如,分析模块106可以基于步骤304中识别的元数据来计算风险评分和/或一系列风险因素。例如,分析模块106可以为较高比例的以往通过门户接收的不受信任的可执行对象来设置更高的风险评分。另外或可替代地,分析模块106可以为不太受欢迎的门户设置更高的风险评分。在一些实例中,分析模块106可以分析历史数据,这些历史数据与利用统计技术通过门户接收的可执行对象的处置方式、随时间变化的趋势、版本号信息等相关。在步骤308,本文描述的系统的一个或多个可以基于步骤306中执行的分析来创建置信带,以便应用在通过门户接收的可执行内容的一次或多次处置过程中。例如在步骤308,作为图2中计算系统202的一部分,创建模块108可以创建置信带230以应用在通过门户210接收的可执行内容的一次或多次处置过程中。如本文所用,术语“处置”可以指代分类和/或补救的任意处理过程。例如,如以下更为详细描述的,可执行文件的处置可以包括将该文件分类为安全的、恶意的、或不确定的。在一些实例中,作为处置的一部分,可执行对象可以接收表示该可执行对象造成风险的评分。如本文所用,术语“置信带”可以指代用于一次处置的不同可能结果和/或类别的范围和/或阈值的任意集合。例如,图4是系统400中用于恶意软件检测的示例性定制化置信带的图示。如图4所示,可执行对象412、414、422和432各自可以收到分别为120、_120、20和-20的风险评分(例如,在分析后由安全软件来分配)。在此实例中,置信带410、420和430各自可以对应于一个不同的门户。如图4所示,对于每个置信带而言,可执行对象412可以属于“良好”类别。同样,对于每个置信带而言,可执行对象414可以属于“差”类别然而,根据置信带410、420或430是否应用,可执行对象422可以属于“不确定”、“良好”或“差”。同样,根据置信带410和420,可执行对象432可以属于“不确定”类别,但根据置信带430,可以属于“差”类别。因此,可执行对象422和432的处置可以依赖于哪个门户发起了它们。尽管图4展示了三个可能的类别,如以下更为详细描述的,置信带可以包含各种类别、补救和/或其他安全动作。创建模块108可以采用各种方式来创建置信带。例如,创建模块108可以创建置信带以应用于一类门户。如前所提及,门户可以包括各种应用程序中的任意一种,例如互联网浏览器、电子邮件客户端、对等网络客户端等。因此创建模块108可以创建置信带以应用于特定的门户(例如,M0ZILLAFIREF0X)。另外或可替代地,创建模块108可以创建置信带以应用于一类门户(例如,所有的互联网浏览器,包括MOZILLA FIREF0X、微软IE浏览器、SAFAR1、GOOGLE CHROME 等)。在一些实例中,创建模块108可以基于可应用于门户的至少一个用户配置来创建置信带。例如,用户、管理员、和/或安全厂商可以基于某些门户或多类门户的已知特征为这些门户或多类门户设置参数。例如,安全厂商可以识别门户中的安全漏洞并预期该安全漏洞可能被广泛利用。因此,安全厂商可以向门户的置信带的配置中添加参数以便对源自该门户的可执行内容进行更为严格的分类。以图4为例,创建模块108可以创建置信带410以便处置源自互联网浏览器(作为一类)的可执行内容。在此实例中,创建模块108可以基于源自互联网浏览器的可执行内容中的恶意软件的平均发生率而在置信带410中设置阈值。创建模块108还可以创建置信带420以进行源自电子邮件客户端(作为一类)的可执行内容的处置。在此实例中,创建模块108可以基于源自电子邮件客户端的可执行内容中的恶意软件的较低发生率而降低对于置信带410为“良好的”可执行内容的阈值。而且,用户(例如,安全厂商、管理员等)可以基于通常在网关上已过滤了电子邮件中的恶意可执行对象的观察而向创建模块108提交参数以缩小“不确定的”可执行内容的范围。同样基于元数据分析和用户配置,创建模块108还可以创建置信带430以进行源自对等网络客户端(作为一类)的可执行内容的处置。在此实例中,创建模块108可以基于源自对等网络客户端的可执行内容中的恶意软件的较高发生率而扩大“良好的”可执行内容的范围,并且可以根据用户配置来缩小置信带430中的“不确定的”可执行内容的范围以便在较大程度上减少漏判(例如,相比于互联网浏览器或电子邮件的内容中的漏判,管理员可以更少地关心由对等网络下载产生的漏判。)。在步骤308之后,方法300可以结束。如以上详细说明的,在源自不同门户的可执行对象的处置过程中,本文描述的系统可以应用根据图3中的示例性方法300产生的置信带。图6是一种用于在恶意软件检测中应用这种定制化置信带的示例性计算机实施的方法600的流程图。图6中所示的步骤可以由任意适合的计算机可执行代码和/或计算系统来执行。在一些实施方案中,图6中所示的步骤可以通过图1中系统100、图2中系统200和/或图5中系统500的组件中的一个或多个来执行。如图6所示,在步骤602,本文所描述系统的一个或多个可以识别源自一个门户的可执行对象。例如在步骤602,作为图5中计算系统202的一部分,处置模块510可以识别源自门户210的可执行对象520。本文描述的系统可以采用任意适合的方式执行步骤602。例如,处置模块510可以检测创建新的可执行对象的尝试并且可以将图5中门户210识别为该尝试的来源。在此实例中,处置模块510可以监控与门户210相关联的I/O操作和/或网络流量。另外或可替代地,处置模块510可以接收消息(例如,从入侵防护系统),该消息识别源自门户210的新近创建的可执行对象。在步骤604,本文描述系统的一个或多个可以在可执行对象的处置过程中使用与有问题的门户相关联的置信带。例如在步骤604,作为图5中计算系统202的一部分,处置模块510可以在可执行对象520的处置过程中使用与门户210相关联的置信带230。当步骤604完成时,方法600可以结束。本文描述的系统可以采用任意适合的方式执行步骤604。例如,处置模块510可以在分析可执行对象的各种行为和/或特征时使用一种或多种试探法以便为可执行对象分配风险评分。另外或可替代地,处置模块510可以识别先前分配(通过例如信誉服务)给可执行对象的风险评分。然后处置模块510可以通过确定分配给可执行对象的风险评分落在置信带230的哪个位置而对该可执行对象进行分类。例如,图5中的处置模块510可以识别图4中通过对等网络客户端接收的可执行对象422。在此实例中,处置模块510可以从信誉服务检索(利用例如基于散列的查找系统)先前分配给可执行对象422的风险评分(在此实例中,是20)。然后,处置模块510可以在该可执行对象422的处置过程中将置信带430用于可执行对象422,因为该对象源自对等网络客户端,而不是与互联网浏览器(置信带410)或电子邮件客户端(置信带420)。在此实例中,处置模块510可以将可执行对象422分类为“差的”,因为它的风险评分(在此实例中,是20)属于置信带430的较低置信带。如前文所提,可执行对象的处置可以包括各种分类和/或补救。例如,可执行对象的处置可以包括确定可执行对象是安全的。在此实例中,处置模块510可以将可执行对象置于白名单上,允许执行可执行对象,从隔离区中移除可执行对象、和/或执行任意其他适合的安全动作。在另一个实例中,可执行对象的处置可以包括确定该可执行对象是恶意的(例如,被感染的、欺骗性的等)。在此实例中,处置模块510可以向用户、管理员和/或安全厂商上报可执行对象,在隔离区中放置可执行对象,移除或删除可执行对象,阻止执行可执行对象,和/或执行任意其他适合的安全动作。在附加的实例中,可执行对象的处置可以包括确定可执行对象的安全性是未知的。在此实例中,处置模块510可限制与可执行对象相关的权限,监控可执行对象,和/或执行任意其他适合的安全动作。在一些实例中,可执行对象(以及阈值和/或置信带范围)的处置可以包括更大粒度的分类和任意适合的补救。如以上所描述,本文所述的系统和方法可以基于原始门户能够进行可执行对象的定制化处置。在可执行对象的处置过程中通过利用定制化的置信带,这些系统和方法可以提高现有的基于试探法的恶意软件检测技术,有可能减少误判和/或漏判并因此增强安全性和/或用户体检。图7是一个示例性计算系统710的方框图,该系统能够实施在此说明和/或展示的一个或多个实施方案。计算系统710广义上代表能够执行计算机可读指令的任何单处理器或多处理器的计算装置或系统。计算系统710的多个实例包括但不限于工作站、膝上型计算机、客户侧终端、服务器、分布式计算系统、手持装置、或任何其他计算系统或装置。在其最基本的配置中,计算系统710可以包括至少一个处理器714以及一个系统内存716。处理器714总体上代表能够处理数据或解释并执行多个指令的任何类型或形式的处理单元。在某些实施方案中,处理器714可以从软件应用程序或模块中接收指令。这些指令可以使处理器714执行在此所说明和/或展示的这些示例性实施方案中的一个或多个的功能。例如,处理器714可以单独地或与其他元件相结合来执行和/或作为一种手段来执行在此披露的识别、汇集、分析、创建、应用、和/或确定步骤中的一个或多个。处理器714还可以执行和/或作为一种手段来执行在此说明和/或展示的任何其他步骤、方法、或过程。系统内存716总体上代表能够存储数据和/或其他计算机可读指令的任何类型或形式的易失性或非易失性存储装置或介质。系统内存716的多个实例包括(但不限于)随机存取存储器(RAM)、只读存储器(ROM)、闪存、或任何其他适当的存储装置。尽管未作要求,在某些实施方案中计算系统710可以既包括易失性内存单元(例如,像系统内存716)又包括非易失性存储装置(例如,像以下详细描述的主存储装置732)。在一个实例中,图1模块102中的一个或多个可以载入到系统内存716中。在某些实施方案中,除了处理器714和系统内存716外,示例性计算系统710还可以包括一个或多个组件或元件。例如,如图7所示,计算系统710可以包括内存控制器718、输入/输出(I/O)控制器720、以及通信接口 722,它们中的每一个可以通过通信基础设施712相互连接。通信基础设施712总体上代表能够帮助在计算装置的一个或多个组件之间进行通信的任意类型或形式的基础设施。通信基础设施712的实例包括但不限于通信总线(例如ISA、PC1、PCIe、或类似总线)和网络。内存控制器718总体上代表在计算系统710的一个或多个组件之间操作内存或数据或者控制通信的任意类型或形式的装置。例如,在某些实施方案中,内存控制器718可以通过通信基础设施712控制处理器714、系统内存716以及I/O控制器720之间的通信。在某些实施方案中,内存控制器718可以独立地或与其他元件相结合地执行和/或作为一种手段执行在此描述和/或展示的多个步骤或特征中的一个或多个,例如识别、汇集、分析、创建、应用、和/或确定。I/O控制器720总体上代表能够协调和/或控制计算装置的输入和输出功能的任何类型或形式的模块。例如,在某些实施方案中,I/o控制器720可以控制或协助计算系统710的一个或多个元件之间的数据的传输,这些元件例如是处理器714、系统内存716、通信接口 722、显示适配器726、输入接口 730以及存储接口 734。例如I/O控制器720可以单独地或与其他元件相结合来执行和/或作为一种手段来执行在此描述的识别、汇集、分析、创建、应用、和/或确定步骤中的一个或多个。I/O控制器720还可用于执行和/或作为一种手段用于执行本披露中提出的其他步骤和特征。通信接口 722广义地代表能够协助示例性计算系统710与一个或多个附加装置之间进行通信的任何类型或形式的通信装置或适配器。例如,在某些实施方案中,通信接口 722可以协助计算系统710与包括多个附加的计算系统的私有或公共网络之间的通信。通信接口 722的实例包括而不限于有线网络接口(例如网络接口卡)、无线网络接口(例如无线网络接口卡)、调制解调器、以及任何其他适当的接口。在至少一个实施方案中,通信接口722可通过到网络(如互联网)的直接链接来提供到远程服务器的直接连接。通信接口 722还可以间接地提供这种连接,例如通过局域网(如以太网)、个人局域网、电话或缆线网、蜂窝电话连接、卫星数据连接、或任何其他适当的连接。在某些实施方案中,通信接口 722还可以代表主机适配器,该主机适配器被配置为用于通过外部总线或通信信道协助计算系统710与一个或多个附加网络或存储装置之间的通信。主机适配器的实例包括但不限于SCSI主机适配器、USB主机适配器、IEEE 1394主机适配器、SATA和eSATA主机适配器、ATA和PATA主机适配器、光纤通道接口适配器、以太网适配器等。通信接口 722还可以允许计算系统710参与分布式计算或远程计算。例如,通信接口 722可以从远程装置接收指令或向远程装置发送指令用于执行。在某些实施方案中,通信接口 722可以独立地或与其他元件相结合地执行和/或作为一种手段执行在此描述的识别、汇集、分析、创建、应用、和/或确定步骤中的一个或多个。通信接口 722还可以用于执行和/或作为一种手段用于执行本披露中提出的其他步骤和特征。如图7所示,计算系统710还可以包括通过显示适配器726连接至通信基础设施712的至少一个显示装置724。显示装置724总体上代表能够可视地呈现显示适配器726所转发的显示信息的任意类型或形式的装置。相似地,显示适配器726总体上代表任意类型或形式的装置,这些装置被配置用于从通信基础设施712 (或从本领域已知的帧缓冲器)转发图形、文本以及其他数据以便显示在显示装置724上。如图7所示,示例性计算系统710还可以包括通过输入接口 730连接至通信基础设施712的至少一个输入装置728。输入装置728总体上代表能够向示例性计算系统710提供计算机或人员生成的输入的任意类型或形式的输入装置。输入装置728的实例包括但不限于键盘、指向装置、语音识别装置或任意其他输入装置。在至少一个实施方案中,输入装置728可以独立地或结合其他元件执行和/或作为一种手段执行在此描述的识别、汇集、分析、创建、应用、和/或确定步骤中的一个或多个。输入装置728还可以用于执行和/或作为一种手段来执行本披露中提出的其他步骤和特征。如图7所示,示例性计算系统710还包括通过存储接口 734连接至通信基础设施712的一个主存储装置732和一个备份存储装置733。存储装置732和733总体上代表能够存储数据和/或其他计算机可读指令的任意类型或形式的存储装置或介质。例如,存储装置732与733可以是磁盘驱动器(例如,所谓的硬盘驱动器)、软盘驱动器、磁带驱动器、光盘驱动器、闪存驱动器、或者类似装置。存储接口 734总体上代表用于在存储装置732和733以及计算系统710的其他组件之间传输数据的任意类型或形式的接口或装置。在某些实施方案中,存储装置732和733可以被配置为用于读取自和/或写入到可移动存储单元,该可移动存储单元被配置为用于存储计算机软件、数据、或其他计算机可读信息。适合的可移动存储单元的实例包括但不限于软盘、磁带、光盘、闪存装置等等。存储装置732和733还可以包括其他类似的结构或装置,以允许计算机软件、数据或其他计算机可读指令下载到计算系统710中。例如,存储装置732和733可以被配置用于读或写软件、数据或其他计算机可读信息。存储装置732和733还可以作为计算系统710的一部分或可以是通过其他接口系统访问的一个分离的装置。在某些实施方案中,存储装置732和733可以用于例如独立地或结合其他元件执行和/或作为一种手段执行在此披露的识别、汇集、分析、创建、应用、和/或确定步骤中的一个或多个。存储装置732和733还可以被用于执行和/或作为一种手段用于执行本披露提出的其他步骤和特征。很多其他装置或子系统可以连接至计算系统710上。相反地,为了实施在此描述和/或展示的实施方案,不需要图7中所示的所有组件和装置。以上提到的这些装置和子系统还能够以不同于图7中所示的方式进行相互连接。计算系统710还可以使用任何数量的软件、固件、和/或硬件的配置。例如,在此披露的示例性实施方案中的一个或多个可以被编码为一种计算机可读介质上的计算机程序(还称为计算机软件、软件应用程序、计算机可读指令、或计算机控制逻辑)。短语“计算机可读介质”总体上是指能够存储或携带计算机可读指令的任何形式的装置、载体、或介质。计算机可读介质的实例包括但不限于传输型介质,如载波,以及物理介质,如磁性存储介质(例如,硬盘驱动器和软盘驱动器)、光存储介质(例如,CD-ROM或DVD-ROM)、电子存储介质(例如,固态驱动器和闪存介质)、以及其他分布式系统。包含计算机程序的计算机可读介质可以载入到计算系统710中。存储在计算机可读介质上的所有或部分计算机程序然后可以存储在系统内存716和/或存储装置732和733的不同部分上。当由处理器714执行时,载入到计算系统710中的计算机程序可以使处理器714执行和/或作为一种手段执行在此描述和/或展示的示例性实施方案中的一个或多个的功能。另外或可替代地,在此所说明和/或展示的示例性实施方案中的一个或多个可以在固件和/或硬件中实施。例如计算系统710可被配置用作一种专用集成电路(ASIC),它被适配为用于实施在此所披露的这些示例性实施方案中的一个或多个。图8是示例性网络架构800的方框图,在该网络架构中客户端系统810、820和830以及服务器840和845可以连接至网络850。客户端系统810、820和830通常代表任意类型或形式的计算装置或系统,例如图7中的示例性计算系统710。在一个实例中,客户端系统810可以包括图1的系统100。类似地,服务器840和845总体上代表被配置为用于提供不同的数据库服务和/或运行某种软件应用程序的计算装置或系统,例如应用程序服务器或数据库服务器。网络850总体上代表任何电信或计算机网络,例如它包括:内部网、广域网(WAN)、局域网(LAN)、个人区域网(PAN)、或互联网。如图8所示,一个或多个存储装置860(1)-(N)可以直接附接至服务器840。类似地,一个或多个存储装置870 (I)-(N)可以直接附接至服务器845。存储装置860 (I) - (N)和存储装置870 (I)-(N)总体上代表能够存储数据和/或其他计算机可读指令的任意类型或形式的存储装置或介质。在某些实施方案中,存储装置860 (I)-(N)和存储装置870 (I)-(N)可代表被配置为用于使用不同协议(例如NFS、SMB、或CIFS)来与服务器840和845进行通信的网络附联存储(NAS )装置。服务器840和845还可以连接至存储区域网络(SAN)结构880。SAN结构880总体上代表能够协助多个存储装置之间通信的任意类型或形式的计算机网络或体系结构。SAN结构880可以协助服务器840和845与多个存储装置890 (I)-(N)和/或一个智能存储器阵列895之间的通信。SAN结构880还可以通过网络850以及服务器840和845协助客户端系统810、820和830与存储装置890 (I)-(N)和/或智能存储器阵列895之间的通信,其方式为装置890 (I) - (N)和阵列895对客户端系统810、820和830呈现为本地附接的装置。与存储装置860 (I)-(N)和存储装置870 (I)-(N) —样,存储装置890 (I) - (N)和存储阵列895总体上代表能够存储数据和/或其他计算机可读指令的任意类型或形式的存储装置或介质。在某些实施方案中,参见图7的示例性计算系统710,通信接口(例如,图7中的通信接口 722)可用于在每一个客户端系统810、820和830以及网络850之间提供连接性。客户端系统810、820和830能够利用例如网络浏览器或其他客户端软件来访问服务器840和845上的信息。这种软件可以允许客户端系统810、820和830访问由服务器840、服务器845、存储装置860 (I) - (N)、存储装置870 (I) - (N)、存储装置890 (I) - (N)或智能存储器阵列895管理的数据。尽管图8描绘了使用网络(例如互联网)交换数据,但在此描述和/或展示的实施方案不限于互联网或任意具体的基于网络的环境。在至少一个实施方案中,在此披露的示例性实施方案中的一个或多个的全部或一部分可被编码为一种计算机程序并且由服务器840、服务器845、存储装置860 (I)-(N)、存储装置870 (I)-(N)、存储装置890 (I)-(N)、智能存储阵列895、或它们中的任意组合加载并执行。在此披露的多个示例性实施方案的一个或多个的全部或一部分还可以被编码为计算机程序,存储在服务器840中,由服务器845运行,并在网络850上分发给客户端系统810、820和830。因此,网络架构800可以独立地或与其他元件相结合地执行和/或作为一种手段执行在此描述和/或展示的多个步骤或特征中的一个或多个,例如分析、汇集、分析、创建、应用、和/或确定步骤中的一个或多个。网络架构800还可以用于执行和/或作为一种手段来执行本披露中提出的其他步骤和特征。如以上所述,计算系统710和/或网络架构800的一个或者多个部件可以单独地亦或与其他元件相结合地执行和/或作为一种手段来执行使一种用于创建在恶意软件检测中使用的定制化置信带的示例性方法的一个或多个步骤。虽然以上披露使用了多个具体的框图、流程图、以及实例阐明了不同的实施方案,在此说明和/或展示的每个框图部件、流程图步骤、操作、和/或部件都可以单独地和/或共同地使用一个大范围的硬件、软件、或者固件(或者它们的任何组合)配置来实施。另外,在其他部件之中所包括的任何部件的披露都应该看作本质上是示例性的,因为可以实施许多其他的体系结构来达到同样的功能。在一些实例中,在此描述的系统可以部署在云计算或基于网络的环境中。云计算环境可以通过互联网提供各种服务和应用程序。这些基于云的服务(例如,软件即服务、平台即服务、基础设施即服务等)可以通过网络浏览器或其他的远程接口进行访问。在此所述的不同功能可以通过远程桌面环境或任何其他的基于云的计算环境来提供。在此说明和/或展示的进程的参数以及步骤的顺序仅仅是以举例的方式给出并且可以按希望来更改。例如,虽然在此展示和/或说明的这些步骤可以按照一个具体的顺序来示出或讨论,但这些步骤并非必须按照所展示或者所讨论的顺序来执行。在此说明和/或展示的不同的示例性方法还可以省略在此说明或展示的一个或者多个步骤或者还可以包括除所披露的那些之外的额外步骤。虽然不同的实施方案在此已经在全功能性计算系统的背景下进行了说明和/或展示,这些示例性实施方案中的一个或者多个能够以多种形式作为一个程序产品来分发,而无论实际用于进行该分发的计算机可读介质的具体形式如何。在此披露的这些实施方案还可以通过使用执行一些特定任务的软件模块来实施。这些软件模块可以包括脚本、成批文件、或者其他可执行文件,它们可以存储在一种计算机可读的存储介质上或者在一种计算系统中。在一些实施方案中,这些软件模块可以将一个计算系统配置用于实施在此披露的一个或者多个示例性的实施方案。另外,在此所述的这些模块中的一个或多个可以将数据、物理装置、和/或物理装置的表示从一种形式转换到另一种形式。例如在此描述的模块的一个或多个可以将计算系统转换为精确应用安全试探法的系统以便执行基于原始门户的可执行内容。已经提供了以上说明用于使本领域的其他普通技术人员能够最好地使用在此披露的这些示例性实施方案的不同方面。这种示例性说明并非旨在是穷尽性的或者被限制在所披露的任何准确的形式上。许多修改与变更都是可能的而不背离本披露的精神与范围。应该认为在此披露的这些实施方案在所有方面都是展示性的而非限制性的。应该参照所附权利要求及其等效物来确定本披露的范围。除非另外说明,如在本说明书与权利要求中所使用的,术语“一种”或“一个”将被解释为“至少一个”的意思。此外,为便于使用,如在本说明书以及权利要求中所使用的文字“包含”和“具有”是可以互换的并且具有与文字“包括”相同的含义。
权利要求
1.一种创建在恶意软件检测中使用的定制化置信带的计算机实施的方法,该方法的至少一部分由包括至少一个处理器的一个计算装置来执行的,该方法包括: 识别接收可执行内容的一个门户; 识别与该门户相关的元数据; 分析该元数据以确定通过该门户接收的可执行内容会造成何种风险; 基于该分析,创建一个置信带以便应用在通过该门户接收的可执行内容的至少一次处置过程中。
2.根据权利要求1所述的计算机实施的方法,进一步包括: 识别源自该门户的一个可执行对象; 在该可执行对象的一次处置过程中应用该置信带。
3.根据权利要求2所述的计算机实施的方法,其中该可执行对象的处置包括以下操作中的至少一项: 确定该可执行对象是安全的; 确定该可执行对象是恶意的; 确定该可执行对象的安全性是未知的。
4.根据权 利要求1所述的计算机实施的方法,其中该门户包括能够创建一个附加可执行对象的一个可执行对象。
5.根据权利要求1所述的计算机实施的方法,其中该门户包括以下内容中的至少一项: 一个互联网浏览器; 一个电子邮件客户端; 一个对等网络客户端; 一个聊天客户端。
6.根据权利要求1所述的计算机实施的方法,其中该元数据识别以下内容中的至少一项: 源自该门户的多个可执行对象; 该门户的受欢迎程度; 源自该门户的不受信任的可执行对象的发生率。
7.根据权利要求1所述的计算机实施的方法,其中创建该置信带以应用至该门户包括创建一个置信带以应用至一类门户。
8.根据权利要求1所述的计算机实施的方法,其中识别该元数据包括汇集该门户的多个实例上的元数据。
9.根据权利要求1所述的计算机实施的方法,其中创建该置信带包括基于可应用于该门户的至少一个用户配置来创建该置信带。
10.一种创建在恶意软件检测中使用的定制化置信带的系统,该系统包括: 一个识别模块,该识别模块被编程用于: 识别接收可执行内容的一个门户; 识别与该门户相关的元数据; 一个分析模块,该分析模块被编程用于分析该元数据以确定通过该门户接收的可执行内容会造成何种风险; 一个创建模块,该创建模块被编程用于基于该分析创建一个置信带以便应用在通过该门户接收的可执行内容的至少一次处置过程中; 至少一个处理器,该处理器被配置用于执行该识别模块、该分析模块以及该创建模块。
11.根据权利要求10所述的系统,进一步包括一个处置模块,该处置模块被编程用于: 识别源自该门户的一个可执行对象; 在该可执行对象的一次处置过程中应用该置信带。
12.根据权利要求11所述的系统,其中该可执行对象的处置包括以下操作中的至少一项: 确定该可执行对象是安全的; 确定该可执行对象是恶意的; 确定该可执行对象的安全性是未知的。
13.根据权利要求10所述的系统,其中该门户包括能够创建一个附加可执行对象的一个可执行对象。
14.根据权利要求10所述的系统,其中该门户包括以下内容中的至少一项: 一个互联网浏览器; 一个电子邮件客户端;` 一个对等网络客户端; 一个聊天客户端。
15.根据权利要求10所述的系统,其中该元数据识别以下内容中的至少一项: 源自该门户的多个可执行对象; 该门户的受欢迎程度; 源自该门户的不受信任的可执行对象的发生率。
16.根据权利要求10所述的系统,其中该创建模块被编程用于通过创建一个置信带以应用至一类门户来创建该置信带以应用至该门户。
17.根据权利要求10所述的系统,其中该识别模块被编程用于通过汇集该门户的多个实例上的元数据来识别该元数据。
18.根据权利要求10所述的系统,其中该创建模块被编程用于通过基于可应用于该门户的至少一个用户配置创建该置信带来创建该置信带。
19.一种计算机可读存储介质,包括一个或多个计算机可执行指令,当由一个计算装置的至少一个处理器执行时,这些指令使得该计算装置: 识别接收可执行内容的一个门户; 识别与该门户相关的元数据; 分析该元数据以确定通过该门户接收的可执行内容会造成何种风险; 基于该分析,创建一个置信带以便应用在通过该门户接收的可执行内容的至少一次处置过程中。
20.根据权利要求19所述的计算机可读存储介质,其中该一个或多个计算机可执行指令进一步使得该计算装置: 识别源自该门户的一个可执行对象;在该可执行对象的一 次处置过程中应用该置信带。
全文摘要
一种创建在恶意软件检测中使用的定制化置信带的计算机实施的方法可以包括1)识别接收可执行内容的一个门户,2)识别与该门户相关的元数据,3)分析该元数据以确定通过该门户接收的可执行内容会造成何种风险,然后4)基于该分析,创建一个置信带以便应用在通过该门户接收的可执行内容的至少一次处置过程中。在此还披露了不同的其他的方法、系统、以及计算机可读介质。
文档编号G06F21/56GK103109295SQ201180028892
公开日2013年5月15日 申请日期2011年5月14日 优先权日2010年7月2日
发明者J·陈, J·J·朴 申请人:赛门铁克公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1