发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的扫描文件的方法、装置和系统。
依据本发明的一个方面,提供了一种扫描文件的方法,包括:
针对待扫描样本文件,分别计算每个待扫描样本文件被鉴别为可疑的概率;
对所述待扫描样本文件按照其被鉴别为可疑的概率进行排序;
获取扫描文件的个数K,从排序后的待扫描样本文件中抽取可疑概率高的K个待扫描样本文件,K为正整数;
对所述K个待扫描样本文件进行扫描,鉴别出其中的可疑样本文件。
本发明实施例中,在分别计算每个待扫描样本文件被鉴别为可疑的概率之前,还包括:
检测全部样本文件的等级,所述样本文件的等级包括安全等级、未知等级、可疑/高度可疑等级、以及恶意等级;
获取未知等级的样本文件,将获取到的未知等级的样本文件作为待扫描样本文件。
本发明实施例中,检测全部样本文件的等级之前,还包括:
服务器接收客户端上传的全部样本文件;
所述检测全部样本文件的等级为:服务器检测全部样本文件的等级;
所述计算每个待扫描样本文件被鉴别为可疑的概率为:服务器计算每个待扫描样本文件被鉴别为可疑的概率。
本发明实施例中,排序为按照待扫描样本文件被鉴别为可疑的概率从大到小进行排序;
所述K个待扫描样本文件为排序后的待扫描样本文件中的前K个待扫描样本文件。
本发明实施例中,分别计算每个待扫描样本文件被鉴别为可疑的概率,包括:
针对每个待扫描样本文件,获取该待扫描样本文件对应的本次扫描的时间点n2以及上次扫描的时间点n1;
计算从时间点n1开始到时间点n2为止,所述待扫描样本文件在本次扫描中被鉴别为可疑的概率Pr(N≥n1,N≤n2|α,β):
Pr(N≥n1,N≤n2|α,β)=Pr(N≥n1|α,β)-Pr(N≥n2+1|α,β);
其中,参数α和β为通过对待扫描样本文件数据进行最大似然估计得到的参数。
本发明实施例中,在分别计算每个待扫描样本文件被鉴别为可疑的概率之前,还包括:
为每个待扫描样本文件建立一个信息库,所述信息库中包括该待扫描样本文件对应的上次扫描的时间点n1。
本发明实施例中,计算从时间点n1开始到时间点n2为止,所述待扫描样本文件在本次扫描中被鉴别为可疑的概率Pr(N≥n1,N≤n2|α,β),包括:
计算每个待扫描样本文件前n-1次没有被鉴别为可疑,第n次被鉴别为可疑的概率Pr(N≥n|α,β):
将所述Pr(N≥n|α,β)中的n替换为n1,计算Pr(N≥n1|α,β);
将所述Pr(N≥n|α,β)中的n替换为n2+1,计算Pr(N≥n2+1|α,β);
计算Pr(N≥n1|α,β)和Pr(N≥n2+1|α,β)的差值,得到所述概率Pr(N≥n|α,β)。
本发明实施例中,针对待扫描样本文件,分别计算每个待扫描样本文件被鉴别为可疑的概率,包括:
定期针对全部的待扫描样本文件,分别计算每个待扫描样本文件被鉴别为可疑的概率。
根据本发明的另一方面,提供了一种扫描文件的装置,包括:
概率计算模块,适于针对待扫描样本文件,分别计算每个待扫描样本文件被鉴别为可疑的概率;
排序模块,适于对所述待扫描样本文件按照其被鉴别为可疑的概率进行排序;
抽取模块,适于获取扫描文件的个数K,从排序后的待扫描样本文件中抽取可疑概率高的K个待扫描样本文件,K为正整数;
扫描模块,适于对所述K个待扫描样本文件进行扫描,鉴别出其中的可疑样本文件。
本发明实施例中,扫描文件的装置还包括:
等级检测模块,适于在概率计算模块分别计算每个待扫描样本文件被鉴别为可疑的概率之前,检测全部样本文件的等级,所述样本文件的等级包括安全等级、未知等级、可疑/高度可疑等级、以及恶意等级;
获取模块,适于获取未知等级的样本文件,将获取到的未知等级的样本文件作为待扫描样本文件。
本发明实施例中,排序模块按照待扫描样本文件被鉴别为可疑的概率从大到小进行排序;
所述K个待扫描样本文件为排序后的待扫描样本文件中的前K个待扫描样本文件。
本发明实施例中,概率计算模块包括:
时间点获取子模块,适于针对每个待扫描样本文件,获取该待扫描样本文件对应的本次扫描的时间点n2以及上次扫描的时间点n1;
概率计算子模块,适于计算从时间点n1开始到时间点n2为止,所述待扫描样本文件在本次扫描中被鉴别为可疑的概率Pr(N≥n1,N≤n2|α,β):
Pr(N≥n1,N≤n2|α,β)=Pr(N≥n1|α,β)-Pr(N≥n2+1|α,β);
其中,参数α和β为通过对待扫描样本文件数据进行最大似然估计得到的参数。
本发明实施例中,扫描文件的装置还包括:
建立模块,适于在概率计算模块分别计算每个待扫描样本文件被鉴别为可疑的概率之前,为每个待扫描样本文件建立一个信息库,所述信息库中包括该待扫描样本文件对应的上次扫描的时间点n1。
本发明实施例中,概率计算子模块包括:
概率计算单元,适于计算每个待扫描样本文件前n-1次没有被鉴别为可疑,第n次被鉴别为可疑的概率Pr(N≥n|α,β):
第一替换单元,适于将所述Pr(N≥n|α,β)中的n替换为n1,计算Pr(N≥n1|α,β);
第二替换单元,适于将所述Pr(N≥n|α,β)中的n替换为n2+1,计算Pr(N≥n2+1|α,β);
差值计算单元,适于计算Pr(N≥n1|α,β)和Pr(N≥n2+1|α,β)的差值,得到所述概率Pr(N≥n|α,β)。
根据本发明的另一方面,提供了一种扫描文件的系统,包括:客户端和服务器端,
其中,
客户端包括:
文件上传模块,适于将样本文件上传至存储服务器中;
服务器端包括:存储服务器、文件下载服务器和扫描服务器,
所述存储服务器包括:
数据库,适于存储所述文件上传模块上传的样本文件;
所述文件下载服务器包括:
文件下载模块,适于从所述数据库中下载样本文件并传输至扫描服务器中;
所述扫描服务器包括如上所述的扫描文件的装置。
根据本发明实施例的扫描文件的方法、装置和系统,可以针对待扫描样本文件,分别计算每个待扫描样本文件被鉴别为可疑的概率,然后对所述待扫描样本文件按照其被鉴别为可疑的概率进行排序,并从排序后的待扫描样本文件中抽取可疑概率高的K个待扫描样本文件,最后对所述K个待扫描样本文件进行扫描,鉴别出其中的可疑样本文件。由此解决了现有技术中由于每天需要对全部的样本文件进行扫描而导致的文件扫描效率低的问题,取得了提高扫描效率的有益效果。并且,由于本发明通过抽取可疑概率高的K个待扫描样本文件进行扫描,因此能够尽可能多地鉴别出可疑样本文件,提高扫描样本文件的准确性。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明实施例可以应用于计算机系统/服务器,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与计算机系统/服务器一起使用的众所周知的计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统、大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。
计算机系统/服务器可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
参照图1,示出了根据本发明一个实施例的一种扫描文件的方法的流程图。
为了快速地识别和查杀恶意程序,同时为了减轻客户端的资源消耗,目前的安全防护软件越来越多地使用云安全技术。云安全技术即把客户端的文件传给服务器端,在服务器端中存储了大量样本文件,服务器端通过将客户端上传的文件与其存储的样本文件进行比对,从而对客户端文件的安全性做出判定,然后客户端安全软件根据服务器端传回的信息对恶意程序进行报告和处理。
由于恶意程序的种类和数量不断地增加,服务器端中的样本文件也要不断地更新,因此客户端每天需要将数以万计的样本文件上传到服务器端,服务器端利用定期升级的第三方杀毒软件每天对全部的样本文件进行扫描,以鉴别出其中的可疑样本文件。但是,第三方杀毒软件的扫描能力是有限的,随着样本文件数量的增多,这种方式显然会降低文件扫描效率。
因此,为了提高文件扫描效率,本发明实施例提出一种根据第三方杀毒软件的扫描能力(即能够扫描的文件个数的最大值)从样本文件中抽取部分满足条件的样本文件,只对抽取出的部分样本文件进行扫描的方法。
具体的,本实施例的扫描文件的方法包括以下步骤:
步骤S101,针对待扫描样本文件,分别计算每个待扫描样本文件被鉴别为可疑的概率。
本实施例提出从待扫描样本文件中抽取部分样本文件进行扫描,因此首先需要确定具体抽取哪些样本文件进行扫描。为了尽可能多地鉴别出可疑样本文件,提高文件扫描的准确性,本实施例中提出依据待扫描样本文件被鉴别为可疑的概率进行样本文件的抽取。
因此,在该步骤S101中可以针对待扫描样本文件,分别计算每个待扫描样本文件被鉴别为可疑的概率,对于具体的计算过程,将在下面的实施例中详细介绍。
在本发明实施例中,为了查杀不断增多的恶意程序,杀毒软件可以定期对样本文件进行扫描,相应的,在该步骤中定期进行概率的计算,并且,为了能够更加准确地确定出待扫描样本文件,每次计算时可以针对全部的待扫描样本文件进行计算,以使扫描更加全面。
在本实施例中,考虑到样本文件随时都有可能受到病毒感染,因此对于每一个样本文件来说,即使该样本文件前n-1次没有被鉴别为可疑,这只是说明之前在扫描时其没有感染病毒,但是在后续也可能感染病毒,因此在第n次扫描时也需要对其进行概率计算。所以,为了使扫描更加全面、准确,本实施例提出每次对全部的待扫描样本文件进行计算。
当然,在本实施例中,每次也可以针对部分的样本文件进行计算,本发明实施例对此并不加以限制。
其中,对于计算的时间间隔,可以根据杀毒软件升级的时间间隔确定,例如,杀毒软件每隔时间t进行升级,那么可以设定每隔时间t针对全部的待扫描样本文件,分别计算每个待扫描样本文件被鉴别为可疑的概率。当然,所述计算的时间间隔还可以设定为其他的值,本实施例对此并不加以限制。
步骤S102,对所述待扫描样本文件按照其被鉴别为可疑的概率进行排序。
步骤S103,获取扫描文件的个数K,从排序后的待扫描样本文件中抽取可疑概率高的K个待扫描样本文件,K为正整数。
步骤S104,对所述K个待扫描样本文件进行扫描,鉴别出其中的可疑样本文件。
在步骤S101中计算出每个待扫描样本文件被鉴别为可疑的概率之后,首先按照计算出的概率对所述待扫描样本文件进行排序,然后依据第三方杀毒软件能够扫描的文件的个数K从排序后的待扫描样本文件中抽取可疑概率高的K个待扫描样本文件,最后第三方杀毒软件只需对抽取出的K个待扫描样本文件进行扫描,进一步鉴别出其中的可疑样本文件即可,而不需要再对全部的样本文件进行扫描。对于具体的过程,将在下面的实施例中详细介绍。
其中,K的取值可以根据第三方杀毒软件的扫描能力而定,可以将第三方杀毒软件能够扫描的文件个数的最大值作为K的值,例如,如果杀毒软件一天能扫描1000个样本文件,那么K=1000。
当然,K也可以取其他的值,本发明实施例对此并不加以限制。
本发明实施例解决了现有技术中由于每天需要对全部的样本文件进行扫描而导致的文件扫描效率低的问题,取得了提高扫描效率的有益效果。并且由于本发明通过抽取可疑概率高的K个待扫描样本文件进行扫描,因此能够尽可能多地鉴别出可疑样本文件,提高扫描的准确性。
参照图2,示出了根据本发明一个实施例的一种扫描文件的方法的流程图,所述方法包括:
步骤S201,服务器接收客户端上传的全部样本文件。
通过云安全技术进行病毒查杀的过程即把客户端的文件传给服务器端,在服务器端中存储了大量样本文件,服务器端通过将客户端上传的文件与其存储的样本文件进行比对,从而对客户端文件的安全性做出判定,然后客户端安全软件根据服务器端传回的信息对客户端文件进行报告和处理。
因此,首先需要确定出存储在云安全中心服务器的样本文件以及鉴别出这些样本文件是否可疑,然后才能将客户端上传的文件与服务器存储的样本文件进行比对,以判断客户端文件的安全性。
首先,客户端将全部的样本文件上传至服务器,然后由服务器进行后续的处理。需要说明的是,这里所述的客户端上传的样本文件并不是要与服务器存储的样本文件进行比对,而是要从这些样本文件中查找出需要存储在服务器中的样本文件,并鉴别这些样本文件是否可疑。
步骤S202,检测全部样本文件的等级。
服务器在接收到客户端上传的全部样本文件之后,首先检测这些样本文件的等级。
在本实施例中,所述样本文件的等级包括:安全等级、未知等级、可疑/高度可疑等级、以及恶意等级。对于等级的设置,可以设置等级为10-20时为安全等级,等级为30-40时为未知等级,等级为50-60时为可疑/高度可疑等级,等级大于或等于70时为恶意等级。当然,还可以设置所述等级为其他形式,本发明对此并不加以限制。
步骤S203,获取未知等级的样本文件,将获取到的未知等级的样本文件作为待扫描样本文件。
在本实施例中,设定只将可疑级别未知的样本文件作为待扫描样本文件。对于上述步骤S202中检测出的样本文件的等级来说,等级为安全等级的样本文件不是可疑样本文件,等级为可疑/高度可疑等级、以及恶意等级的样本文件,对于这些样本文件不需要再进行扫描;等级为未知等级的样本文件即为可疑级别未知的样本文件,因此还需要进一步对这些未知等级的样本文件进行扫描,以鉴别其是否为可疑样本文件。
步骤S204,针对待扫描样本文件,分别计算每个待扫描样本文件被鉴别为可疑的概率。
为了提高扫描效率,本申请实施例并不是对全部的待扫描样本文件进行扫描,而是要从待扫描样本文件中选择部分待扫描样本文件进行扫描。因此,在步骤S203中确定出待扫描样本文件之后,还需要进一步对这些待扫描样本文件进行分析,以确定出实际需要扫描的样本文件。
在本发明实施例中,依据待扫描样本文件被鉴别为可疑的概率抽取满足条件的样本文件,因此,在本步骤S204中,需要针对待扫描样本文件,分别计算每个待扫描样本文件被鉴别为可疑的概率。
与上述实施例一相似,为了查杀不断增多的恶意程序,杀毒软件可以定期对样本文件进行扫描,相应的,在该步骤中定期进行概率的计算,并且,为了能够更加准确地确定出待扫描样本文件,每次计算时可以针对全部的待扫描样本文件进行计算,以使扫描更加全面。当然,本发明实施例并不限定于该种方式,本领域技术人员根据实际经验采用其他方式也是可行的。
具体的,可以通过以下子步骤计算每个待扫描样本文件被鉴别为可疑的概率:
子步骤a1,针对每个待扫描样本文件,获取该待扫描样本文件对应的本次扫描的时间点n2以及上次扫描的时间点n1。
其中,时间点n2即为该待扫描样本文件对应的本次扫描的时间,该时间点n2可以通过直接读取当前时间获取。
时间点n1为该待扫描样本文件对应的上次扫描的时间。在本实施例中,可以在本步骤S204分别计算每个待扫描样本文件被鉴别为可疑的概率之前,为每个待扫描样本文件建立一个信息库,在所述信息库中包括该待扫描样本文件对应的上次扫描的时间点n1。信息库中各个待扫描样本文件的ID为主键,通过ID即可在信息库中查找到对应的待扫描样本文件,进一步获取到该扫描样本文件对应的上次扫描的时间点n1。
子步骤a2,通过以下公式计算从时间点n1开始到时间点n2为止,所述待扫描样本文件在本次扫描中被鉴别为可疑的概率Pr(N≥n1,N≤n2|α,β):
Pr(N≥n1,N≤n2|α,β)=Pr(N≥n1|α,β)-Pr(N≥n2+1|α,β)。
其中,参数α和β为通过对待扫描样本文件数据进行最大似然估计得到的参数。
该子步骤a2具体可以包括:
(1)通过以下公式计算每个待扫描样本文件前n-1次没有被鉴别为可疑,第n次被鉴别为可疑的概率Pr(N≥n|α,β):
在本实施例中,考虑到样本文件随时都有可能受到病毒感染,因此在第n次扫描时,对于前n-1次没有被鉴别为可疑的待扫描文件也需要进行计算(因为即使这些待扫描样本文件前n-1次没有被鉴别为可疑,只是说明之前在扫描时其没有感染病毒,但是在后续也可能感染病毒,因此在第n次扫描时也需要对其进行概率计算)。
下面,具体分析如何计算待扫描样本文件前n-1次没有被鉴别为可疑,第n次被鉴别为可疑的概率Pr(N≥n|α,β)。
假设每隔时间t对每个待扫描样本文件被鉴别为可疑的概率进行计算,样本文件被鉴别为可疑是一个随机事件,例如以θ概率表示样本被鉴别为可疑,则待扫描样本文件前n-1次没有被鉴别为可疑,第n次被鉴别为可疑的概率为:
Pr(N=n|θ)=(1-θ)n-1θ
上述概率Pr(N≥n|θ)服从几何分布,即
Pr(N≥n|θ)=(1-θ)n-1
对于不同的样本文件,参数θ的值是不一样的,假设参数θ服从参数为α和β的贝塔分布,即
其中, B(α,β)是贝塔函数,Γ(x)是伽马函数,满足Γ(x+1)=xΓ(x)的性质。
因此,可以得出
进一步,对进行计算可疑得出:
因此,最终得出待扫描样本文件前n-1次没有被鉴别为可疑,第n次被鉴别为可疑的概率Pr(N≥n|α,β)为:
(2)将所述Pr(N≥n|α,β)中的n替换为n1,计算Pr(N≥n1|α,β);
(3)将所述Pr(N≥n|α,β)中的n替换为n2+1,计算Pr(N≥n2+1|α,β);
(4)计算Pr(N≥n1|α,β)和Pr(N≥n2+1|α,β)的差值,得到所述概率Pr(N≥n|α,β)。
由于待扫描样本文件在本次扫描中被鉴别为可疑的概率为:
Pr(N≥n1,N≤n2|α,β)=Pr(N≥n1|α,β)-Pr(N≥n2+1|α,β),
因此,依据(1)中计算出的概率Pr(N≥n|α,β),通过分别将n替换为n1和n2+1即可计算出Pr(N≥n1|α,β)和Pr(N≥n2+1|α,β),然后再计算Pr(N≥n1|α,β)和Pr(N≥n2+1|α,β)的差值,即得到所述概率Pr(N≥n|α,β)。
步骤S205,对所述待扫描样本文件按照其被鉴别为可疑的概率进行排序。
在步骤S204中计算出每个待扫描样本文件被鉴别为可疑的概率之后,对所述待扫描样本文件按照其被鉴别为可疑的概率进行排序。
优选的,本实施例对所述待扫描样本文件按照待扫描样本文件被鉴别为可疑的概率从大到小进行排序,其中排序靠前的待扫描样本文件即为可疑概率高的样本文件。
步骤S206,获取扫描文件的个数K,从排序后的待扫描样本文件中抽取可疑概率高的K个待扫描样本文件,K为正整数。在本实施例中,可以依据第三方杀毒软件的扫描能力选择待扫描样本文件进行扫描,所述扫描能力即为该杀毒软件能够扫描的文件个数的最大值,因此,可以将第三方杀毒软件能够扫描的文件个数的最大值作为K的值,然后抽取可疑概率高的K个待扫描样本文件进行扫描即可。
具体的,如果在步骤S205中对所述待扫描样本文件按照待扫描样本文件被鉴别为可疑的概率从大到小进行排序,则在该步骤S206中直接抽取排序后的待扫描样本文件中的前K个待扫描样本文件即可。
需要说明的是,对于上述本步骤S204-S206,可以在服务器确定出待扫描样本文件之后,直接通过服务器计算每个待扫描样本文件被鉴别为可疑的概率,并依据所述概率进行排序,然后从排序后的待扫描样本文件中抽取可疑概率高的K个待扫描样本文件。当然,服务器还可以将确定出的待扫描样本文件传给本地客户端,通过本地客户端执行上述概率计算、排序和抽取过程,然后客户端再将抽取的K个待扫描样本文件上传给服务器。本实施例对此并不加以限制。
步骤S207,对所述K个待扫描样本文件进行扫描,鉴别出其中的可疑样本文件。
在确定出K个待扫描样本文件之后,云安全中心则利用第三方杀毒软件对所述K个待扫描样本文件进行扫描,以鉴别出其中的可疑样本文件,并存储至服务器端,以供后续进行杀毒时与客户端文件进行比对,从而对客户端文件的安全性做出判定。
对于具体的扫描过程和鉴别过程,本领域技术人员根据实际经验处理即可,本发明实施例对此并不加以限制。
本发明实施例具体描述了如何确定实际需要扫描的样本文件的过程,根据第三方杀毒软件的扫描能力K,确定出可疑概率高的K个待扫描样本文件,然后只需对这K个待扫描样本文件进行扫描即可,从而提高了文件扫描效率,并且由于本发明实施例通过抽取可疑概率高的K个待扫描样本文件进行扫描,因此能够尽可能多地鉴别出可疑样本文件,提高扫描样本文件的准确性。
需要说明的是,对于前述的方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请所必需的。
参照图3,示出了根据本发明一个实施例的一种扫描文件的装置的结构框图,所述装置包括:接收模块301、等级检测模块302、获取模块303、建立模块304、概率计算模块305、排序模块306、抽取模块307和扫描模块308。
其中,
接收模块301,适于接收客户端上传的全部样本文件;
等级检测模块302,适于在概率计算模块分别计算每个待扫描样本文件被鉴别为可疑的概率之前,检测全部样本文件的等级;
所述样本文件的等级包括安全等级、未知等级、可疑/高度可疑等级、以及恶意等级。
获取模块303,适于获取未知等级的样本文件,将获取到的未知等级的样本文件作为待扫描样本文件。
建立模块304,适于在概率计算模块分别计算每个待扫描样本文件被鉴别为可疑的概率之前,为每个待扫描样本文件建立一个信息库;
所述信息库中包括该待扫描样本文件对应的上次扫描的时间点n1。
概率计算模块305,适于针对待扫描样本文件,分别计算每个待扫描样本文件被鉴别为可疑的概率;
具体的,所述概率计算模块可以定期针对待扫描样本文件,分别计算每个待扫描样本文件被鉴别为可疑的概率,每次可以针对全部的待扫描样本文件进行计算,本实施例对此并不加以限制。
所述概率计算模块305具体可以包括以下子模块:
时间点获取子模块,适于针对每个待扫描样本文件,获取该待扫描样本文件对应的本次扫描的时间点n2以及上次扫描的时间点n1;
概率计算子模块,适于通过以下公式计算从时间点n1开始到时间点n2为止,所述待扫描样本文件在本次扫描中被鉴别为可疑的概率Pr(N≥n1,N≤n2|α,β):
Pr(N≥n1,N≤n2|α,β)=Pr(N≥n1|α,β)-Pr(N≥n2+1|α,β);
其中,参数α和β为通过对待扫描样本文件数据进行最大似然估计得到的参数。
所述概率计算子模块具体可以包括以下单元:
概率计算单元,适于通过以下公式计算每个待扫描样本文件前n-1次没有被鉴别为可疑,第n次被鉴别为可疑的概率Pr(N≥n|α,β):
第一替换单元,适于将所述Pr(N≥n|α,β)中的n替换为n1,计算Pr(N≥n1|α,β);
第二替换单元,适于将所述Pr(N≥n|α,β)中的n替换为n2+1,计算Pr(N≥n2+1|α,β);
差值计算单元,适于计算Pr(N≥n1|α,β)和Pr(N≥n2+1|α,β)的差值,得到所述概率Pr(N≥n|α,β)。
排序模块306,适于对所述待扫描样本文件按照其被鉴别为可疑的概率进行排序;
优选的,在本实施例中,所述排序模块306按照待扫描样本文件被鉴别为可疑的概率从大到小进行排序。
抽取模块307,适于获取扫描文件的个数K,从排序后的待扫描样本文件中抽取可疑概率高的K个待扫描样本文件,K为正整数;
在本实施例中,所述扫描文件的个数K可以依据第三方杀毒软件的扫描能力确定,即可以将第三方杀毒软件能够扫描的文件个数的最大值作为K的值。
如果上述排序模块306按照待扫描样本文件被鉴别为可疑的概率从大到小进行排序,则该抽取模块307直接抽取排序后的待扫描样本文件中的前K个待扫描样本文件即可。
扫描模块308,适于对所述K个待扫描样本文件进行扫描,鉴别出其中的可疑样本文件。
最后,需要说明的是,上述的接收模块301、等级检测模块302、获取模块303、建立模块304、概率计算模块305、排序模块306和抽取模块307可以为服务器中的功能模块,由于在扫描时是通过第三方杀毒软件进行扫描,因此扫描模块308可以为第三方杀毒软件中的功能模块。
另外,其中的概率计算模块305、排序模块306和抽取模块307也可以为本地客户端中的功能模块,即在服务器确定出待扫描样本文件之后,将这些待扫描样本文件传给本地客户端,由本地客户端的概率计算模块305、排序模块306和抽取模块307确定出K个待扫描样本文件,再将这K个待扫描样本文件传递给服务器,本发明实施例对此并不加以限制。
根据本发明实施例的扫描文件的装置可以针对待扫描样本文件,分别计算每个待扫描样本文件被鉴别为可疑的概率,然后对所述待扫描样本文件按照其被鉴别为可疑的概率进行排序,并从排序后的待扫描样本文件中抽取可疑概率高的K个待扫描样本文件,最后对所述K个待扫描样本文件进行扫描,鉴别出其中的可疑样本文件。由此解决了现有技术中由于每天需要对全部的样本文件进行扫描而导致的文件扫描效率低的问题,取得了提高扫描效率的有益效果。并且,由于本发明实施例通过抽取可疑概率高的K个待扫描样本文件进行扫描,因此能够尽可能多地鉴别出可疑样本文件,提高扫描样本文件的准确性。
对于上述扫描文件的装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见图1和图2所示方法实施例的部分说明即可。
基于上述扫描文件的装置实施例,本发明实施例还提供了一种扫描文件的系统,该系统包括客户端和服务器端,
其中,
客户端包括:
文件上传模块401,适于将样本文件上传至存储服务器中;
服务器端包括:存储服务器402、文件下载服务器403和扫描服务器404,
所述存储服务器402包括:
数据库4021,适于存储所述文件上传模块上传的样本文件;
所述文件下载服务器403包括:
文件下载模块4031,适于从所述存储服务器的数据库中下载样本文件并传输至扫描服务器中;
所述扫描服务器404包括上述实施例所述的扫描文件的装置4041,具体参照上述实施例的相关描述即可。
另外,需要说明的是,在扫描服务器404中还可以包括输入接口4042和输出接口4043,文件下载模块4031将下载的样本文件通过输入接口4042传输至扫描服务器的扫描文件的装置4041中,扫描文件的装置4041对所述样本文件进行处理,然后将处理结果通过输出接口4043输出。对于具体的处理过程,本实施例在此不再详细论述。
本实施例提出的扫描文件的系统中的扫描服务器可以从待扫描样本文件中选择部分满足条件的样本文件进行扫描,提高了扫描效率。并且,由于本发明通过抽取可疑概率高的K个待扫描样本文件进行扫描,因此能够尽可能多地鉴别出可疑样本文件,提高扫描样本文件的准确性。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域技术人员易于想到的是:上述各个实施例的任意组合应用都是可行的,故上述各个实施例之间的任意组合都是本申请的实施方案,但是由于篇幅限制,本说明书在此就不一一详述了。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的扫描文件的系统中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。