CN104794397B - 病毒检测方法和装置 - Google Patents
病毒检测方法和装置 Download PDFInfo
- Publication number
- CN104794397B CN104794397B CN201410030534.9A CN201410030534A CN104794397B CN 104794397 B CN104794397 B CN 104794397B CN 201410030534 A CN201410030534 A CN 201410030534A CN 104794397 B CN104794397 B CN 104794397B
- Authority
- CN
- China
- Prior art keywords
- file
- virus
- suspicious
- search
- files
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种病毒检测方法和装置。该病毒检测方法包括获取待检测文件的文件样本特征;将文件样本特征存储至搜索引擎中;获取文件病毒特征;以及利用搜索引擎对文件样本特征进行搜索,并将搜索得到的与文件病毒特征匹配的文件样本特征对应的文件作为病毒可疑文件。通过本发明,解决了现有技术中对病毒文件的检测效率比较低的问题,进而达到了提高病毒检测效率的效果。
Description
技术领域
本发明涉及数据处理领域,具体而言,涉及一种病毒检测方法和装置。
背景技术
目前,计算机病毒分析人员将病毒正式入库下发用户之前,首先搜集样本特征,然后按照提取出来的病毒特征对搜集到的样本特征做预检测,查看是否有误杀。
现有技术中,通常是将预搜集出来的百万级样本特征打包为wup格式,再逐个拆包检测是否有可疑样本。假定当前样本特征的个数是800W,每日新增个数为3W,将这些搜集到的样本特征部署在16个机器中,每个机器通过8进程加载wup包,则对所有搜集到的样本特征进行处理耗时大约8分钟。因此,随着样品特征数量的日益增长,对样品特征进行处理耗费的时间也越来越长,相应地,对搜集到的样本特征进行检测的效率也比较低。
针对现有技术中对病毒文件的检测效率比较低的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例的主要目的在于提供一种病毒检测方法和装置,以解决现有技术中对病毒文件的检测效率比较低的问题。
为了实现上述目的,根据本发明实施例的一个方面,提供了一种病毒检测方法。该病毒检测方法包括:获取待检测文件的文件样本特征;将文件样本特征存储至搜索引擎中;获取文件病毒特征;以及利用搜索引擎对文件样本特征进行搜索,并将搜索得到的与文件病毒特征匹配的文件样本特征对应的文件作为病毒可疑文件。
为了实现上述目的,根据本发明实施例的另一方面,提供了一种病毒检测装置。该病毒检测装置包括:第一获取单元,用于获取待检测文件的文件样本特征;存储单元,用于将文件样本特征存储至搜索引擎中;第二获取单元,用于获取文件病毒特征;以及搜索单元,用于利用搜索引擎对文件样本特征进行搜索,并将搜索得到的与文件病毒特征匹配的文件样本特征对应的文件作为病毒可疑文件。
通过本发明实施例,解决了现有技术中对病毒文件的检测效率比较低的问题,进而达到了提高病毒检测效率的效果。
附图说明
构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明第一实施例的病毒检测方法的流程图;
图2是根据本发明实施例的病毒检测方法中执行匹配搜索的流程图;
图3是根据本发明第二实施例的病毒检测方法的流程图;
图4是根据本发明第一实施例的病毒检测装置的示意图;
图5是根据本发明第二实施例的病毒检测装置的示意图;以及
图6是根据本发明第三实施例的病毒检测装置的示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明实施例提供一种病毒检测方法。
图1是根据本发明第一实施例的病毒检测方法的流程图。如图所示,该病毒检测方法包括如下步骤:
步骤S101,获取待检测文件的文件样本特征。
待检测文件包括针对安卓系统的.apk文件、.nbh文件等,在待检测文件中可以提取的文件样本特征包括常量字符串、包名、证书、类名、文件版本、资源名和文件大小等特征信息。
常量字符串是一对双引号括起来的字符序列,例如“how do you do”,“CHINA”,“$123.45”。
病毒文件的文件样本特征可能与待检测文件的文件样本特征相同,为了发现待检测文件中的病毒文件,并避免在杀毒过程中误杀非病毒文件,因此,将可能存在病毒的文件或者可能被误杀的文件作为待检测文件。
步骤S102,将文件样本特征存储至搜索引擎中。
存储文件样本特征的搜索引擎服务器可以是solr,solr是一个基于Lucene的Java搜索引擎服务器。
Lucene是一个基于Java的全文信息检索工具包,可以为应用程序提供索引和搜索功能。Lucene能够为文本类型的数据建立索引,所以,只需将需要进行索引的数据格式转化成文本格式,Lucene就能够对数据进行索引和搜索。例如,对一些HTML文档和PDF文档进行索引,首先需要把HTML文档和PDF文档转化成文本格式,然后将转化后的内容交给Lucene进行索引,然后把创建好的索引文件保存到磁盘或者内存中,最后,在索引文件中查询需要的数据内容。
将文件样本特征存储在搜索引擎中之后,利用搜索引擎对文本样本特征进行病毒检测。
步骤S103,获取文件病毒特征。
利用文件病毒特征查询文件样本特征,满足文件病毒特征的文件样本特征为可疑病毒,在经过校验确认之后,该文件样本特征对应的文件样本可能为文件病毒,也可能不是病毒。文件病毒特征包括常量字符串、包名、证书、类名、文件版本、资源名和文件大小等特征信息。
步骤S104,利用搜索引擎对文件样本特征进行搜索,并将搜索得到的与文件病毒特征匹配的文件样本特征对应的文件作为病毒可疑文件。
利用搜索引擎solr对文件样本特征进行搜索,搜索存储于搜索引擎中的文件样本特征,如果搜索到搜索引擎中的文件样本特征存在与文件病毒特征匹配的文件样本特征,则将搜索到的文件样本特征作为病毒可疑文件。
由于文件病毒特征包括多个文件病毒特征,可以逐个对每个文件病毒特征在所有文件样本特征中进行搜索,从而全面搜索是否有与文件病毒特征相匹配的文件样本特征,并将搜索得到的与文件病毒特征相匹配的文件样本特征对应的文件作为病毒可疑文件。
通过本发明的上述实施例,将文件样本特征存储在搜索引擎中,并利用搜索引擎的全文搜索功能,只需要将文件病毒特征输入至搜索引擎中,即可搜索与文件病毒特征匹配的文件样本特征,并将文件样本特征对应的文件作为病毒可疑文件。在搜索与文件病毒特征匹配的文件样本特征的过程中,无需对文件样本特征进行打包处理,可以直接利用文件病毒特征在文件样本特征中进行搜索,耗时约为3至5秒,大大缩短了对文件样本特征的搜索时间,从而提高了文件的病毒检测效率。
图2是根据本发明实施例的病毒检测方法中执行匹配搜索的流程图。如图所示,该病毒检测方法通过接收病毒分析人员输入的文件病毒特征获取文件病毒特征,利用搜索引擎对文件样本特征进行搜索,并将搜索得到的与文件病毒特征匹配的文件样本特征对应的文件作为病毒可疑文件,具体步骤如下:
步骤S201,通过接收得到的病毒分析人员输入的第一文件病毒特征执行搜索,得到第一搜索结果。
文件病毒特征包括常量字符串、包名、证书、类名、文件版本、资源名和文件大小等特征信息,病毒分析人员可以根据选择上述文件病毒特征中的任一病毒特征作为第一文件病毒特征执行搜索。
例如,病毒分析人员将文件病毒特征中的包名作为第一文件病毒特征,搜索引擎solr接收病毒分析人员输入的包名,并按照包名对存储在搜索引擎中的文件样本特征进行搜索,如果搜索到与接收到的文件病毒特征中的包名相同的文件样本特征,则将搜索得到的文件样本特征对应的文件作为病毒可疑文件,搜索得到的病毒可疑文件即为第一搜索结果。
例如,病毒分析人员还可以将文件病毒特征中的文件大小作为第一文件病毒特征,搜索引擎solr接收病毒分析人员输入的文件大小,并按照文件大小对存储在搜索引擎中的文件样本特征进行搜索,如果搜索到与接收到的文件病毒特征中的文件大小相同的文件样本特征,则将搜索得到的文件样本特征对应的文件作为病毒可疑文件,搜索得到的病毒可疑文件即为第一搜索结果。
因此,接收病毒分析人员输入的任一文件病毒特征作为第一文件病毒特征,并针对第一文件病毒特征在所有文件样本特征中进行搜索。需要说明的是,上述文件病毒特征只是为了举例说明文件病毒特征的类型,并不用于限定本发明的文件病毒特征只有上述几种,应该理解为,与上述文件病毒特征相同或等同的其他文件病毒特征,以及除上述几种类型以外的其他可以用来检测文件病毒的文件病毒特征类型都可以利用本发明实施例提供的病毒检测方法进行检测。
步骤S202,输出第一搜索结果。
利用搜索引擎solr搜索得到第一搜索结果之后,得到病毒可疑文件,病毒分析人员可以根据搜索得到的病毒可疑文件宏观分析第一搜索结果是否异常,如果第一搜索结果异常,则调整输入的文件病毒特征,重新执行搜索。
第一搜索结果异常可以为搜索得到的病毒可疑文件过多,如果搜索得到的病毒可疑文件超过一定比例,则认为搜索结果异常。
输出第一搜索结果之后,对于病毒可疑文件进行再次判断,判断病毒可疑文件是否为病毒文件,如果判断出病毒可疑文件是病毒文件,可以将确定为病毒文件的病毒可疑文件下发至客户端的病毒库中。
步骤S203,通过接收得到的病毒分析人员输入的第二文件病毒特征执行搜索,得到第二搜索结果,其中,第二文件病毒特征为病毒分析人员基于第一搜索结果对第一文件病毒特征进行修改得到的文件病毒特征。
如果第一搜索结果没有异常,病毒分析人员输入第二文件病毒特征执行搜索,以判断是否存在与第二文件病毒特征相匹配的文件样本特征对应的文件。为了全面检测文件样本特征对应的文件是否存在病毒可疑文件,第二文件病毒特征与第一文件病毒特征不同。
另外,如果第一搜索结果出现异常,则将病毒分析人员输入的第一文件病毒特征修改为第二文件病毒特征,其中,第二文件病毒特征是与第一文件病毒特征不同的文件病毒特征。
例如,第一文件病毒特征为包名,第二文件病毒特征为文件大小。或者,第一文件病毒特征为文件大小,第二文件病毒特征为文件版本。
无论是第一文件病毒特征还是第二文件病毒特征,都是文件病毒特征中一种,在搜索引擎中进行搜索时的方法相同,将需要搜索的文件病毒特征输入搜索引擎之后,即可对所有文件样本特征进行匹配搜索。
步骤S204,输出第二搜索结果。
输出第二搜索结果之后,病毒分析人员可以根据第二搜索结果判断搜索得到的病毒可疑文件是否为病毒文件。病毒分析人员还可以根据第二搜索结果输入下一个进行搜索的文件病毒特征。
需要说明的是,这里所说的第一文件病毒特征和第二文件病毒特征是所有文件病毒特征中的任意文件病毒特征,不具有先后顺序关系。
通过上述病毒检测方法,在得到病毒可疑文件之后,可以对病毒可疑文件进行再次分析,确定病毒可疑文件中的病毒文件和非病毒文件。并且,在搜索第一文件病毒特征之后进行第二文件病毒特征的搜索,第二文件病毒特征为病毒分析人员基于第一搜索结果对第一文件病毒特征进行修改得到的文件病毒特征,可以对所有文件病毒特征进行搜索,从而使得搜索结果更加准确。
进一步地,获取文件病毒特征包括:同时获取多个病毒分析人员输入的多个文件病毒特征。利用搜索引擎对文件样本特征进行搜索,并将搜索得到的与文件病毒特征匹配的文件样本特征对应的文件作为病毒可疑文件包括:利用搜索引擎对与多个文件病毒特征匹配的文件样本特征同时进行搜索,并将搜索得到的与多个文件病毒特征匹配的文件样本特征对应的文件作为病毒可疑文件。
搜索引擎可以提供多个病毒分析人员从多个登录点输入多个文件病毒特征,并对接收到的多个文件病毒特征在文件样本特征中进行分布式搜索。经过搜索之后可以得到多个病毒可疑文件。在搜索引擎的每个登录点进行搜索的方法都相同,可以对文件病毒特征中的任一文件病毒特征进行搜索。
由于利用搜索引擎可以同时搜索多个病毒分析人员输入的多个文件病毒特征,因而可以在同时得到多个与文件病毒特征匹配的文件样本特征对应的文件,提高了病毒可疑文件的搜索效率。另外,由于搜索引擎支持多个病毒分析人员输入的多个文件病毒特征,因此,对多个文件病毒特征进行搜索时,对每个文件病毒特征的搜索时,相互不降低彼此的搜索效率,保证了搜索过程的稳定性。
图3是根据本发明第二实施例的病毒检测方法的流程图。如图所示,在利用搜索引擎对文件样本特征进行搜索,并将搜索得到的与文件病毒特征匹配的文件样本特征对应的文件作为病毒可疑文件之后,该病毒检测方法还包括如下步骤:
步骤S301,对病毒可疑文件进行检测,得到检测结果。
对病毒可疑文件进行检测,筛选出被误判的病毒可疑文件,得到没有被误判的病毒可疑文件。
步骤S302,根据检测结果判断病毒可疑文件是否是白名单中的文件。
白名单中存储了不能被判断为病毒的文件,例如,用户存放的代码程序,杀毒软件相关的文件等,还存储了一些非病毒文件的病毒可疑文件。
步骤S303,如果判断出病毒可疑文件不是白名单中的文件,则确定病毒可疑文件是病毒文件。
步骤S304,如果判断出病毒可疑文件是白名单中的文件,则确定病毒可疑文件不是病毒文件。
如果检测得到没有被误判的病毒可疑文件,则判断没有被误判的病毒可疑文件是否存在于白名单中。如果没有被误判的病毒可疑文件存在于白名单中,则没有被误判的病毒可疑文件不是病毒文件,如果没有被误判的病毒可疑文件不存在于白名单中,则没有被误判的病毒可疑文件是病毒文件。
优选地,为了更加准确的搜索与文件病毒特征相匹配的文件样本特征,获取待检测文件的文件样本特征包括提取待检测文件的以下样本特征:待检测文件的证书信息,待检测文件的资源名信息,待检测文件的类名信息,以及待检测文件的文件大小信息。
证书信息是为了验证用于该证书的文件是否安全的信息。资源名信息是用于表示程序需要菜单、位图等资源的名称信息,类名信息为类的名称信息,文件大小信息为表示文件大小的信息。
需要说明的是,待检测文件的样本特征包括但不限于上述样本特征,上述样本特征只是为了举例说明,并不用于限制本发明的技术方案。
本发明实施例还提供一种病毒检测装置。
本发明实施例的病毒检测方法可以通过本发明实施例所提供的病毒检测装置来执行,本发明实施例的病毒检测装置也可以用于执行本发明实施例所提供的病毒检测方法。
图4是根据本发明第一实施例的病毒检测装置的示意图。如图所示,该病毒检测装置包括第一获取单元10、存储单元20、第二获取单元30和搜索单元40。
第一获取单元10用于获取待检测文件的文件样本特征。
待检测文件包括针对安卓系统的.apk文件、.nbh文件等,在待检测文件中可以提取的文件样本特征包括常量字符串、包名、证书、类名、文件版本、资源名和文件大小等特征信息。
常量字符串是一对双引号括起来的字符序列,例如“how do you do”,“CHINA”,“$123.45”。
病毒文件的文件样本特征可能与待检测文件的文件样本特征相同,为了发现待检测文件中的病毒文件,并避免在杀毒过程中误杀非病毒文件,因此,将可能存在病毒的文件或者可能被误杀的文件作为待检测文件。
存储单元20用于将文件样本特征存储至搜索引擎中。
存储文件样本特征的搜索引擎服务器可以是solr,solr是一个基于Lucene的Java搜索引擎服务器。
Lucene是一个基于Java的全文信息检索工具包,可以为应用程序提供索引和搜索功能。Lucene能够为文本类型的数据建立索引,所以,只需将需要进行索引的数据格式转化成文本格式,Lucene就能够对数据进行索引和搜索。例如,对一些HTML文档和PDF文档进行索引,首先需要把HTML文档和PDF文档转化成文本格式,然后将转化后的内容交给Lucene进行索引,然后把创建好的索引文件保存到磁盘或者内存中,最后,在索引文件中查询需要的数据内容。
将文件样本特征存储在搜索引擎中之后,利用搜索引擎对文本样本特征进行病毒检测。
第二获取单元30用于获取文件病毒特征。
利用文件病毒特征查询文件样本特征,满足文件病毒特征的文件样本特征为可疑病毒,在经过校验确认之后,该文件样本特征对应的文件样本可能为文件病毒,也可能不是病毒。文件病毒特征包括常量字符串、包名、证书、类名、文件版本、资源名和文件大小等特征信息。
搜索单元40用于利用搜索引擎对文件样本特征进行搜索,并将搜索得到的与文件病毒特征匹配的文件样本特征对应的文件作为病毒可疑文件。
利用搜索引擎solr对文件样本特征进行搜索,搜索存储于搜索引擎中的文件样本特征,如果搜索到搜索引擎中的文件样本特征存在与文件病毒特征匹配的文件样本特征,则将搜索到的文件样本特征作为病毒可疑文件。
由于文件病毒特征包括多个文件病毒特征,可以逐个对每个文件病毒特征在所有文件样本特征中进行搜索,从而全面搜索是否有与文件病毒特征相匹配的文件样本特征,并将搜索得到的与文件病毒特征相匹配的文件样本特征对应的文件作为病毒可疑文件。
通过本发明的上述实施例,将文件样本特征存储在搜索引擎中,并利用搜索引擎的全文搜索功能,只需要将文件病毒特征输入至搜索引擎中,即可搜索与文件病毒特征匹配的文件样本特征,并将文件样本特征对应的文件作为病毒可疑文件。在搜索与文件病毒特征匹配的文件样本特征的过程中,无需对文件样本特征进行打包处理,可以直接利用文件病毒特征在文件样本特征中进行搜索,耗时约为3至5秒,大大缩短了对文件样本特征的搜索时间,从而提高了文件的病毒检测效率。
图5是根据本发明第二实施例的病毒检测装置的示意图。如图所示,该病毒检测装置包括第一获取单元10、存储单元20、第二获取单元30和搜索单元40,其中,搜索单元40包括第一搜索模块401、第一输出模块402、第二搜索模块403和第二输出模块404。
第一获取单元10用于获取待检测文件的文件样本特征。
待检测文件包括针对安卓系统的.apk文件、.nbh文件等,在待检测文件中可以提取的文件样本特征包括常量字符串、包名、证书、类名、文件版本、资源名和文件大小等特征信息。
常量字符串是一对双引号括起来的字符序列,例如“how do you do”,“CHINA”,“$123.45”。
病毒文件的文件样本特征可能与待检测文件的文件样本特征相同,为了发现待检测文件中的病毒文件,并避免在杀毒过程中误杀非病毒文件,因此,将可能存在病毒的文件或者可能被误杀的文件作为待检测文件。
存储单元20用于将文件样本特征存储至搜索引擎中。
存储文件样本特征的搜索引擎服务器可以是solr,solr是一个基于Lucene的Java搜索引擎服务器。
Lucene是一个基于Java的全文信息检索工具包,可以为应用程序提供索引和搜索功能。Lucene能够为文本类型的数据建立索引,所以,只需将需要进行索引的数据格式转化成文本格式,Lucene就能够对数据进行索引和搜索。例如,对一些HTML文档和PDF文档进行索引,首先需要把HTML文档和PDF文档转化成文本格式,然后将转化后的内容交给Lucene进行索引,然后把创建好的索引文件保存到磁盘或者内存中,最后,在索引文件中查询需要的数据内容。
将文件样本特征存储在搜索引擎中之后,利用搜索引擎对文本样本特征进行病毒检测。
第二获取单元30用于获取文件病毒特征。
利用文件病毒特征查询文件样本特征,满足文件病毒特征的文件样本特征为可疑病毒,在经过校验确认之后,该文件样本特征对应的文件样本可能为文件病毒,也可能不是病毒。文件病毒特征包括常量字符串、包名、证书、类名、文件版本、资源名和文件大小等特征信息。
搜索单元40用于利用搜索引擎对文件样本特征进行搜索,并将搜索得到的与文件病毒特征匹配的文件样本特征对应的文件作为病毒可疑文件。
利用搜索引擎solr对文件样本特征进行搜索,搜索存储于搜索引擎中的文件样本特征,如果搜索到搜索引擎中的文件样本特征存在与文件病毒特征匹配的文件样本特征,则将搜索到的文件样本特征作为病毒可疑文件。
由于文件病毒特征包括多个文件病毒特征,可以逐个对每个文件病毒特征在所有文件样本特征中进行搜索,从而全面搜索是否有与文件病毒特征相匹配的文件样本特征,并将搜索得到的与文件病毒特征相匹配的文件样本特征对应的文件作为病毒可疑文件。
具体地,搜索单元40包括第一搜索模块401、第一输出模块402、第二搜索模块403和第二输出模块404,搜索单元40通过以下模块对文件样本特征进行搜索,并将搜索得到的与文件病毒特征匹配的文件样本特征对应的文件作为病毒可疑文件。
第一搜索模块401用于通过接收得到的病毒分析人员输入的第一文件病毒特征执行搜索,得到第一搜索结果。
文件病毒特征包括常量字符串、包名、证书、类名、文件版本、资源名和文件大小等特征信息,病毒分析人员可以根据选择上述文件病毒特征中的任一病毒特征作为第一文件病毒特征执行搜索。
例如,病毒分析人员将文件病毒特征中的包名作为第一文件病毒特征,搜索引擎solr接收病毒分析人员输入的包名,并按照包名对存储在搜索引擎中的文件样本特征进行搜索,如果搜索到与接收到的文件病毒特征中的包名相同的文件样本特征,则将搜索得到的文件样本特征对应的文件作为病毒可疑文件,搜索得到的病毒可疑文件即为第一搜索结果。
例如,病毒分析人员还可以将文件病毒特征中的文件大小作为第一文件病毒特征,搜索引擎solr接收病毒分析人员输入的文件大小,并按照文件大小对存储在搜索引擎中的文件样本特征进行搜索,如果搜索到与接收到的文件病毒特征中的文件大小相同的文件样本特征,则将搜索得到的文件样本特征对应的文件作为病毒可疑文件,搜索得到的病毒可疑文件即为第一搜索结果。
因此,接收病毒分析人员输入的任一文件病毒特征作为第一文件病毒特征,并针对第一文件病毒特征在所有文件样本特征中进行搜索。需要说明的是,上述文件病毒特征只是为了举例说明文件病毒特征的类型,并不用于限定本发明的文件病毒特征只有上述几种,应该理解为,与上述文件病毒特征相同或等同的其他文件病毒特征,以及除上述几种类型以外的其他可以用来检测文件病毒的文件病毒特征类型都可以利用本发明实施例提供的病毒检测方法进行检测。
第一输出模块402用于输出第一搜索结果。
利用搜索引擎solr搜索得到第一搜索结果之后,得到病毒可疑文件,病毒分析人员可以根据搜索得到的病毒可疑文件宏观分析第一搜索结果是否异常,如果第一搜索结果异常,则调整输入的文件病毒特征,重新执行搜索。
第一搜索结果异常可以为搜索得到的病毒可疑文件过多,如果搜索得到的病毒可疑文件超过一定比例,则认为搜索结果异常。
输出第一搜索结果之后,对于病毒可疑文件进行再次判断,判断病毒可疑文件是否为病毒文件,如果判断出病毒可疑文件是病毒文件,可以将确定为病毒文件的病毒可疑文件下发至客户端的病毒库中。
第二搜索模块403用于通过接收得到的病毒分析人员输入的第二文件病毒特征执行搜索,得到第二搜索结果,其中,第二文件病毒特征为病毒分析人员基于第一搜索结果对第一文件病毒特征进行修改得到的文件病毒特征。
如果第一搜索结果没有异常,病毒分析人员输入第二文件病毒特征执行搜索,以判断是否存在与第二文件病毒特征相匹配的文件样本特征对应的文件。为了全面检测文件样本特征对应的文件是否存在病毒可疑文件,第二文件病毒特征与第一文件病毒特征不同。
另外,如果第一搜索结果出现异常,则将病毒分析人员输入的第一文件病毒特征修改为第二文件病毒特征,其中,第二文件病毒特征是与第一文件病毒特征不同的文件病毒特征。
例如,第一文件病毒特征为包名,第二文件病毒特征为文件大小。或者,第一文件病毒特征为文件大小,第二文件病毒特征为文件版本。
无论是第一文件病毒特征还是第二文件病毒特征,都是文件病毒特征中一种,在搜索引擎中进行搜索时的方法相同,将需要搜索的文件病毒特征输入搜索引擎之后,即可对所有文件样本特征进行匹配搜索。
第二输出模块404用于输出第二搜索结果。
输出第二搜索结果之后,病毒分析人员可以根据第二搜索结果判断搜索得到的病毒可疑文件是否为病毒文件。病毒分析人员还可以根据第二搜索结果输入下一个进行搜索的文件病毒特征。
需要说明的是,这里所说的第一文件病毒特征和第二文件病毒特征是所有文件病毒特征中的任意文件病毒特征,不具有先后顺序关系。
通过上述病毒检测装置,在第一搜索模块401得到病毒可疑文件之后,可以对病毒可疑文件进行再次分析,确定病毒可疑文件中的病毒文件和非病毒文件。并且,在搜索第一文件病毒特征之后进行第二文件病毒特征的搜索,第二文件病毒特征为病毒分析人员基于第一搜索结果对第一文件病毒特征进行修改得到的文件病毒特征,可以对所有文件病毒特征进行搜索,从而使得搜索结果更加准确。
进一步地,第二获取单元30还用于同时获取多个病毒分析人员输入的多个文件病毒特征。搜索单元40还用于利用搜索引擎对与多个文件病毒特征匹配的文件样本特征同时进行搜索,并将搜索得到的与多个文件病毒特征匹配的文件样本特征对应的文件作为病毒可疑文件。
搜索引擎可以提供多个病毒分析人员从多个登录点输入多个文件病毒特征,并对接收到的多个文件病毒特征在文件样本特征中进行分布式搜索。经过搜索之后可以得到多个病毒可疑文件。在搜索引擎的每个登录点进行搜索的方法都相同,可以对文件病毒特征中的任一文件病毒特征进行搜索。
由于利用搜索引擎可以同时搜索多个病毒分析人员输入的多个文件病毒特征,因而可以在同时得到多个与文件病毒特征匹配的文件样本特征对应的文件,提高了病毒可疑文件的搜索效率。另外,由于搜索引擎支持多个病毒分析人员输入的多个文件病毒特征,因此,对多个文件病毒特征进行搜索时,对每个文件病毒特征的搜索时,相互不降低彼此的搜索效率,保证了搜索过程的稳定性。
图6是根据本发明第三实施例的病毒检测装置的示意图。如图所示,该病毒检测装置包括第一获取单元10、存储单元20、第二获取单元30和搜索单元40,还包括检测单元50、判断单元60、第一确定单元70和第二确定单元80。
第一获取单元10用于获取待检测文件的文件样本特征。
待检测文件包括针对安卓系统的.apk文件、.nbh文件等,在待检测文件中可以提取的文件样本特征包括常量字符串、包名、证书、类名、文件版本、资源名和文件大小等特征信息。
常量字符串是一对双引号括起来的字符序列,例如“how do you do”,“CHINA”,“$123.45”。
病毒文件的文件样本特征可能与待检测文件的文件样本特征相同,为了发现待检测文件中的病毒文件,并避免在杀毒过程中误杀非病毒文件,因此,将可能存在病毒的文件或者可能被误杀的文件作为待检测文件。
存储单元20用于将文件样本特征存储至搜索引擎中。
存储文件样本特征的搜索引擎服务器可以是solr,solr是一个基于Lucene的Java搜索引擎服务器。
Lucene是一个基于Java的全文信息检索工具包,可以为应用程序提供索引和搜索功能。Lucene能够为文本类型的数据建立索引,所以,只需将需要进行索引的数据格式转化成文本格式,Lucene就能够对数据进行索引和搜索。例如,对一些HTML文档和PDF文档进行索引,首先需要把HTML文档和PDF文档转化成文本格式,然后将转化后的内容交给Lucene进行索引,然后把创建好的索引文件保存到磁盘或者内存中,最后,在索引文件中查询需要的数据内容。
将文件样本特征存储在搜索引擎中之后,利用搜索引擎对文本样本特征进行病毒检测。
第二获取单元30用于获取文件病毒特征。
利用文件病毒特征查询文件样本特征,满足文件病毒特征的文件样本特征为可疑病毒,在经过校验确认之后,该文件样本特征对应的文件样本可能为文件病毒,也可能不是病毒。文件病毒特征包括常量字符串、包名、证书、类名、文件版本、资源名和文件大小等特征信息。
搜索单元40用于利用搜索引擎对文件样本特征进行搜索,并将搜索得到的与文件病毒特征匹配的文件样本特征对应的文件作为病毒可疑文件。
利用搜索引擎solr对文件样本特征进行搜索,搜索存储于搜索引擎中的文件样本特征,如果搜索到搜索引擎中的文件样本特征存在与文件病毒特征匹配的文件样本特征,则将搜索到的文件样本特征作为病毒可疑文件。
由于文件病毒特征包括多个文件病毒特征,可以逐个对每个文件病毒特征在所有文件样本特征中进行搜索,从而全面搜索是否有与文件病毒特征相匹配的文件样本特征,并将搜索得到的与文件病毒特征相匹配的文件样本特征对应的文件作为病毒可疑文件。
通过本发明的上述实施例,将文件样本特征存储在搜索引擎中,并利用搜索引擎的全文搜索功能,只需要将文件病毒特征输入至搜索引擎中,即可搜索与文件病毒特征匹配的文件样本特征,并将文件样本特征对应的文件作为病毒可疑文件。在搜索与文件病毒特征匹配的文件样本特征的过程中,无需对文件样本特征进行打包处理,可以直接利用文件病毒特征在文件样本特征中进行搜索,耗时约为3至5秒,大大缩短了对文件样本特征的搜索时间,从而提高了文件的病毒检测效率。
检测单元50用于在利用搜索引擎对文件样本特征进行搜索,并将搜索得到的与文件病毒特征匹配的文件样本特征对应的文件作为病毒可疑文件之后,对病毒可疑文件进行检测,得到检测结果。
对病毒可疑文件进行检测,筛选出被误判的病毒可疑文件,得到没有被误判的病毒可疑文件。
判断单元60用于根据检测结果判断病毒可疑文件是否是白名单中的文件。
白名单中存储了不能被判断为病毒的文件,例如,用户存放的代码程序,杀毒软件相关的文件等,还存储了一些非病毒文件的病毒可疑文件。
第一确定单元70用于在判断出病毒可疑文件不是白名单中的文件时,确定病毒可疑文件是病毒文件。
第二确定单元80用于在判断出病毒可疑文件是白名单中的文件时,确定病毒可疑文件不是病毒文件。
如果检测得到没有被误判的病毒可疑文件,则判断没有被误判的病毒可疑文件是否存在于白名单中。如果没有被误判的病毒可疑文件存在于白名单中,则没有被误判的病毒可疑文件不是病毒文件,如果没有被误判的病毒可疑文件不存在于白名单中,则没有被误判的病毒可疑文件是病毒文件。
优选地,为了更加准确的搜索与文件病毒特征相匹配的文件样本特征,第一获取单元10包括提取模块,提取模块用于提取待检测文件的以下样本特征:待检测文件的证书信息,待检测文件的资源名信息,待检测文件的类名信息,待检测文件的文件大小信息。
证书信息是为了验证用于该证书的文件是否安全的信息。资源名信息是用于表示程序需要菜单、位图等资源的名称信息,类名信息为类的名称信息,文件大小信息为表示文件大小的信息。
需要说明的是,待检测文件的样本特征包括但不限于上述样本特征,上述样本特征只是为了举例说明,并不用于限制本发明的技术方案。
本发明实施例还提供了一种计算机存储介质。该计算机存储介质可存储有程序,该程序用于执行上述的病毒检测方法中的部分或全部步骤。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种病毒检测方法,其特征在于,包括:
获取待检测文件的文件样本特征;其中,所述待检测文件为可能存在病毒的文件或者可能被误杀的文件;
将所述文件样本特征存储至搜索引擎中,以利用所述搜索引擎对所述待检测文件的文件样本特征进行病毒检测;
基于接收的第一文件病毒特征,对存储在所述搜索引擎中的文件样本特征执行搜索;其中,所述搜索引擎能够提供多个病毒分析人员从多个登陆点输入的多个文件病毒特征,并对接收到的多个文件病毒特征在文件样本特征中进行分布式搜索;
当搜索到与所述第一文件病毒特征对应的文件样本特征时,将搜索得到的文件样本特征对应的文件作为第一搜索结果,并输出所述第一搜索结果;
对所述第一搜索结果进行再次判断,如果所述第一搜索结果出现异常,则将病毒分析人员输入的所述第一文件病毒特征修改为第二文件病毒特征;其中,所述第二文件病毒特征与所述第一文件病毒特征不同;
如果确定所述第一搜索结果不存在异常,接收第二文件病毒特征;其中,所述第二文件病毒特征是基于所述第一搜索结果,对所述第一文件病毒特征进行修改所得到的文件病毒特征;
基于所述第二文件病毒特征,对存储在所述搜索引擎中的文件样本特征进行全面搜索,并将搜索得到的与所述第二文件病毒特征匹配的文件样本特征对应的文件作为病毒可疑文件,以得到第二搜索结果;
在得到所述病毒可疑文件之后,对所述病毒可疑文件进行再次分析,以确定病毒可疑文件中的病毒文件和非病毒文件;以及,
对所述病毒可疑文件进行检测,筛选出被误判的病毒可疑文件,得到没有被误判的病毒可疑文件。
2.根据权利要求1所述的病毒检测方法,其特征在于,在基于接收的第一文件病毒特征,对存储在所述搜索引擎中的文件样本特征执行搜索之前,所述方法还包括:接收病毒分析人员输入的所述第一文件病毒特征;以及,
在得到第二搜索结果之后,所述方法还包括:
输出所述第二搜索结果。
3.根据权利要求2所述的病毒检测方法,其特征在于,其中:
所述接收病毒分析人员输入的所述第一文件病毒特征,包括:同时接收多个病毒分析人员输入的多个第一文件病毒特征;
对应地,所述方法还包括:利用所述搜索引擎对与所述多个第一文件病毒特征匹配的文件样本特征同时进行搜索,并将搜索得到的与所述多个第一文件病毒特征匹配的文件样本特征对应的文件作为病毒可疑文件。
4.根据权利要求1所述的病毒检测方法,其特征在于,在将搜索得到的与所述第二文件病毒特征匹配的文件样本特征对应的文件作为病毒可疑文件,以得到第二搜索结果之后,所述病毒检测方法还包括:
对所述病毒可疑文件进行检测,得到检测结果;
根据所述检测结果判断所述病毒可疑文件是否是白名单中的文件;
如果判断出所述病毒可疑文件不是所述白名单中的文件,则确定所述病毒可疑文件是病毒文件;以及
如果判断出所述病毒可疑文件是所述白名单中的文件,则确定所述病毒可疑文件不是病毒文件。
5.根据权利要求1所述的病毒检测方法,其特征在于,所述获取待检测文件的文件样本特征,包括:提取所述待检测文件的以下样本特征:
所述待检测文件的证书信息;
所述待检测文件的资源名信息;
所述待检测文件的类名信息;以及
所述待检测文件的文件大小信息。
6.一种病毒检测装置,其特征在于,包括:
第一获取单元,用于获取待检测文件的文件样本特征;其中,所述待检测文件为可能存在病毒的文件或者可能被误杀的文件;
存储单元,用于将所述文件样本特征存储至搜索引擎中,以利用所述搜索引擎对所述待检测文件的文件样本特征进行病毒检测;
搜索单元,用于基于接收的第一文件病毒特征,对存储在所述搜索引擎中的文件样本特征执行搜索;其中,所述搜索引擎能够提供多个病毒分析人员从多个登陆点输入的多个文件病毒特征,并对接收到的多个文件病毒特征在文件样本特征中进行分布式搜索;当搜索到与所述第一文件病毒特征对应的文件样本特征时,将搜索得到的文件样本特征对应的文件作为第一搜索结果,并输出所述第一搜索结果;对所述第一搜索结果进行再次判断,如果所述第一搜索结果出现异常,则将病毒分析人员输入的所述第一文件病毒特征修改为第二文件病毒特征;其中,所述第二文件病毒特征与所述第一文件病毒特征不同;如果确定所述第一搜索结果不存在异常,接收第二文件病毒特征;其中,所述第二文件病毒特征是基于所述第一搜索结果,对所述第一文件病毒特征进行修改所得到的文件病毒特征;基于所述第二文件病毒特征,对存储在所述搜索引擎中的文件样本特征进行全面搜索,并将搜索得到的与所述第二文件病毒特征匹配的文件样本特征对应的文件作为病毒可疑文件,以得到第二搜索结果;
分析单元,用于在得到所述病毒可疑文件之后,对所述病毒可疑文件进行再次分析,以确定病毒可疑文件中的病毒文件和非病毒文件;以及,对所述病毒可疑文件进行检测,筛选出被误判的病毒可疑文件,得到没有被误判的病毒可疑文件。
7.根据权利要求6所述的病毒检测装置,其特征在于,所述病毒检测装置还包括:第二获取单元,用于接收病毒分析人员输入的所述第一文件病毒特征;
对应地,所述搜索单元还包括:
第一输出模块,用于输出所述第一搜索结果;
第二输出模块,用于输出所述第二搜索结果。
8.根据权利要求7所述的病毒检测装置,其特征在于,其中:
所述第二获取单元,还用于同时接收多个病毒分析人员输入的多个第一文件病毒特征;
所述搜索单元,还用于利用所述搜索引擎对与所述多个第一文件病毒特征匹配的文件样本特征同时进行搜索,并将搜索得到的与所述多个第一文件病毒特征匹配的文件样本特征对应的文件作为病毒可疑文件。
9.根据权利要求6所述的病毒检测装置,其特征在于,所述病毒检测装置还包括:
检测单元,用于在将搜索得到的与所述第二文件病毒特征匹配的文件样本特征对应的文件作为病毒可疑文件,以得到第二搜索结果之后,对所述病毒可疑文件进行检测,得到检测结果;
判断单元,用于根据所述检测结果判断所述病毒可疑文件是否是白名单中的文件;
第一确定单元,用于在判断出所述病毒可疑文件不是所述白名单中的文件时,确定所述病毒可疑文件是病毒文件;以及
第二确定单元,用于在判断出所述病毒可疑文件是所述白名单中的文件时,确定所述病毒可疑文件不是病毒文件。
10.根据权利要求6所述的病毒检测装置,其特征在于,所述第一获取单元,包括:
提取模块,所述提取模块用于提取所述待检测文件的以下样本特征:
所述待检测文件的证书信息;
所述待检测文件的资源名信息;
所述待检测文件的类名信息;以及
所述待检测文件的文件大小信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410030534.9A CN104794397B (zh) | 2014-01-22 | 2014-01-22 | 病毒检测方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410030534.9A CN104794397B (zh) | 2014-01-22 | 2014-01-22 | 病毒检测方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104794397A CN104794397A (zh) | 2015-07-22 |
CN104794397B true CN104794397B (zh) | 2021-06-11 |
Family
ID=53559186
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410030534.9A Active CN104794397B (zh) | 2014-01-22 | 2014-01-22 | 病毒检测方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104794397B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106682510B (zh) * | 2016-09-06 | 2019-04-12 | 腾讯科技(深圳)有限公司 | 一种防止病毒误杀的方法及装置 |
CN107025407A (zh) * | 2017-03-22 | 2017-08-08 | 国家计算机网络与信息安全管理中心 | 一种office文档文件的恶意代码检测方法及系统 |
CN109145589B (zh) * | 2018-07-27 | 2023-04-07 | 平安科技(深圳)有限公司 | 应用程序获取方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101304426A (zh) * | 2008-07-10 | 2008-11-12 | 腾讯科技(深圳)有限公司 | 一种可疑文件的识别上报方法和装置 |
CN102779257A (zh) * | 2012-06-28 | 2012-11-14 | 奇智软件(北京)有限公司 | 一种Android应用程序的安全检测方法及系统 |
CN103020524A (zh) * | 2012-12-11 | 2013-04-03 | 北京奇虎科技有限公司 | 计算机病毒监控系统 |
CN103177022A (zh) * | 2011-12-23 | 2013-06-26 | 腾讯科技(深圳)有限公司 | 一种恶意文件搜索方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9213837B2 (en) * | 2011-12-06 | 2015-12-15 | Raytheon Cyber Products, Llc | System and method for detecting malware in documents |
-
2014
- 2014-01-22 CN CN201410030534.9A patent/CN104794397B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101304426A (zh) * | 2008-07-10 | 2008-11-12 | 腾讯科技(深圳)有限公司 | 一种可疑文件的识别上报方法和装置 |
CN103177022A (zh) * | 2011-12-23 | 2013-06-26 | 腾讯科技(深圳)有限公司 | 一种恶意文件搜索方法及装置 |
CN102779257A (zh) * | 2012-06-28 | 2012-11-14 | 奇智软件(北京)有限公司 | 一种Android应用程序的安全检测方法及系统 |
CN103020524A (zh) * | 2012-12-11 | 2013-04-03 | 北京奇虎科技有限公司 | 计算机病毒监控系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104794397A (zh) | 2015-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5694473B2 (ja) | 危険度計算を通じたリパッケージアプリケーションの分析システム及び分析方法 | |
US11057289B2 (en) | Mobile application identification in network traffic via a search engine approach | |
Zollner et al. | An automated live forensic and postmortem analysis tool for bitcoin on windows systems | |
CN103761476B (zh) | 特征提取的方法及装置 | |
US11647032B2 (en) | Apparatus and method for classifying attack groups | |
US10216848B2 (en) | Method and system for recommending cloud websites based on terminal access statistics | |
US20120159625A1 (en) | Malicious code detection and classification system using string comparison and method thereof | |
CN106384048B (zh) | 一种威胁信息处理方法与装置 | |
US20170149830A1 (en) | Apparatus and method for automatically generating detection rule | |
KR101582601B1 (ko) | 액티비티 문자열 분석에 의한 안드로이드 악성코드 검출 방법 | |
CN107368856B (zh) | 恶意软件的聚类方法及装置、计算机装置及可读存储介质 | |
CN109063482B (zh) | 宏病毒识别方法、装置、存储介质及处理器 | |
CN105224600B (zh) | 一种样本相似度的检测方法及装置 | |
CN107395650B (zh) | 基于沙箱检测文件识别木马回连方法及装置 | |
CN101304426A (zh) | 一种可疑文件的识别上报方法和装置 | |
CN105718795B (zh) | Linux下基于特征码的恶意代码取证方法及系统 | |
CN107995179B (zh) | 一种未知威胁感知方法、装置、设备及系统 | |
CN106502879A (zh) | 一种实现应用程序安全性检测的方法及装置 | |
CN106775937A (zh) | 一种命令行校验方法及装置 | |
CN103414758B (zh) | 日志处理方法及装置 | |
KR20150124020A (ko) | 악성코드 식별 태그 설정 시스템 및 방법, 및 악성코드 식별 태그를 이용한 악성코드 검색 시스템 | |
CN109829304A (zh) | 一种病毒检测方法及装置 | |
CN104794397B (zh) | 病毒检测方法和装置 | |
KR20180079434A (ko) | 바이러스 데이터베이스 획득 방법 및 기기, 장비, 서버 그리고 시스템 | |
CN112583773A (zh) | 未知样本的检测方法及装置、存储介质、电子装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |