CN111368298A - 一种病毒文件识别方法、装置、设备及存储介质 - Google Patents
一种病毒文件识别方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN111368298A CN111368298A CN202010123991.8A CN202010123991A CN111368298A CN 111368298 A CN111368298 A CN 111368298A CN 202010123991 A CN202010123991 A CN 202010123991A CN 111368298 A CN111368298 A CN 111368298A
- Authority
- CN
- China
- Prior art keywords
- virus
- file
- attribute
- leading
- processed
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
- G06F21/565—Static detection by checking file integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Virology (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例公开了一种病毒文件识别方法、装置、设备及存储介质,该方法包括:先获取待处理文件的头部数据,并根据待处理文件的头部数据生成文件前导属性,再将文件前导属性与至少一个病毒前导属性进行匹配得到属性匹配结果,并基于属性匹配结果确定待处理文件是否是病毒文件。其中,因待处理文件的头部数据的数据量较小,使得从待处理文件中获取头部数据的耗时较小;还因基于待处理文件的头部数据生成的文件前导属性的数据量较小,且基于病毒文件的头部数据生成的病毒前导属性的数据量较小,使得文件前导属性与病毒前导属性的匹配过程耗时较小,如此使得识别待处理文件是否是病毒文件的耗时较小,从而有利于提高病毒查杀效率。
Description
技术领域
本申请涉及计算机安全技术领域,尤其涉及一种病毒文件识别方法、装置、设备及存储介质。
背景技术
目前,用户通常使用杀毒软件来识别终端设备(例如,电脑或手机)中的病毒文件,且该识别过程具体可以为:先读取待处理文件中的全部数据,得到待处理文件的文件数据,再将待处理文件的文件数据与病毒特征进行匹配,以便基于匹配结果确定该待处理文件是否是携带有病毒的病毒文件。然而,因上述病毒文件的识别过程耗时较长,导致病毒查杀效率较低。
发明内容
本申请实施例提供了一种病毒文件识别方法、装置、设备及存储介质,能够减少病毒文件的识别耗时,有利于提高病毒查杀效率。
有鉴于此,本申请第一方面提供了一种病毒文件识别方法,包括:
获取待处理文件的头部数据;
根据所述待处理文件的头部数据,生成文件前导属性;
将所述文件前导属性与至少一个病毒前导属性进行匹配,得到属性匹配结果;所述病毒前导属性是基于病毒文件的头部数据生成的;
基于所述属性匹配结果,确定所述待处理文件是否是病毒文件。
本申请第二方面提供了一种病毒文件识别装置,包括:
第一获取单元,用于获取待处理文件的头部数据;
生成单元,用于根据所述待处理文件的头部数据,生成文件前导属性;
匹配单元,用于将所述文件前导属性与至少一个病毒前导属性进行匹配,得到属性匹配结果;所述病毒前导属性是基于病毒文件的头部数据生成的;
识别单元,用于基于所述属性匹配结果,确定所述待处理文件是否是病毒文件。
本申请第三方面提供了一种设备,所述设备包括处理器以及存储器:
所述存储器用于存储计算机程序;
所述处理器用于根据所述计算机程序执行上述第一方面所述的病毒文件识别方法。
本申请第四方面提供了计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行上述第一方面所述的病毒文件识别方法。
本申请第五方面提供了一种包括指令的计算机程序产品,当其在计算机上运行时,使得所述计算机执行上述第一方面所述的病毒文件识别方法。
从以上技术方案可以看出,本申请实施例具有以下优点:
本申请实施例提供的病毒文件识别方法中,先获取待处理文件的头部数据,并根据待处理文件的头部数据生成文件前导属性,再将文件前导属性与至少一个病毒前导属性进行匹配得到属性匹配结果,并基于属性匹配结果确定待处理文件是否是病毒文件。其中,因待处理文件的头部数据的数据量较小,使得从待处理文件中获取头部数据的耗时较小;还因基于待处理文件的头部数据生成的文件前导属性的数据量较小,且基于病毒文件的头部数据生成的病毒前导属性的数据量较小,使得文件前导属性与病毒前导属性的匹配过程耗时较小,如此使得识别待处理文件是否是病毒文件的耗时较小,从而有利于提高病毒查杀效率。
附图说明
图1为本申请实施例提供的病毒文件识别方法的一种应用场景示意图;
图2为本申请实施例提供的病毒文件识别方法的另一种应用场景示意图;
图3为本申请实施例提供的一种病毒文件识别方法的流程示意图;
图4为本申请实施例提供的文件前导属性的示意图;
图5为本申请实施例提供的文件前导属性的生成示意图;
图6为本申请实施例提供的S305和S306的示意图;
图7为本申请实施例提供的病毒特征库的构建过程示意图;
图8为本申请实施例提供的属性索引值与病毒特征之间的对应关系示意图;
图9为本申请实施例提供的病毒文件识别方法的另一种实施方式的流程示意图;
图10本申请实施例提供的应用于图1所示场景下的病毒文件识别方法的流程图;
图11为本申请实施例提供的触发病毒查杀指令的示意图;
图12为本申请实施例提供的病毒查杀结果的示意图;
图13本申请实施例提供的一种病毒文件识别装置的结构示意图;
图14本申请实施例提供的另一种病毒文件识别装置的结构示意图;
图15本申请实施例提供的又一种病毒文件识别装置的结构示意图;
图16本申请实施例提供的一种终端设备的结构示意图;
图17本申请实施例提供的一种服务器的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
目前,在病毒查杀过程中,病毒文件识别过程可以为:先读取待处理文件中的全部数据,得到待处理文件的文件数据,再将待处理文件的文件数据与病毒特征进行匹配,以便基于匹配结果确定该待处理文件是否是携带有病毒的病毒文件。下面结合示例进行说明。
例如,当病毒特征库包括3个病毒特征时,则该病毒文件识别过程为:
首先,读取待处理文件中的全部数据,得到待处理文件的文件数据。
然后,将待处理文件的文件数据与第1个病毒特征进行匹配,得到第1个病毒特征对应的匹配结果;将待处理文件的文件数据与第2个病毒特征进行匹配,得到第2个病毒特征对应的匹配结果;将待处理文件的文件数据与第3个病毒特征进行匹配,得到第3个病毒特征对应的匹配结果。
最后,若基于第1个病毒特征对应的匹配结果,确定待处理文件的文件数据与第1个病毒特征匹配成功,则确定待处理文件为病毒文件;若基于第2个病毒特征对应的匹配结果,确定待处理文件的文件数据与第2个病毒特征匹配成功,则确定待处理文件为病毒文件;若基于第3个病毒特征对应的匹配结果,确定待处理文件的文件数据与第3个病毒特征匹配成功,则确定待处理文件为病毒文件;若基于第1个病毒特征对应的匹配结果、第2个病毒特征对应的匹配结果和第3个病毒特征对应的匹配结果,确定待处理文件的文件数据分别与第1个病毒特征、第2个病毒特征、第3个病毒特征均匹配失败,则确定待处理文件不是病毒文件,也就是确定待处理文件为安全文件。
基于上述病毒文件识别过程的相关内容可知,上述病毒文件识别过程存在以下问题:因待处理文件中的全部数据的数据量较大,使得上述病毒文件识别过程需要消耗较多的时间来获取待处理文件的文件数据;也使得上述病毒文件识别过程需要消耗较多的时间来进行待处理文件的文件数据与病毒特征的匹配过程,如此导致上述病毒文件的识别过程耗时较长,导致病毒查杀效率较低。
针对上述病毒文件识别过程的存在的技术问题,本申请实施例还提供了一种病毒文件识别方法,能够减少病毒文件的识别耗时,有利于提高终端上的病毒查杀效率。
具体地,在本申请实施例提供的病毒文件识别方法中,先获取待处理文件的头部数据,并根据待处理文件的头部数据生成文件前导属性,再将文件前导属性与至少一个病毒前导属性进行匹配得到属性匹配结果,并基于属性匹配结果确定待处理文件是否是病毒文件。
可见,在本申请实施例提供的病毒文件识别方法中,因待处理文件的头部数据的数据量较小(尤其比上述病毒文件识别过程所使用的待处理文件的全部数据的数据量小),使得从待处理文件中获取头部数据的耗时较小;还因基于待处理文件的头部数据生成的文件前导属性的数据量较小,且基于病毒文件的头部数据生成的病毒前导属性的数据量较小,使得文件前导属性与病毒前导属性的匹配过程耗时较小,如此使得识别待处理文件是否是病毒文件的耗时较小,从而有利于提高病毒查杀效率。
应理解,本申请实施例提供的病毒文件识别方法可以应用于数据处理设备,如终端设备、服务器等;其中,终端设备具体可以为智能手机、计算机、个人数字助理(PersonalDigital Assitant,PDA)、平板电脑等;服务器具体可以为应用服务器,也可以为Web服务器,在实际部署时,该服务器可以为独立服务器,也可以为集群服务器。
若本申请实施例提供的病毒文件识别方法由终端设备执行时,则终端设备可以直接基于本地存储空间中的各待处理文件的头部数据,确定各待处理文件是否是病毒文件,如此使得终端设备能够从本地存储空间的大量文件中快速地识别出携带有病毒的病毒文件。若本申请实施例提供的病毒文件识别方法由服务器执行时,则服务器基于终端设备上传的各待处理文件的头部数据识别各待处理文件是否是病毒文件,再将病毒文件的识别结果发送给终端设备,以便终端设备将接收的病毒文件的识别结果进行显示。
为了便于理解本申请实施例提供的技术方案,下面对本申请实施例提供的病毒文件识别方法应用于终端设备为例,对本申请实施例提供的病毒文件识别方法适用的应用场景进行示例性介绍。
参见图1,图1为本申请实施例提供的病毒文件识别方法的应用场景示意图。如图1所示,该应用场景包括:终端设备101和用户102;其中,终端设备101用于执行本申请实施例提供的病毒文件识别方法进行病毒查杀过程。
终端设备101在接收到用户102触发的病毒查杀指令之后,终端设备101可以先获取待处理文件的头部数据,并根据待处理文件的头部数据生成文件前导属性,再将文件前导属性与至少一个病毒前导属性进行匹配得到属性匹配结果,并基于属性匹配结果确定待处理文件是否是病毒文件,以便将待处理文件的识别结果(也就是,待处理文件是病毒文件或待处理文件不是病毒文件)显示给用户102。
应理解,在实际应用中,也可以将本申请实施例提供的病毒文件识别方法应用于服务器,参见图2,该图为本申请实施例提供的病毒文件识别方法的另一种应用场景示意图。如图2所示,服务器201能够先根据终端设备202提供的待处理文件的头部数据生成文件前导属性,再将文件前导属性与至少一个病毒前导属性进行匹配得到属性匹配结果,并基于属性匹配结果确定待处理文件是否是病毒文件,以便将待处理文件的识别结果(也就是,待处理文件是病毒文件或待处理文件不是病毒文件)发送给终端设备202,使得用户203能够在终端设备202上查看待处理文件的识别结果。
应理解,图1和图2所示的应用场景仅为示例,在实际应用中,本申请实施例提供的病毒文件识别方法还可以应用于其他进行病毒文件识别的应用场景,在此不对本申请实施例提供的病毒文件识别方法做任何限定。
下面通过实施例对本申请提供的病毒文件识别方法进行介绍。
方法实施例
参见图3,图3为本申请实施例提供的一种病毒文件识别方法的流程示意图。为了便于描述,下述实施例仅以终端设备为执行主体为例对该病毒文件识别方法进行介绍。如图3所示,该病毒文件识别方法包括S301-S304:
S301:获取待处理文件的头部数据。
头部数据是指位于待处理文件开头的一段数据;而且,头部数据可以包括待处理文件的结构描述数据等信息。
本申请实施例中,在终端设备获取到待处理文件之后,可以先从待处理文件的头部位置,读取待处理文件的头部数据,以便后续能够基于待处理文件的头部数据来确定待处理文件是否是病毒文件。
S302:根据待处理文件的头部数据,生成文件前导属性。
文件前导属性用于表征待处理文件的与安全相关的属性信息,而且文件前导属性可以包括至少一项属性。
另外,本申请实施例不限定文件前导属性的表示方式,例如,文件前导属性可以利用N位无符号整数值(如图4所示的16位无符号整数值)进行表示,且在N位无符号整数值中的每一位数值均可以表征一项属性(如图4所示16位无符号整数值中每一位数值均可以表征一项属性)。其中,N为正整数,且N≥1。
另外,本申请实施例还提供了获取文件前导属性(也就是S302)的一种具体实施方式,在该实施方式中,S302具体可以为:根据待处理文件的头部数据和预设安全条件,得到安全判断结果,并根据安全判断结果,生成文件前导属性。
预设安全条件用于表征文件处于安全状态和不安全状态的分界线信息;而且预设安全条件包括至少一个安全属性条件,例如,如图5所示,预设安全条件可以包括M个安全属性条件,其中,M为正整数,且M≥1。
另外,不同文件类型的文件对应于不同的预设安全条件,而且预设安全条件与文件类型之间的对应关系可以预先设定。例如,PE文件(Portable Executable)对应的预设安全条件可以包括:存在附加数据、节的数量大于5、存在空的节、和代码入口在最后一个节中的至少一个安全属性条件。
安全判断结果包括至少一个安全属性条件的判断结果,而且安全判断结果所包括的判断结果的个数与预设安全条件所包括的安全属性条件的个数相同。例如,当预设安全条件包括第1个安全属性条件至第16个安全属性条件时,则安全判断结果包括第1个安全属性条件的判断结果至第16个安全属性条件判断结果。
需要说明的是,本申请实施例不限定安全属性条件的判断结果的表示方式,例如,安全属性条件的判断结果可以采用二进制数值表示,具体为:利用“1”表示满足安全属性条件,且利用“0”表示不满足安全属性条件。
文件前导属性是基于安全判断结果生成的,而且本申请实施例不限定文件前导属性的生成过程,作为示例,文件前导属性可以是安全判断结果的集合。
基于上述内容可知,本申请实施例中,在获取到待处理文件的头部数据之后,可以先根据待处理文件的头部数据和预设安全条件,得到安全判断结果,再基于安全判断结果生成文件前导属性。例如,如图5所示,假设预设安全条件包括16个安全属性条件(也就是图5中的M=16),文件前导属性采用16位无符号整数值,而且待处理文件满足第2个安全属性条件、第3个安全属性条件、第5个安全属性条件、第6个安全属性条件、第7个安全属性条件、第11个安全属性条件和第16个安全属性条件。
基于上述假设可知,安全判断结果包括不满足第1个安全属性条件(“0”)、满足第2个安全属性条件(“1”)、满足第3个安全属性条件(“1”)、不满足第4个安全属性条件(“0”)、满足第5个安全属性条件(“1”)、满足第6个安全属性条件(“1”)、满足第7个安全属性条件(“1”)、不满足第8个安全属性条件(“0”)、不满足第9个安全属性条件(“0”)、不满足第10个安全属性条件(“0”)、满足第11个安全属性条件(“1”)、不满足第12个安全属性条件(“0”)、不满足第13个安全属性条件(“0”)、不满足第14个安全属性条件(“0”)、不满足第15个安全属性条件(“0”)以及满足第16个安全属性条件(“1”)。此时基于该安全判断结果生成的文件前导属性可以为“0110111000100001”。
基于上述S302的相关内容可知,本申请实施例中在获取到待处理文件的头部数据之后,可以先根据待处理文件的头部数据,确定待处理文本的文件前导属性,以便后续能够利用该文件前导属性来判断待处理文件是否属于病毒文件。
S303:将文件前导属性与至少一个病毒前导属性进行匹配,得到属性匹配结果。
病毒前导属性用于表征病毒文件所具有的与安全相关的属性信息,而且,病毒前导属性包括至少一项属性。
本申请实施例不限定病毒前导属性的表示方式,例如,病毒前导属性可以利用N位无符号整数值(如图4所示的16位无符号整数值)进行表示,且在N位无符号整数值中的每一位数值均可以表征一项属性(如图4所示16位无符号整数值中每一位数值均可以表征一项属性)。其中,N为正整数,且N≥1。
另外,病毒前导属性是基于病毒文件的头部数据生成的,而且病毒前导属性的获取过程与上文文件前导属性的获取过程类似,为了简要,在此不再赘述。需要说明的是,本申请实施例不限定生成病毒前导属性的执行主体,可以由终端设备生成病毒前导属性;也可以先由服务器生成病毒前导属性再由服务器将生成的病毒前导属性发送至终端设备。
属性匹配结果用于表征待处理文件与病毒的匹配结果,而且本申请实施例不限定属性匹配结果的内容,例如,属性匹配结果可以至少包括病毒前导属性与文件前导属性匹配成功的匹配结果信息。作为示例,当将文件前导属性分别与第1个病毒前导属性和第2个病毒前导属性进行匹配,且文件前导属性只与第1个病毒前导属性匹配成功时,则属性匹配结果可以包括文件前导属性与第1个病毒前导属性匹配成功;而且,属性匹配结果也可以包括文件前导属性与第1个病毒前导属性匹配成功、以及文件前导属性与第2个病毒前导属性匹配失败。
另外,本申请实施例还提供了S303的一种具体实施方式,在该实施方式中,S303具体可以包括以下三步:
第一步:获取文件前导属性中满足预设属性条件的属性个数,作为第一数目。
预设属性条件可以预先设定,而且预设属性条件可以根据文件前导属性的表示方式确定。例如,当文件前导属性中每项属性的属性值均利用“1”或“0”表示,且属性值为“1”用于表征待处理文件满足相应属性对应的安全属性条件时,则预设属性条件可以为属性值等于1。
基于上述内容可知,本申请实施例中,在获取到待处理文件的文件前导属性之后,可以先统计文件前导属性中满足预设属性条件的属性个数,作为第一数目。例如,当文件前导属性为图4所示的“0110111000100001”,且预设属性条件为属性值等于“1”时,则该步骤为:统计文件前导属性中属性值为1的属性个数,得到第一数目为7。
第二步:将对应的属性索引值满足索引条件的病毒前导属性,确定为候选病毒前导属性。
属性索引值用于描述病毒前导属性中满足预设属性条件的属性个数,而且属性索引值是根据病毒前导属性中满足预设属性条件的属性个数确定的(例如,属性索引值=病毒前导属性中满足预设属性条件的属性个数)。
另外,属性索引值与病毒前导属性之间存在对应关系,而且属性索引值与病毒前导属性之间的对应关系为一对多的对应关系,也就是,一个属性索引值可能对应于多个病毒前导属性。
另外,属性索引值与病毒前导属性之间的对应关系可以预先生成,而且,本申请实施例不限定生成属性索引值与病毒前导属性之间的对应关系的执行主体,例如,由终端设备生成,也可以先由服务器生成再发送至终端设备。
索引条件用于表征待处理文本可能携带的病毒的病毒前导属性对应的属性索引值所满足的条件;而且索引条件是根据上述第一数目确定的。另外,索引条件可以具体为属性索引值大于等于第一数目。
候选病毒前导属性用于描述对应的属性索引值满足索引条件的病毒前导属性。
基于上述内容可知,本申请实施例中,在获取到第一数目之后,可以先基于第一数目确定索引条件,再将对应的属性索引值满足索引条件的病毒前导属性,确定为候选病毒前导属性,并确定对应的属性索引值不满足索引条件的病毒前导属性与文件前导属性匹配失败。例如,当文件前导属性分别与第1个病毒前导属性至第3个病毒前导属性进行匹配,且第一数目为7,且第1个病毒前导属性对应的属性索引值为10,第2个病毒前导属性对应的属性索引值为8,以及第3个病毒前导属性对应的属性索引值为4,且索引条件为大于等于第一数目时,则该步骤具体可以为:先根据第一数目7,确定索引条件为大于等于7;再将对应的属性索引值大于等于7的第1个病毒前导属性和第2个病毒前导属性,均确定为候选病毒前导属性;并确定对应的属性索引值小于7的第3个病毒前导属性与文件前导属性匹配失败。
第三步:将文件前导属性中的各项属性分别与候选病毒前导属性中的各项属性进行匹配,得到候选病毒前导属性对应的属性匹配结果。
候选病毒前导属性对应的属性匹配结果可以为文件前导属性与候选病毒前导属性匹配成功,或,文件前导属性与候选病毒前导属性匹配失败。
文件前导属性与候选病毒前导属性是否匹配成功,可以依据以下原则确定:若候选病毒前导属性中表征满足安全属性条件的各属性,在文件前导属性中也均是表征满足安全属性条件,则确定文件前导属性与候选病毒前导属性匹配成功;反之,则确定文件前导属性与候选病毒前导属性匹配失败。例如,当文件前导属性S1中每项属性的属性值均利用“1”或“0”表示,且候选病毒前导属性S2中每项属性的属性值均利用“1”或“0”表示,且属性值为“1”用于表征待处理文件满足相应属性对应的安全属性条件时,则若候选病毒前导属性S2中为1的位置,在文件前导属性S1中相同位置上的值也为1,则确定文件前导属性与候选病毒前导属性匹配成功;反之,则确定文件前导属性与候选病毒前导属性匹配失败。
基于上述内容可知,本申请实施例中,在获取到候选病毒前导属性之后,可以将文件前导属性中的各项属性分别与第i个候选病毒前导属性中的各项属性进行匹配,得到第i个候选病毒前导属性对应的属性匹配结果,其中,i为正整数,1≤i≤D,D表示候选病毒前导属性的个数。当文件前导属性包括16项属性,且第i个候选病毒前导属性包括16项属性,文件前导属性中的第j项属性与候选病毒前导属性中的第j项属性相对应,j为正整数,1≤j≤16时,则上述匹配过程具体可以为:将文件前导属性中的第1项属性与候选病毒前导属性中的第1项属性进行匹配,得到第1项属性的匹配结果;……(以此类推);将文件前导属性中的第16项属性与候选病毒前导属性中的第16项属性进行匹配,得到第16项属性的匹配结果;并根据第1项属性的匹配结果至第16项属性的匹配结果,得到第i个候选病毒前导属性对应的属性匹配结果。
基于上述三步的相关内容可知,本申请实施例中,在获取到待处理文本的文件前导属性之后,可以先基于文件前导属性中的满足预设属性条件的属性个数(也就是第一数目)进行初步筛选,以便确定对应的属性索引值低于第一数目的病毒前导属性与文件前导属性匹配失败,并将对应的属性索引值不低于第一数目的病毒前导属性确定为候选病毒前导属性,再将文件前导属性中的各项属性分别与候选病毒前导属性中的各项属性进行匹配,得到文件前导属性与候选病毒前导属性是否匹配成功。其中,因基于第一数目能够过滤掉大量的不符合条件的病毒前导属性,使得后续只需将文件前导属性与少量的符合条件的病毒前导属性进行属性匹配即可,如此能够提高文件前导属性与至少一个病毒前导属性的匹配效率,有利于提高病毒查杀效率。
基于上述S303的相关内容可知,本申请实施例中,在获取到待处理文本的文件前导属性之后,可以将该文件前导属性与至少一个病毒前导属性进行匹配,得到属性匹配结果。例如,当至少一个病毒前导属性包括T个病毒前导属性,且T为正整数,T≥1时,则S303具体可以为:将文件前导属性分别与第1个病毒前导属性至第T个病毒前导属性进行匹配,得到第1个病毒前导属性对应的匹配结果至第T个病毒前导属性对应的匹配结果;以便基于第1个病毒前导属性对应的匹配结果至第T个病毒前导属性对应的匹配结果,得到属性匹配结果。
S304:基于属性匹配结果,确定待处理文件是否是病毒文件。
本申请实施例中,在获取到属性匹配结果之后,可以基于属性匹配结果确定待处理文件是否是病毒文件,其具体可以为:
(1)在基于属性匹配结果,确定文件前导属性与各病毒前导属性匹配失败时,确定待处理文件不是病毒文件。
例如,当至少一个病毒前导属性包括3个病毒前导属性,且属性匹配结果包括文件前导属性与第1个病毒前导属性匹配失败、文件前导属性与第2个病毒前导属性匹配失败、以及文件前导属性与第3个病毒前导属性匹配失败时,则基于属性匹配结果可以确定文件前导属性与各病毒前导属性匹配失败,从而可以确定待处理文件不是病毒文件。
(2)在基于属性匹配结果,确定文件前导属性与目标病毒前导属性匹配成功时,将待处理文件与目标病毒前导属性对应的病毒特征进行匹配,以便在确定待处理文件与目标病毒前导属性对应的病毒特征匹配成功时,确定待处理文件为病毒文件。
其中,病毒特征用于表征携带病毒的病毒文件所具有的特征。另外,病毒特征与病毒前导属性之间存在对应关系,而且病毒特征与病毒前导属性之间的对应关系可以预先生成。需要说明的是,本申请实施例不限定生成病毒特征与病毒前导属性之间的对应关系的执行主体,例如,由终端设备生成,也可以先由服务器生成再发送至终端设备。
为了便于理解上述(2),下面结合示例,对上述(2)进行说明。
例如,当至少一个病毒前导属性包括3个病毒前导属性,且属性匹配结果包括文件前导属性与第1个病毒前导属性匹配失败、文件前导属性与第2个病毒前导属性匹配成功、以及文件前导属性与第3个病毒前导属性匹配成功时,则基于属性匹配结果可以确定文件前导属性与第2个病毒前导属性匹配成功以及文件前导属性与第3个病毒前导属性匹配成功。此时,还需将待处理文件分别与第2个病毒前导属性对应的病毒特征和第3个病毒前导属性对应的病毒特征进行匹配,以便在确定待处理文件与第2个病毒前导属性对应的病毒特征匹配成功,和/或待处理文件与第3个病毒前导属性对应的病毒特征匹配成功时,确定待处理文件为病毒文件;然而,在确定待处理文件与第2个病毒前导属性对应的病毒特征匹配失败,且待处理文件与第3个病毒前导属性对应的病毒特征匹配失败时,确定待处理文件不为病毒文件。
需要说明的是,本申请实施例不限定将待处理文件与目标病毒前导属性对应的病毒特征进行匹配的匹配过程。
基于上述S304的相关内容可知,在本申请实施例中,在获取到属性匹配结果之后,可以先基于属性匹配结果,确定与文件前导属性匹配成功的病毒前导属性,若不存在,则直接确定待处理文件不是病毒文件;若存在,利用与文件前导属性匹配成功的病毒前导属性对应病毒特征,和待处理文件中的全部数据进行匹配,以便基于特征匹配结果确定待处理文件是否是病毒文件,其具体为:若确定存在与待处理文件匹配成功的病毒特征,则确定待处理文件是病毒文件;若确定不存在与待处理文件匹配成功的病毒特征,则确定待处理文件不是病毒文件。
基于上述S301至S304的内容可知,在本申请实施例提供的病毒文件识别方法中,先获取待处理文件的头部数据,并根据待处理文件的头部数据生成文件前导属性,再将文件前导属性与至少一个病毒前导属性进行匹配得到属性匹配结果,并基于属性匹配结果确定待处理文件是否是病毒文件。其中,因待处理文件的头部数据的数据量较小,使得从待处理文件中获取头部数据的耗时较小;还因基于待处理文件的头部数据生成的文件前导属性的数据量较小,且基于病毒文件的头部数据生成的病毒前导属性的数据量较小,使得文件前导属性与病毒前导属性的匹配过程耗时较小,如此使得识别待处理文件是否是病毒文件的耗时较小,从而有利于提高终端上的病毒查杀效率。
另外,在确定前导属性与目标病毒前导属性匹配成功之后,还需要进一步将待处理文件与目标病毒前导属性对应的病毒特征进行匹配,以便再次确定待处理文件是否携带有病毒,如此能够保证病毒文件的识别准确率,从而有利于实现在保证病毒文件的识别准确率的基础上,提高病毒查杀效率。
另外,上文的病毒前导属性、属性索引值、以及病毒特征均可以从病毒特征库中获取。基于此,本申请实施例还提供了病毒文件识别方法的另一种实施方式,在该实施方式中,该病毒文件识别方法除了包括上述步骤以外,还包括S305和S306(如图6所示):
S305:获取病毒特征库。
病毒特征库用于记录病毒相关信息,例如,病毒特征库用于记录每种病毒的病毒特征、病毒前导属性以及属性索引值,而且病毒特征库还用于记录病毒特征和病毒前导属性之间的对应关系、病毒前导属性和属性索引值之间的对应关系、病毒特征和属性索引值之间的对应关系。
病毒特征库可以预先构建,而且本申请实施例还提供了一种病毒特征库的构建过程,如图7所示,病毒特征库的构建过程具体可以包括S701-S704:
S701:获取至少一个病毒文件。
病毒文件是指携带有病毒的文件,而且本申请实施例不限定病毒文件的获取方式,例如,上述至少一个病毒文件可以均是已识别出的病毒文件。
S702:根据目标病毒文件,生成该目标病毒文件的病毒特征和病毒前导属性,并根据该目标病毒文件的病毒前导属性,生成该目标病毒文件的属性索引值;其中,目标病毒文件为至少一个病毒文件中的任一病毒文件。
在病毒特征库中,病毒特征用于表征每种病毒所具有的特征信息,而且每种病毒均具有其对应的病毒特征。另外,本申请实施例不限定从病毒文件获取病毒特征的获取方式。
在病毒特征库中,病毒前导属性用于表征每种病毒所满足的安全属性条件信息,而且每种病毒均具有其对应的病毒前导属性。另外,病毒前导属性的相关内容请参见上文S303中的相关内容,在此不再赘述。
在病毒特征库中,属性索引值用于指向每种病毒所具有的病毒特征和/或病毒前导属性,而且每种病毒均具有其对应的属性索引值。例如,如图8所示,每一属性索引值可以指向具有该属性索引值的病毒特征。另外,病毒前导属性的相关内容请参见上文S303中的相关内容,在此不再赘述。
需要说明的是,在图8中,W用于表示病毒特征对应的病毒前导属性中处于满足安全属性条件状态的属性总数。例如,当病毒前导属性中每项属性的属性值均利用“1”或“0”表示,且属性值为“1”表征待处理文件满足相应属性对应的安全属性条件时,W用于表示病毒特征对应的病毒前导属性中属性值等于1的个数。
基于上述内容可知,本申请实施例中,在获取到R个病毒文件之后,可以先根据第k个病毒文件,生成第k个病毒文件的病毒特征和第k个病毒文件的病毒前导属性,再根据第k个病毒文件的病毒前导属性,生成第k个病毒文件的属性索引值;其中,R为正整数,且R≥1;k为正整数,1≤k≤R。如此能够获取到每个病毒文件的病毒特征、病毒前导属性以及属性索引值,以便后续能够基于各病毒文件的病毒特征、病毒前导属性以及属性索引值建立相应的的对应关系。
S703:根据至少一个病毒文件的病毒特征、病毒前导属性和属性索引值,建立病毒特征和属性索引值之间的对应关系与病毒前导属性和属性索引值之间的对应关系中的至少一个关系、以及病毒特征和病毒前导属性之间的对应关系。
病毒特征和属性索引值之间的对应关系用于记录每种病毒的病毒特征及该病毒对应的属性索引值之间的对应关系。其中,病毒对应的属性索引值是指病毒的病毒前导属性对应的属性索引值。
病毒前导属性和属性索引值之间的对应关系用于记录每种病毒的病毒前导属性及该病毒前导属性对应的属性索引值之间的对应关系。
病毒特征和病毒前导属性之间的对应关系用于记录每种病毒的病毒特征及该病毒的病毒前导属性之间的对应关系。
需要说明的是,由于基于病毒特征和病毒前导属性之间的对应关系以及病毒前导属性和属性索引值之间的对应关系,能够推导出病毒特征和属性索引值之间的对应关系;而且,基于病毒特征和病毒前导属性之间的对应关系以及病毒特征和属性索引值之间的对应关系,能够推导出病毒前导属性和属性索引值之间的对应关系,因而,在病毒特征库中除了可以保存病毒特征和病毒前导属性之间的对应关系以外,还可以只保存病毒特征和属性索引值之间的对应关系和病毒前导属性和属性索引值之间的对应关系中的至少一个关系。
基于上述内容可知,本申请实施例中,在获取到R个病毒文件的病毒特征、病毒前导属性和属性索引值,R为正整数,且R≥1之后,首先,基于第k个病毒文件的病毒特征、病毒前导属性和属性索引值,得到第k个病毒文件的病毒特征与第k个病毒文件的病毒前导属性之间的对应关系、第k个病毒文件的病毒特征与第k个病毒文件的属性索引值之间的对应关系、以及第k个病毒文件的病毒前导属性与第k个病毒文件的属性索引值之间的对应关系,其中,k为正整数,1≤k≤R。然后,再基于第1个病毒文件的病毒特征与第1个病毒文件的病毒前导属性之间的对应关系、……、第R个病毒文件的病毒特征与第R个病毒文件的病毒前导属性之间的对应关系,建立病毒特征和病毒前导属性之间的对应关系;同时,基于第1个病毒文件的病毒特征与第1个病毒文件的属性索引值之间的对应关系、……、第R个病毒文件的病毒特征与第R个病毒文件的属性索引值之间的对应关系,建立病毒特征和属性索引值之间的对应关系;同时,基于第1个病毒文件的病毒前导属性与第1个病毒文件的属性索引值之间的对应关系、……、第R个病毒文件的病毒前导属性与第R个病毒文件的属性索引值之间的对应关系,建立病毒前导属性和属性索引值之间的对应关系。
S704:根据病毒特征和属性索引值之间的对应关系与病毒前导属性和属性索引值之间的对应关系中的至少一个关系、以及病毒特征和病毒前导属性之间的对应关系,生成病毒特征库。
本申请实施例可以基于建立的病毒特征和属性索引值之间的对应关系与病毒前导属性和属性索引值之间的对应关系中的至少一个关系、以及病毒特征和病毒前导属性之间的对应关系,生成病毒特征库,使得生成的病毒特征库不仅包括了各病毒文件的病毒特征、病毒前导属性和属性索引值,还包括了病毒特征和属性索引值之间的对应关系、病毒前导属性和属性索引值之间的对应关系、以及病毒特征和病毒前导属性之间的对应关系。如此使得后续可以直接从病毒特征库中基于每种病毒的一种信息(例如,病毒前导属性),准确地确定出该种病毒的其他信息(例如,病毒特征和属性索引值),如此增加了病毒特征库中的查询效率以及查询准确性。
基于上述S701至S704的相关内容可知,本申请实施例中,可以先从已有的病毒文件中提取出每种病毒的病毒特征、病毒前导属性和属性索引值,再基于所有病毒的病毒特征、病毒前导属性和属性索引值,构建病毒特征和属性索引值之间的对应关系、病毒前导属性和属性索引值之间的对应关系、以及病毒特征和病毒前导属性之间的对应关系,最后再利用这些对应关系生成病毒特征库,使得后续可以直接从病毒特征库中基于每种病毒的一种信息(例如,病毒前导属性),准确地确定出该种病毒的其他信息(例如,病毒特征和属性索引值),如此增加了病毒特征库中的查询效率以及查询准确性。
另外,本申请实施例不限定病毒特征库的构建过程的执行主体,例如,由终端设备直接执行上述病毒特征库的构建过程;也可以先由服务器执行上述病毒特征库的构建过程,再由服务器将构建得到的病毒特征库发送至终端设备。
基于此,本申请实施例提供了S305的两种实施方式,下面分别进行介绍。
作为第一种实施方式,当由终端设备执行上述病毒特征库的构建过程时,则S305具体可以为:终端设备执行上述S701至S704。
作为第二种实施方式,当由服务器执行上述病毒特征库的构建过程时,则S305具体可以为:终端设备接收服务器发送的病毒特征库,其中,病毒特征库是由服务器通过执行上述S701至S704生成的。
S306:从病毒特征库中获取至少一个病毒前导属性。
需要说明的是,本申请实施例不限定S305和S306的执行时间,S305和S306只要在执行S302之前完成执行即可。
基于上述S305和S306的内容可知,本申请实施例中,在获取到病毒特征库之后,可以直接从病毒特征库中读取上述至少一个病毒前导属性,使得后续能够利用该读取的至少一个病毒前导属性与文件前导属性进行匹配。其中,因病毒特征库是预先构建好的,使得终端设备可以直接从病毒特征库中读取病毒前导属性进行匹配过程即可,如此有利于提高病毒查杀效率。
另外,本申请实施例中,不仅可以从病毒特征库中读取病毒前导属性,还可以读取病毒前导属性对应的病毒特征病毒,也可以读取病毒前导属性对应的属性索引值。基于此,本申请实施例还提供了病毒文件识别方法的另一种实施方式,在该实施方式中,该病毒文件识别方法除了包括上述步骤以外,还包括以下两步中的至少一步:
第一步:从病毒特征库中获取目标病毒前导属性对应的病毒特征。
需要说明的是,本申请实施例不限定第一步的执行时间,只要在执行“将待处理文件与目标病毒前导属性对应的病毒特征进行匹配”之前完成执行即可,而且,第一步可以按需执行,如果在病毒识别过程中不需要执行“将待处理文件与目标病毒前导属性对应的病毒特征进行匹配”,那么则可以不执行该第一步。
第二步:从病毒特征库中获取至少一个病毒前导属性对应的属性索引值。
需要说明的是,本申请实施例不限定第二步的执行时间,只要在执行“将对应的属性索引值满足索引条件的病毒前导属性,确定为候选病毒前导属性”之前完成执行即可,而且,第二步可以按需执行,如果在病毒识别过程中不需要执行“将对应的属性索引值满足索引条件的病毒前导属性,确定为候选病毒前导属性”,那么则可以不执行该第二步。
基于上述两步的相关内容可知,本申请实施例中,还可以按照需求从病毒特征库中读取病毒前导属性对应的病毒特征病毒,也可以读取病毒前导属性对应的属性索引值。其中,因病毒特征库是预先构建好的,使得终端设备可以直接从病毒特征库中读取病毒特征病毒和/或属性索引值进行匹配过程即可,如此有利于提高病毒查杀效率。
另外,因病毒只能寄宿在某些特定类型的文件中,使得病毒查杀过程中可以只对病毒可能寄宿的特定文件类型下的文件进行查杀,无需对所有文件进行查杀。基于此,本申请实施例还提供了病毒文件识别方法的另一种实施方式,在该实施方式中,该病毒文件识别方法除了包括上述全部或部分步骤以外,还包括S307(如图9所示):
S307:根据待处理文件的头部数据,确定待处理文件的文件类型。
此时,S302具体可以为:在确定待处理文件的文件类型属于预设文件类型时,根据待处理文件的头部数据,生成文件前导属性。
其中,预设文件类型用于描述病毒可寄宿的文件所具有的文件类型,也就是预设文件类型包括需进行病毒扫描的文件类型。
需要说明的是,如图9所示,S307需要在执行S301之后且执行S302之前执行。
基于上述S307和S302的相关内容可知,本申请实施例中,在获取到待处理文件的头部数据之后,可以先从待处理文件的头部数据中确定待处理文件的文件类型,以便在确定待处理文件的文件类型属于病毒可寄宿的文件类型之后,才需要识别待处理文件是否是病毒文件。可见,在病毒查杀过程中,可以只对病毒可寄宿的文件类型下的文件进行病毒文件的识别,无需对所有文件进行病毒文件的识别,如此有利于提高病毒查杀效率。
为了便于进一步理解本申请实施例提供的病毒文件识别方法,场景实施例将结合图10对本申请实施例提供的病毒文件识别方法进行整体介绍。
场景实施例
场景实施例是对方法实施例提供的病毒文件识别方法的示例性介绍,为了简要起见,场景实施例中与方法实施例中部分内容相同,在此不再赘述,该内容相同的部分的技术详情请参照方法实施例中的相关内容。
参见图10,该图为本申请实施例提供的应用于图1所示场景下的病毒文件识别方法的流程图。
本申请实施例提供的病毒文件识别方法,包括S1001-S1013:
S1001:终端设备101接收到用户102触发的病毒查杀指令之后,加载病毒特征库。
其中,病毒特征库包括:每种病毒的病毒特征、病毒前导属性和属性索引值,病毒特征和属性索引值之间的对应关系和病毒前导属性和属性索引值之间的对应关系中的至少一个关系、以及病毒特征和病毒前导属性之间的对应关系。
另外,本申请实施例不限定用户102触发的病毒查杀指令的方式,例如,用户102可以借助鼠标或触控板等光标控制设备点击杀毒软件中的“病毒查杀”按钮来触发病毒查杀指令;用户102可以用手指等身体部位点击触摸屏上显示的杀毒软件中的“病毒查杀”按钮来触发病毒查杀指令。
基于上述内容可知,本申请实施例中,当用户102想要对终端设备101进行病毒查杀时,用户102可以通过预设手段(例如,点击杀毒软件中的“病毒查杀”按钮等手段)触发的病毒查杀指令,以便终端设备101在接收到该病毒查杀指令之后,先加载病毒特征库,再基于该病毒特征库来识别待处理文件中的病毒文件。
S1002:终端设备101读取待处理文件的头部数据。
S1003:终端设备101根据待处理文件的头部数据,确定待处理文件的文件类型。
S1004:终端设备101判断待处理文件的文件类型是否属于预设文件类型,若是,则执行S1005;若否,则执行S1013。
S1005:终端设备101根据待处理文件的头部数据,生成文件前导属性。
S1006:终端设备101获取文件前导属性中满足预设属性条件的属性个数,作为第一数目。
S1007:终端设备101将病毒特征库中对应的属性索引值满足索引条件的病毒前导属性,确定为候选病毒前导属性。其中,索引条件为大于等于第一数目。
S1008:终端设备101将文件前导属性中的各项属性分别与候选病毒前导属性中的各项属性进行匹配,得到候选病毒前导属性对应的属性匹配结果。
S1009:终端设备101基于候选病毒前导属性对应的属性匹配结果,判断是否存在与文件前导属性匹配成功的候选病毒前导属性,若是,则执行S1010;若否,则执行S1013。
S1010:终端设备101将与文件前导属性匹配成功的候选病毒前导属性,确定为目标病毒前导属性,并将待处理文件与目标病毒前导属性对应的病毒特征进行匹配,得到目标病毒前导属性对应的特征匹配结果。
S1011:终端设备101基于目标病毒前导属性对应的特征匹配结果,判断是否存在与待处理文件匹配成功的病毒特征,若是,则执行S1012;若否,则执行S1013。
S1012:终端设备101确定待处理文件是病毒文件。
S1013:终端设备101确定待处理文件不是病毒文件。
需要说明的是,当终端设备101识别出待处理文件是否是病毒文件之后,可以将识别结果进行显示(如图12所示),以便用户102能够从终端设备101上获知终端设备101中那些文件是安全文件,那些是携带病毒的病毒文件。
基于上述S1001至S1013的相关内容可知,本申请实施例中,可以先利用待处理文件的头部数据携带的安全信息,直接将不符合所有病毒前导属性所表征的安全信息的待处理文件直接确定为非病毒文件(也就是安全文件),再利用与待处理文件的文件前导属性匹配成功的病毒前导属性对应的病毒特征,对待处理文件中的全部数据进行特征匹配,以便再次确认待处理文件中是否真的携带了病毒。如此能够利用待处理文件的头部数据直接过滤掉大量的非病毒文件,使得只需利用病毒特征匹配少量的疑似病毒文件(疑似病毒文件是指存在与其文件前导属性匹配成功的病毒前导属性的文件)的全部数据即可,如此能够有效地提高病毒查杀效率。
基于上述提供的病毒文件识别方法的相关内容,本申请实施例还提供了对应的病毒文件识别装置,以使得上述提供的病毒文件识别方法在实际中得以应用和实现。
装置实施例
需要说明的是,本实施例提供的病毒文件识别装置的技术详情可以参照上述提供的病毒文件识别方法。
参见图13,该图为本申请实施例提供的一种病毒文件识别装置的结构示意图。
本申请实施例提供的病毒文件识别装置1300,包括:
第一获取单元1301,用于获取待处理文件的头部数据;
生成单元1302,用于根据所述待处理文件的头部数据,生成文件前导属性;
匹配单元1303,用于将所述文件前导属性与至少一个病毒前导属性进行匹配,得到属性匹配结果;所述病毒前导属性是基于病毒文件的头部数据生成的;
识别单元1304,用于基于所述属性匹配结果,确定所述待处理文件是否是病毒文件。
可选的,在图13所示的病毒文件识别装置1300的基础上,所述识别单元1304,具体用于:
在基于所述属性匹配结果,确定所述文件前导属性与各病毒前导属性匹配失败时,确定所述待处理文件不是病毒文件;
在基于所述属性匹配结果,确定所述文件前导属性与目标病毒前导属性匹配成功时,将所述待处理文件与所述目标病毒前导属性对应的病毒特征进行匹配,以便在确定所述待处理文件与所述目标病毒前导属性对应的病毒特征匹配成功时,确定所述待处理文件为病毒文件。
可选的,在图13所示的病毒文件识别装置1300的基础上,所述生成单元1302,具体用于:
根据所述待处理文件的头部数据和预设安全条件,得到安全判断结果;其中,所述预设安全条件包括至少一个安全属性条件;
根据所述安全判断结果,生成文件前导属性。
可选的,在图13所示的病毒文件识别装置1300的基础上,所述文件前导属性包括至少一项属性,且所述病毒前导属性包括至少一项属性;
所述匹配单元1303,具体用于:
获取所述文件前导属性中满足预设属性条件的属性个数,作为第一数目;
将对应的属性索引值满足索引条件的病毒前导属性,确定为候选病毒前导属性;其中,所述属性索引值用于描述所述病毒前导属性中满足预设属性条件的属性个数;所述索引条件是根据所述第一数目确定的;
将文件前导属性中的各项属性分别与候选病毒前导属性中的各项属性进行匹配,得到所述候选病毒前导属性对应的属性匹配结果。
可选的,在图13所示的病毒文件识别装置1300的基础上,参见图14,图14为本申请实施例提供的另一种病毒文件识别装置,如图14所示,病毒文件识别装置1300还包括:
第二获取单元1305,用于获取病毒特征库;
第三获取单元1306,用于从所述病毒特征库中获取所述至少一个病毒前导属性。
可选的,在图14所示的病毒文件识别装置1300的基础上,所述病毒特征库的构建过程为:
获取至少一个病毒文件;
根据目标病毒文件,生成所述目标病毒文件的病毒特征和病毒前导属性,并根据所述目标病毒文件的病毒前导属性,生成所述目标病毒文件的属性索引值;其中,所述目标病毒文件为至少一个病毒文件中的任一病毒文件;
根据至少一个病毒文件的病毒特征、病毒前导属性和属性索引值,建立病毒特征和属性索引值之间的对应关系与病毒前导属性和属性索引值之间的对应关系中的至少一个关系、以及病毒特征和病毒前导属性之间的对应关系;
根据所述病毒特征和属性索引值之间的对应关系与所述病毒前导属性和属性索引值之间的对应关系中的至少一个关系、以及所述病毒特征和病毒前导属性之间的对应关系,生成病毒特征库。
可选的,在图13所示的病毒文件识别装置1300的基础上,参见图15,图15为本申请实施例提供的又一种病毒文件识别装置,如图15所示,病毒文件识别装置1300还包括:
确定单元1307,用于根据所述待处理文件的头部数据,确定所述待处理文件的文件类型;
所述生成单元1302,具体用于:在确定所述待处理文件的文件类型属于预设文件类型时,根据所述待处理文件的头部数据,生成文件前导属性。
以上为本申请实施例提供的病毒文件识别装置的具体实施方式,在该实施方式中,先获取待处理文件的头部数据,并根据待处理文件的头部数据生成文件前导属性,再将文件前导属性与至少一个病毒前导属性进行匹配得到属性匹配结果,并基于属性匹配结果确定待处理文件是否是病毒文件。其中,因待处理文件的头部数据的数据量较小,使得从待处理文件中获取头部数据的耗时较小;还因基于待处理文件的头部数据生成的文件前导属性的数据量较小,且基于病毒文件的头部数据生成的病毒前导属性的数据量较小,使得文件前导属性与病毒前导属性的匹配过程耗时较小,如此使得识别待处理文件是否是病毒文件的耗时较小,从而有利于提高终端上的病毒查杀效率。
本申请实施例还提供了一种用于识别病毒文件的终端设备和服务器,下面将从硬件实体化的角度对本申请实施例提供的用于识别病毒文件的终端设备和服务器进行介绍。
参见图16,为本申请实施例提供的一种终端设备的结构示意图。为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。该终端可以为包括手机、平板电脑、个人数字助理(英文全称:Personal DigitalAssistant,英文缩写:PDA)、销售终端(英文全称:Point of Sales,英文缩写:POS)、车载电脑等任意终端设备,以终端为平板电脑为例:
图16示出的是与本申请实施例提供的终端相关的平板电脑的部分结构的框图。参考图16,平板电脑包括:射频(英文全称:Radio Frequency,英文缩写:RF)电路1610、存储器1620、输入单元1630、显示单元1640、传感器1650、音频电路1660、无线保真(英文全称:wireless fidelity,英文缩写:WiFi)模块1670、处理器1680、以及电源1690等部件。本领域技术人员可以理解,图16中示出的平板电脑结构并不构成对平板电脑的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
存储器1620可用于存储软件程序以及模块,处理器1680通过运行存储在存储器1620的软件程序以及模块,从而执行平板电脑的各种功能应用以及数据处理。存储器1620可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据平板电脑的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1620可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器1680是平板电脑的控制中心,利用各种接口和线路连接整个平板电脑的各个部分,通过运行或执行存储在存储器1620内的软件程序和/或模块,以及调用存储在存储器1620内的数据,执行平板电脑的各种功能和处理数据,从而对平板电脑进行整体监控。可选的,处理器1680可包括一个或多个处理单元;优选的,处理器1680可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1680中。
在本申请实施例中,该终端所包括的处理器1680还具有以下功能:
获取待处理文件的头部数据;
根据所述待处理文件的头部数据,生成文件前导属性;
将所述文件前导属性与至少一个病毒前导属性进行匹配,得到属性匹配结果;所述病毒前导属性是基于病毒文件的头部数据生成的;
基于所述属性匹配结果,确定所述待处理文件是否是病毒文件。
可选的,所述处理器1680还用于执行本申请实施例提供的病毒文件识别方法的任意一种实现方式的步骤。
本申请实施例还提供了一种服务器,图17是本申请实施例提供的一种服务器的结构示意图,该服务器1700可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,CPU)1722(例如,一个或一个以上处理器)和存储器1732,一个或一个以上存储应用程序1742或数据1744的存储介质1730(例如一个或一个以上海量存储设备)。其中,存储器1732和存储介质1730可以是短暂存储或持久存储。存储在存储介质1730的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1722可以设置为与存储介质1730通信,在服务器1700上执行存储介质1730中的一系列指令操作。
服务器1700还可以包括一个或一个以上电源1726,一个或一个以上有线或无线网络接口1750,一个或一个以上输入输出接口1758,和/或,一个或一个以上操作系统1741,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述实施例中由服务器所执行的步骤可以基于该图17所示的服务器结构。
其中,CPU 1722用于执行如下步骤:
获取待处理文件的头部数据;
根据所述待处理文件的头部数据,生成文件前导属性;
将所述文件前导属性与至少一个病毒前导属性进行匹配,得到属性匹配结果;所述病毒前导属性是基于病毒文件的头部数据生成的;
基于所述属性匹配结果,确定所述待处理文件是否是病毒文件。
可选的,CPU 1722还可以用于执行本申请实施例中病毒文件识别方法的任意一种实现方式的步骤。
本申请实施例还提供一种计算机可读存储介质,用于存储计算机程序,该计算机程序用于执行前述各个实施例所述的一种病毒文件识别方法中的任意一种实施方式。
本申请实施例还提供一种包括指令的计算机程序产品,当其在计算机上运行时,使得计算机执行前述各个实施例所述的一种病毒文件识别方法中的任意一种实施方式。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文全称:Read-OnlyMemory,英文缩写:ROM)、随机存取存储器(英文全称:Random Access Memory,英文缩写:RAM)、磁碟或者光盘等各种可以存储计算机程序的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (10)
1.一种病毒文件识别方法,其特征在于,包括:
获取待处理文件的头部数据;
根据所述待处理文件的头部数据,生成文件前导属性;
将所述文件前导属性与至少一个病毒前导属性进行匹配,得到属性匹配结果;所述病毒前导属性是基于病毒文件的头部数据生成的;
基于所述属性匹配结果,确定所述待处理文件是否是病毒文件。
2.根据权利要求1所述的方法,其特征在于,所述基于所述属性匹配结果,确定所述待处理文件是否是病毒文件,具体为:
在基于所述属性匹配结果,确定所述文件前导属性与各病毒前导属性匹配失败时,确定所述待处理文件不是病毒文件;
在基于所述属性匹配结果,确定所述文件前导属性与目标病毒前导属性匹配成功时,将所述待处理文件与所述目标病毒前导属性对应的病毒特征进行匹配,以便在确定所述待处理文件与所述目标病毒前导属性对应的病毒特征匹配成功时,确定所述待处理文件为病毒文件。
3.根据权利要求1所述的方法,其特征在于,所述根据所述待处理文件的头部数据,生成文件前导属性,具体包括:
根据所述待处理文件的头部数据和预设安全条件,得到安全判断结果;其中,所述预设安全条件包括至少一个安全属性条件;
根据所述安全判断结果,生成文件前导属性。
4.根据权利要求1所述的方法,其特征在于,所述文件前导属性包括至少一项属性,且所述病毒前导属性包括至少一项属性;
所述将所述文件前导属性与至少一个病毒前导属性进行匹配,得到属性匹配结果,具体包括:
获取所述文件前导属性中满足预设属性条件的属性个数,作为第一数目;
将对应的属性索引值满足索引条件的病毒前导属性,确定为候选病毒前导属性;其中,所述属性索引值用于描述所述病毒前导属性中满足预设属性条件的属性个数;所述索引条件是根据所述第一数目确定的;
将所述文件前导属性中的各项属性分别与所述候选病毒前导属性中的各项属性进行匹配,得到所述候选病毒前导属性对应的属性匹配结果。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取病毒特征库;
从所述病毒特征库中获取所述至少一个病毒前导属性。
6.根据权利要求5所述的方法,其特征在于,所述病毒特征库的构建过程为:
获取至少一个病毒文件;
根据目标病毒文件,生成所述目标病毒文件的病毒特征和病毒前导属性,并根据所述目标病毒文件的病毒前导属性,生成所述目标病毒文件的属性索引值;其中,所述目标病毒文件为至少一个病毒文件中的任一病毒文件;
根据所述至少一个病毒文件的病毒特征、病毒前导属性和属性索引值,建立病毒特征和属性索引值之间的对应关系与病毒前导属性和属性索引值之间的对应关系中的至少一个关系、以及病毒特征和病毒前导属性之间的对应关系;
根据所述病毒特征和属性索引值之间的对应关系与所述病毒前导属性和属性索引值之间的对应关系中的至少一个关系、以及所述病毒特征和病毒前导属性之间的对应关系,生成所述病毒特征库。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述待处理文件的头部数据,确定所述待处理文件的文件类型;
所述根据所述待处理文件的头部数据,生成文件前导属性,具体包括:
在确定所述待处理文件的文件类型属于预设文件类型时,根据所述待处理文件的头部数据,生成文件前导属性。
8.一种病毒文件识别装置,其特征在于,包括:
第一获取单元,用于获取待处理文件的头部数据;
生成单元,用于根据所述待处理文件的头部数据,生成文件前导属性;
匹配单元,用于将所述文件前导属性与至少一个病毒前导属性进行匹配,得到属性匹配结果;所述病毒前导属性是基于病毒文件的头部数据生成的;
识别单元,用于基于所述属性匹配结果,确定所述待处理文件是否是病毒文件。
9.一种设备,其特征在于,所述设备包括处理器以及存储器:
所述存储器用于存储计算机程序;
所述处理器用于根据所述计算机程序执行权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010123991.8A CN111368298B (zh) | 2020-02-27 | 2020-02-27 | 一种病毒文件识别方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010123991.8A CN111368298B (zh) | 2020-02-27 | 2020-02-27 | 一种病毒文件识别方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111368298A true CN111368298A (zh) | 2020-07-03 |
CN111368298B CN111368298B (zh) | 2023-07-21 |
Family
ID=71208156
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010123991.8A Active CN111368298B (zh) | 2020-02-27 | 2020-02-27 | 一种病毒文件识别方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111368298B (zh) |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070240217A1 (en) * | 2006-04-06 | 2007-10-11 | George Tuvell | Malware Modeling Detection System And Method for Mobile Platforms |
US20090133125A1 (en) * | 2007-11-21 | 2009-05-21 | Yang Seo Choi | Method and apparatus for malware detection |
CN102708320A (zh) * | 2012-05-04 | 2012-10-03 | 奇智软件(北京)有限公司 | 一种病毒apk的识别方法及装置 |
CN102930206A (zh) * | 2011-08-09 | 2013-02-13 | 腾讯科技(深圳)有限公司 | 病毒文件的聚类划分处理方法和装置 |
CN103067364A (zh) * | 2012-12-21 | 2013-04-24 | 华为技术有限公司 | 病毒检测方法及设备 |
US20130104235A1 (en) * | 2006-12-12 | 2013-04-25 | Fortinet, Inc. | Detection of undesired computer files in archives |
CN104134039A (zh) * | 2014-07-24 | 2014-11-05 | 北京奇虎科技有限公司 | 病毒查杀方法、客户端、服务器以及病毒查杀系统 |
CN104318161A (zh) * | 2014-11-18 | 2015-01-28 | 北京奇虎科技有限公司 | 一种安卓样本的病毒检测方法及装置 |
CN104322010A (zh) * | 2012-03-07 | 2015-01-28 | 思杰系统有限公司 | 用于比较配置文件和生成校正命令的系统和方法 |
CN106709340A (zh) * | 2016-06-29 | 2017-05-24 | 腾讯科技(深圳)有限公司 | 病毒查杀方法及装置 |
CN108268778A (zh) * | 2018-02-26 | 2018-07-10 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置及存储介质 |
CN108363923A (zh) * | 2017-10-19 | 2018-08-03 | 北京安天网络安全技术有限公司 | 一种勒索者病毒防御方法、系统及设备 |
CN109144962A (zh) * | 2018-08-31 | 2019-01-04 | 北京诚志重科海图科技有限公司 | 一种数据存储方法、查询方法、存储装置及查询装置 |
CN110210219A (zh) * | 2018-05-30 | 2019-09-06 | 腾讯科技(深圳)有限公司 | 病毒文件的识别方法、装置、设备及存储介质 |
RU2708356C1 (ru) * | 2018-06-29 | 2019-12-05 | Акционерное общество "Лаборатория Касперского" | Система и способ двухэтапной классификации файлов |
-
2020
- 2020-02-27 CN CN202010123991.8A patent/CN111368298B/zh active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070240217A1 (en) * | 2006-04-06 | 2007-10-11 | George Tuvell | Malware Modeling Detection System And Method for Mobile Platforms |
US20130104235A1 (en) * | 2006-12-12 | 2013-04-25 | Fortinet, Inc. | Detection of undesired computer files in archives |
US20090133125A1 (en) * | 2007-11-21 | 2009-05-21 | Yang Seo Choi | Method and apparatus for malware detection |
CN102930206A (zh) * | 2011-08-09 | 2013-02-13 | 腾讯科技(深圳)有限公司 | 病毒文件的聚类划分处理方法和装置 |
CN104322010A (zh) * | 2012-03-07 | 2015-01-28 | 思杰系统有限公司 | 用于比较配置文件和生成校正命令的系统和方法 |
CN102708320A (zh) * | 2012-05-04 | 2012-10-03 | 奇智软件(北京)有限公司 | 一种病毒apk的识别方法及装置 |
CN103067364A (zh) * | 2012-12-21 | 2013-04-24 | 华为技术有限公司 | 病毒检测方法及设备 |
WO2014094441A1 (zh) * | 2012-12-21 | 2014-06-26 | 华为技术有限公司 | 病毒检测方法及设备 |
CN104134039A (zh) * | 2014-07-24 | 2014-11-05 | 北京奇虎科技有限公司 | 病毒查杀方法、客户端、服务器以及病毒查杀系统 |
CN104318161A (zh) * | 2014-11-18 | 2015-01-28 | 北京奇虎科技有限公司 | 一种安卓样本的病毒检测方法及装置 |
CN106709340A (zh) * | 2016-06-29 | 2017-05-24 | 腾讯科技(深圳)有限公司 | 病毒查杀方法及装置 |
CN108363923A (zh) * | 2017-10-19 | 2018-08-03 | 北京安天网络安全技术有限公司 | 一种勒索者病毒防御方法、系统及设备 |
CN108268778A (zh) * | 2018-02-26 | 2018-07-10 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置及存储介质 |
CN110210219A (zh) * | 2018-05-30 | 2019-09-06 | 腾讯科技(深圳)有限公司 | 病毒文件的识别方法、装置、设备及存储介质 |
RU2708356C1 (ru) * | 2018-06-29 | 2019-12-05 | Акционерное общество "Лаборатория Касперского" | Система и способ двухэтапной классификации файлов |
CN109144962A (zh) * | 2018-08-31 | 2019-01-04 | 北京诚志重科海图科技有限公司 | 一种数据存储方法、查询方法、存储装置及查询装置 |
Non-Patent Citations (2)
Title |
---|
M. DHANAPRIYA; C. VASANTHANAYAKI: "Hardware based pattern matching technique for packet inspection of high speed network", 《2009 INTERNATIONAL CONFERENCE ON CONTROL, AUTOMATION, COMMUNICATION AND ENERGY CONSERVATION》 * |
苗强,赵琳,杜明: "变形病毒技术研究及反病毒策略设计", 《科技资讯》, no. 08, pages 107 * |
Also Published As
Publication number | Publication date |
---|---|
CN111368298B (zh) | 2023-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9654486B2 (en) | System and method for generating sets of antivirus records for detection of malware on user devices | |
CN112148305B (zh) | 一种应用检测方法、装置、计算机设备和可读存储介质 | |
CN111090807B (zh) | 一种基于知识图谱的用户识别方法及装置 | |
CN115562992A (zh) | 一种文件检测方法、装置、电子设备及存储介质 | |
CN111259282A (zh) | Url去重方法、装置、电子设备及计算机可读存储介质 | |
CN108804917B (zh) | 一种文件检测方法、装置、电子设备及存储介质 | |
CN114048136A (zh) | 测试类型确定方法、装置、服务器、介质及产品 | |
CN106507300A (zh) | 一种找回丢失终端的方法、装置及终端 | |
CN111030974A (zh) | 一种apt攻击事件检测方法、装置及存储介质 | |
CN113704569A (zh) | 信息的处理方法、装置及电子设备 | |
US20210336973A1 (en) | Method and system for detecting malicious or suspicious activity by baselining host behavior | |
CN111027065B (zh) | 一种勒索病毒识别方法、装置、电子设备及存储介质 | |
CN110309328B (zh) | 数据存储方法、装置、电子设备及存储介质 | |
CN111368298A (zh) | 一种病毒文件识别方法、装置、设备及存储介质 | |
CN110708355A (zh) | 一种文件上传的方法、系统、设备及可读存储介质 | |
US12001400B2 (en) | Method and apparatus for synchronizing file | |
CN109446030A (zh) | 一种行为监测方法以及装置 | |
CN112003819B (zh) | 识别爬虫的方法、装置、设备和计算机存储介质 | |
CN110801630A (zh) | 作弊程序确定方法、装置、设备和存储介质 | |
CN113409051B (zh) | 针对目标业务的风险识别方法及装置 | |
CN114268480B (zh) | 图片传输的监控方法及装置、存储介质、终端 | |
CN114138509B (zh) | 一种数据交互方法、装置及计算机可读存储介质 | |
US12013830B2 (en) | System and method using bloom filters to improve system reliability | |
EP3823326A1 (en) | System and method for detecting bluetooth security threat, and computer readable medium therefor | |
CN116781396A (zh) | 用于攻击行为检测的方法、装置、设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |