CN112347477A - 家族变种恶意文件挖掘方法和装置 - Google Patents
家族变种恶意文件挖掘方法和装置 Download PDFInfo
- Publication number
- CN112347477A CN112347477A CN201910725993.1A CN201910725993A CN112347477A CN 112347477 A CN112347477 A CN 112347477A CN 201910725993 A CN201910725993 A CN 201910725993A CN 112347477 A CN112347477 A CN 112347477A
- Authority
- CN
- China
- Prior art keywords
- file
- malicious file
- malicious
- hash value
- class
- 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.)
- Pending
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/14—Details of searching files based on file metadata
- G06F16/148—File search processing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Library & Information Science (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种家族变种恶意文件挖掘方法和装置,所述方法包括:获取用于挖掘家族变种恶意文件的第一恶意文件;提取第一恶意文件的文件特征;通过局部敏感哈希算法,将第一恶意文件的文件特征,转换为局部敏感哈希值;在预设的包括有第二恶意文件的恶意文件类中,索引出类中心哈希值与第一恶意文件的局部敏感哈希值相似的目标恶意文件类;在目标恶意文件类中的各个第二恶意文件中,搜索出第一恶意文件的家族变种恶意文件。本申请提供的方案可以提升了家族变种恶意文件的挖掘效率。
Description
技术领域
本申请涉及数据处理技术领域,特别是涉及一种家族变种恶意文件挖掘方法、装置、计算机可读存储介质和计算机设备。
背景技术
随着网络技术的发展,出现了各种木马、病毒、蠕虫程序等的危害计算机用户正常使用、谋取非法利益的恶意文件。这些恶意文件通常通过家族变种的方式存在。家族变种是在原始的恶意文件的基础上进行改造后得到的、具有相同或相似作用、目的的恶意文件,众多家族变种形成了恶意文件家族。恶意文件家族使得杀毒防护软件较难全面、彻底地查杀,延长了恶意文件的生命周期。因此,全面挖掘出家族变种恶意文件,是计算机安全防护中极为重要的一环。
目前对家族变种恶意文件的挖掘方式,主要是将各个恶意文件的文件名、代码段、变量命名等属性进行逐一对比,根据对比结果判断恶意文件是否属于家族变种。
然而,目前的家族变种恶意文件的挖掘方式,存在挖掘效率低下的问题。
发明内容
基于此,有必要针对挖掘效率低下的问题的技术问题,提供一种家族变种恶意文件挖掘方法、装置、计算机可读存储介质和计算机设备。
一种家族变种恶意文件挖掘方法,包括:
获取用于挖掘所述家族变种恶意文件的第一恶意文件;
提取所述第一恶意文件的文件特征;
通过局部敏感哈希算法,将所述第一恶意文件的文件特征,转换为反映所述文件特征中各个局部的特征内容的局部敏感哈希值;
在预设的包括有第二恶意文件的恶意文件类中,以所述恶意文件类的类中心哈希值作为索引,索引出类中心哈希值与所述第一恶意文件的局部敏感哈希值相似的目标恶意文件类;所述恶意文件类中的各个第二恶意文件的局部敏感哈希值均与所述恶意文件类的类中心哈希值相似;
在所述目标恶意文件类中的各个第二恶意文件中,搜索出所述第一恶意文件的家族变种恶意文件;所述家族变种恶意文件的局部敏感哈希值与所述第一恶意文件的局部敏感哈希值相似。
一种恶意文件聚类方法,包括:
获取恶意文件;
提取所述恶意文件的文件特征;
将所述恶意文件的文件特征,转换为局部敏感哈希值;
根据所述恶意文件的局部敏感哈希值,将所述恶意文件聚类,得到所述恶意文件类及对应的类中心哈希值;所述恶意文件类中的各个恶意文件的局部敏感哈希值均与恶意文件类的类中心哈希值相似;所述类中心哈希值用于在挖掘家族变种恶意文件时作为恶意文件类的索引。
一种家族变种恶意文件挖掘装置,包括:
文件获取模块,用于获取用于挖掘所述家族变种恶意文件的第一恶意文件;
特征提取模块,用于提取所述第一恶意文件的文件特征;
转换模块,用于通过局部敏感哈希算法,将所述第一恶意文件的文件特征,转换为反映所述文件特征中各个局部的特征内容的局部敏感哈希值;
索引模块,用于在预设的包括有第二恶意文件的恶意文件类中,以所述恶意文件类的类中心哈希值作为索引,索引出类中心哈希值与所述第一恶意文件的局部敏感哈希值相似的目标恶意文件类;所述恶意文件类中的各个第二恶意文件的局部敏感哈希值均与所述恶意文件类的类中心哈希值相似;
家族变种搜索模块,用于在所述目标恶意文件类中的各个第二恶意文件中,搜索出所述第一恶意文件的家族变种恶意文件;所述家族变种恶意文件的局部敏感哈希值与所述第一恶意文件的局部敏感哈希值相似。
一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如下步骤:
获取用于挖掘所述家族变种恶意文件的第一恶意文件;
提取所述第一恶意文件的文件特征;
通过局部敏感哈希算法,将所述第一恶意文件的文件特征,转换为反映所述文件特征中各个局部的特征内容的局部敏感哈希值;
在预设的包括有第二恶意文件的恶意文件类中,以所述恶意文件类的类中心哈希值作为索引,索引出类中心哈希值与所述第一恶意文件的局部敏感哈希值相似的目标恶意文件类;所述恶意文件类中的各个第二恶意文件的局部敏感哈希值均与所述恶意文件类的类中心哈希值相似;
在所述目标恶意文件类中的各个第二恶意文件中,搜索出所述第一恶意文件的家族变种恶意文件;所述家族变种恶意文件的局部敏感哈希值与所述第一恶意文件的局部敏感哈希值相似。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如下步骤:
获取用于挖掘所述家族变种恶意文件的第一恶意文件;
提取所述第一恶意文件的文件特征;
通过局部敏感哈希算法,将所述第一恶意文件的文件特征,转换为反映所述文件特征中各个局部的特征内容的局部敏感哈希值;
在预设的包括有第二恶意文件的恶意文件类中,以所述恶意文件类的类中心哈希值作为索引,索引出类中心哈希值与所述第一恶意文件的局部敏感哈希值相似的目标恶意文件类;所述恶意文件类中的各个第二恶意文件的局部敏感哈希值均与所述恶意文件类的类中心哈希值相似;
在所述目标恶意文件类中的各个第二恶意文件中,搜索出所述第一恶意文件的家族变种恶意文件;所述家族变种恶意文件的局部敏感哈希值与所述第一恶意文件的局部敏感哈希值相似。
上述家族变种恶意文件挖掘方法、装置、计算机可读存储介质和计算机设备,预设的恶意文件类所包括的各个第二恶意文件的局部敏感哈希值均与其类中心哈希值相似,在挖掘家族变种恶意文件时,将第一恶意文件的文件特征转换为局部敏感哈希值,将第一恶意文件的局部敏感哈希值与各个恶意文件类的类中心哈希值进行比较,从而,以恶意文件类的类中心哈希值作为索引,索引出类中心哈希值与第一恶意文件的局部敏感哈希值相似的目标恶意文件类。由于目标恶意文件类的类中心哈希值,与目标恶意文件类中各个第二恶意文件的局部敏感哈希值均相似,因此,在目标恶意文件类中,搜索出局部敏感哈希值与第一恶意文件的局部敏感哈希值相似的第二恶意文件的可能性较高,由于局部敏感哈希值可以敏感地反映内容的变化程度,恶意文件之间的局部敏感哈希值相似,表明恶意文件之间相似,也即是说,在目标恶意文件类中,搜索出与第一恶意文件相似的第二恶意文件的可能性较高。因此,通过上述的将文件特征转换为局部敏感哈希值,以及,以恶意文件类的类中心哈希值作为索引,避免了在与第一恶意文件相似的可能性较低的其他第二恶意文件中搜索,缩小了搜索范围,无须将所有第二恶意文件均与第一恶意文件进行逐一对比,从而,提升了家族变种恶意文件的挖掘效率。
而且,通过将文件特征转换为局部敏感哈希值,在搜索与第一恶意文件相似的第二恶意文件时,可以直接将第一恶意文件的局部敏感哈希值与第二恶意文件的局部敏感哈希值进行比较,由于局部敏感哈希值具有降维的特点,因此,可以高效地得到比较结果,节省了计算量,进一步提升了挖掘效率。
附图说明
图1为一个实施例的一种家族变种恶意文件挖掘方法的应用环境图;
图2为一个实施例的一种家族变种恶意文件挖掘方法的流程示意图;
图3为一个实施例的一种挖掘系统显示挖掘结果的界面示意图;
图4为一个实施例的一种恶意文件聚类方法的流程示意图;
图5为一个实施例的另一种恶意文件聚类方法的流程示意图;
图6为一个实施例的一种挖掘系统的结构框图;
图7为一个实施例的一种家族变种恶意文件的挖掘流程的流程示意图;
图8为一个实施例的一种提取文件静态特征步骤的流程示意图;
图9为一个实施例的一种分布式训练流程的流程示意图;
图10为一个实施例的一种家族变种恶意文件挖掘装置的结构框图;
图11为一个实施例的一种恶意文件聚类装置的结构框图;
图12为一个实施例中计算机设备的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
图1为一个实施例中一种家族变种恶意文件挖掘方法的应用环境图。参照图1,该家族变种恶意文件挖掘方法应用于计算机防护系统。该计算机防护系统包括服务器110和终端120。服务器110和终端120通过网络连接。
其中,服务器110可以用独立的服务器或者是多个服务器组成的服务器集群来实现。终端120具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑、笔记本电脑等中的至少一种。
如图2所示,在一个实施例中,提供了一种家族变种恶意文件挖掘方法。本实施例主要以该方法应用于上述图1中的服务器110来举例说明。参照图2,该家族变种恶意文件挖掘方法具体包括如下步骤:
S202,获取用于挖掘所述家族变种恶意文件的第一恶意文件。
其中,恶意文件可以为危害计算机正常运作的计算机程序。恶意文件具体可以是木马、病毒、蠕虫等的计算机程序。
其中,第一恶意文件可以用于挖掘其家族变种恶意文件的恶意文件。
一种具体实现中,终端120可以检测到恶意文件,并将恶意文件提交至服务器110,以由服务器110挖掘该恶意文件的家族变种恶意文件。
另一种具体实现中,负责进行杀毒软件研发的研发人员发现某个恶意文件后,可以将该恶意文件输入至服务器110,以由服务器110挖掘该恶意文件的家族变种恶意文件。
由此,服务器110可以通过各种具体的实现方式,得到第一恶意文件。
S204,提取第一恶意文件的文件特征。
其中,文件特征可以为根据恶意文件的文件属性、网络行为所得到的特征。文件特征可以具体包括文件静态特征和网络行为特征。文件静态特征可以为根据恶意文件的文件属性得到的特征,文件属性可以具体为恶意文件的文件大小、文件图标大小、文件字节数、导入表、导出表、PDB(Program Database File,程序数据库文件)、Mutex(互斥量)等的属性。网络行为特征可以为根据恶意文件的网络行为得到的特征。网络行为可以具体为恶意文件在运行时访问特定网络地址、网络域名的行为。
一种具体实现中,服务器110可以对第一恶意文件进行解析,解析出第一恶意文件的文件大小、文件图标大小、文件字节数、导入表、导出表、PDB、Mutex等的文件属性。然后,服务器110可以从该文件属性中提取出具体的属性内容作为第一恶意文件的文件特征。实际应用中,可以通过python(一种编程语言)的pefile(一种文件解析功能)模块,对恶意文件进行解析,以得到恶意文件的文件属性。
另一种具体实现中,服务器110在得到第一恶意文件的文件属性之后,可以根据文件属性的属性类型,采用不用的处理方式以得到文件特征。
更具体地,服务器110可以识别文件属性的属性类型,为数值型属性还是非数值型属性。当识别出文件属性属于数值型属性时,则可以直接提取文件属性中的数值,提取作为文件特征,或者,为了降低数值敏感度,先将文件属性中的数值整除,再将整除得到的数值,提取作为文件特征;当识别出文件属性属于非数值型属性时,则可以先将文件属性中的字符内容进行哈希化,再将哈希化后的哈希值,提取作为文件特征。
另一种具体实现中,除了根据恶意文件的文件属性得到文件特征之外,服务器110还可以将第一恶意文件置于文件运行沙箱中运行,第一恶意文件在文件运行沙箱中运行时,会对特定的domain(域名)、IP(Internet Protocol,互联网协议)地址进行网络访问,第一恶意文件的网络访问会被记录在沙箱日志中,服务器110通过沙箱日志得到特定的domain、IP,作为网络访问信息,服务器110可以将该网络访问信息,提取作为文件特征。
由此,服务器110可以通过各种具体的实现方式,得到第一恶意文件的文件特征。
实际应用中,本领域技术人员还可以通过其他方式得到第一恶意文件的文件特征,例如,服务器110根据第一恶意文件的文件属性得到的特征与第一恶意文件在文件运行沙箱中产生的网络访问信息共同组合成文件特征。
S206,通过局部敏感哈希算法,将第一恶意文件的文件特征,转换为反映文件特征中各个局部的特征内容的局部敏感哈希值。
其中,局部敏感哈希值可以为对数值、字符等内容通过局部敏感哈希算法(Locality Sensitive Hashing,LSH)进行计算后得到的、反映文件特征的变化程度的数值。
需要说明的是,相比起传统的哈希算法,通过局部敏感哈希算法产生的局部敏感哈希值,具有局部敏感的特性,即,局部敏感哈希值具有可以敏感地反映出内容的微小的、局部的变化的特征。
例如,对文本、网页的局部内容进行微小的改动,局部敏感哈希值的变化也会较小。反之,如果对文本、网页的局部内容进行较大的改动,局部敏感哈希值的变化也会较大。
由于局部敏感哈希值具有局部敏感的特性,因此通常用于比较文本、网页的内容之间相似程度,如果文本、网页的内容的局部敏感哈希值之间的相似度较小,表明文本、网页的内容之间的相似度较小,可能是重复的内容。从而,通过计算局部敏感哈希值的方式,可以实现内容的查重。而传统的哈希算法中,虽然可以针对内容生成一个唯一的哈希值,但该哈希值无法反映出内容的变化,即使对内容进行微小的改动,所生成的哈希值可能会有较大的变化。因此,无法通过传统的哈希算法实现内容的查重。
实际应用中,局部敏感哈希算法可以包括多种具体的算法,例如,minhash算法(一种具体的局部敏感哈希算法)、simhash算法(一种具体的局部敏感哈希算法)等,相应地,局部敏感哈希值可以具体为minhash值、simhash值等。
具体实现中,服务器110可以通过各种具体的局部敏感哈希算法,计算第一恶意文件的文件特征的局部敏感哈希值,从而将文件特征转换为局部敏感哈simhash希值。
例如,将多个文件特征组织成一个文档,通过simhash算法将文档转换为simhash值,具体地,首先计算各个文件特征的hash值,将各个文件特征的hash值与各自预设的权重进行加权,将加权后的数值进行合并,最后对合并后的数值进行降维,将降维后得到的数值,即为simhash值,将该simhash值作为上述的局部敏感哈希值。
当然,上述示例仅用于说明可以通过各种具体的局部敏感哈希算法计算文件特征的局部敏感哈希值。实际应用中,本领域技术人员可以还通过其他局部敏感哈希算法计算局部敏感哈希值,例如,还可以通过minhash算法计算文件特征的minhash值,作为上述的局部敏感哈希值。
由此,服务器110可以通过各种的具体实现方式,将第一恶意文件的文件特征,转换为可以反映第一恶意文件的内容变化的程度的局部敏感哈希值,从而,可以根据局部敏感哈希值的相似程度,确定恶意文件之间的相似程度。
S208,在预设的包括有第二恶意文件的恶意文件类中,以恶意文件类的类中心哈希值作为索引,索引出类中心哈希值与第一恶意文件的局部敏感哈希值相似的目标恶意文件类;恶意文件类中的各个第二恶意文件的局部敏感哈希值均与恶意文件类的类中心哈希值相似;所述类中心哈希值根据所述恶意文件类中的各个第二恶意文件的局部敏感哈希值得到。
其中,第二恶意文件可以为用于判断是否与第一恶意文件同属一个恶意文件家族的恶意文件。
其中,恶意文件类可以为根据第二恶意文件的局部敏感哈希值对第二恶意文件进行聚类得到的恶意文件集合。
其中,类中心哈希值可以为根据恶意文件类中各个第二恶意文件的局部敏感哈希值得到的、与恶意文件类中各个第二恶意文件的局部敏感哈希值之间均相似的数值。
其中,目标恶意文件类可以为类中心哈希值与第一恶意文件的局部敏感哈希值相似的恶意文件类。
需要说明的是,服务器110可以在挖掘第一恶意文件的家族变种恶意文件之前,根据第二恶意文件的局部敏感哈希值,对第二恶意文件进行聚类,形成多个恶意文件类,并确定每个恶意文件类的类中心哈希值。
更具体地,服务器110可以将已经发现的历史恶意文件,作为第二恶意文件,提取第二恶意文件的文件特征,将第二恶意文件的文件特征,转换为局部敏感哈希值。由于提取第二恶意文件的文件特征、将其文件特征转换为局部敏感哈希值的过程,与提取第一恶意文件的文件特征、将其文件特征转换为局部敏感哈希值的过程相似,在此不再赘述。根据第二恶意文件的局部敏感哈希值,对多个第二恶意文件进行聚类,得到了多个恶意文件类,每个恶意文件类包括有多个第二恶意文件,恶意文件类的类中心哈希值可以根据其所包括的第二恶意文件的局部敏感哈希值计算得到,计算得到的类中心哈希值,与恶意文件类所包括的第二恶意文件的局部敏感哈希值相似。由此,通过上述方式,服务器110可以得到了多个恶意文件类,作为预设的恶意文件类。
一种具体实现中,服务器110可以计算第一恶意文件的局部敏感哈希值与各个恶意文件类的类中心哈希值之间的汉明距离,按照计算得到的汉明距离,对各个恶意文件类进行升序排序,筛选出排序靠前的一个或多个恶意文件类,得到类中心哈希值与第一恶意文件的局部敏感哈希值相似的恶意文件类,作为目标恶意文件类。
另一种具体实现中,还可以计算第一恶意文件的局部敏感哈希值与各个恶意文件类的类中心哈希值之间的汉明距离,当某个恶意文件类所对应的汉明距离小于预设的距离阈值,表明该恶意文件类的类中心哈希值与第一恶意文件的局部敏感哈希值相似,将该恶意文件类作为目标恶意文件类。
由此,服务器110可以通过各种的具体实现方式,以恶意文件类的类中心哈希值作为索引,索引出一个或多个的目标恶意文件类,在从大量的第二恶意文件中搜索家族变种恶意文件时,只需在目标恶意文件类中的第二恶意文件中进行搜索,缩小了搜索范围。
当然,本领域技术人员还可以通过计算第一恶意文件的局部敏感哈希值与各个恶意文件类的类中心哈希值之间的其他距离,以根据该距离判断恶意文件类的类中心哈希值与第一恶意文件的局部敏感哈希值相似,从而在多个预设的恶意文件类中,以恶意文件类的类中心哈希值作为索引,索引出目标恶意文件类。例如,还可以计算第一恶意文件的局部敏感哈希值与各个恶意文件类的类中心哈希值之间的欧氏距离。
S210,在目标恶意文件类中的各个第二恶意文件中,搜索出第一恶意文件的家族变种恶意文件;家族变种恶意文件的局部敏感哈希值与第一恶意文件的局部敏感哈希值相似。
其中,家族变种恶意文件可以为第二恶意文件中的、为第一恶意文件的家族变种的文件。
一种具体实现中,在确定目标恶意文件类之后,服务器110可以计算第一恶意文件的局部敏感哈希值与目标恶意文件类中的各个第二恶意文件的局部敏感哈希值之间的汉明距离,当某个第二恶意文件所对应的汉明距离小于预设的距离阈值,则可以将该第二恶意文件作为第一恶意文件的家族变种恶意文件。
需要说明的是,当某个第二恶意文件所对应的汉明距离小于预设的距离阈值,表明该第二恶意文件的局部敏感哈希值与第一恶意文件的局部敏感哈希值相似,即,该第二恶意文件与第一恶意文件相似,该第二恶意文件有较大的可能是第一恶意文件的家族变种。
另一种具体实现中,在确定目标恶意文件类之后,服务器110可以计算第一恶意文件的局部敏感哈希值与目标恶意文件类中的各个第二恶意文件的局部敏感哈希值之间的汉明距离,按照汉明距离,对各个第二恶意文件进行升序排序,筛选出排序靠前的一个或多个第二恶意文件,得到局部敏感哈希值与第一恶意文件的局部敏感哈希值相似的第二恶意文件,作为家族变种恶意文件。
由此,服务器110可以通过各种的具体实现方式,在目标恶意文件类中,搜索出局部敏感哈希值与第一恶意文件的局部敏感哈希值相似的第二恶意文件,作为第一恶意文件的家族变种恶意文件。从而,只须在目标恶意文件类的恶意文件中进行搜索,而无须在所有第二恶意文件中进行搜索,缩小了搜索范围,避免了将所有恶意文件的属性进行逐一比对、根据比对结果判断家族变种恶意文件所导致的挖掘效率较低的问题,提升了家族变种恶意文件的挖掘效率。
在得到第一恶意文件的家族变种恶意文件之后,得到了由第一恶意文件及其家族变种恶意文件组成的恶意文件家族,负责进行杀毒软件研发的研发人员可以针对恶意文件家族中的恶意文件的共性和特点,设计杀毒规则,将杀毒规则发送给终端120,终端120的杀毒防护软件则可以根据该杀毒规则查杀恶意文件,从而全面、彻底地查杀恶意文件。
上述的家族变种恶意文件挖掘方法,预设的恶意文件类所包括的各个第二恶意文件的局部敏感哈希值均与其类中心哈希值相似,在挖掘家族变种恶意文件时,将第一恶意文件的文件特征转换为局部敏感哈希值,将第一恶意文件的局部敏感哈希值与各个恶意文件类的类中心哈希值进行比较,从而,以恶意文件类的类中心哈希值作为索引,索引出类中心哈希值与第一恶意文件的局部敏感哈希值相似的目标恶意文件类。由于目标恶意文件类的类中心哈希值,与目标恶意文件类中各个第二恶意文件的局部敏感哈希值均相似,因此,在目标恶意文件类中,搜索出局部敏感哈希值与第一恶意文件的局部敏感哈希值相似的第二恶意文件的可能性较高,由于局部敏感哈希值可以敏感地反映内容的变化程度,恶意文件之间的局部敏感哈希值相似,表明恶意文件之间相似,也即是说,在目标恶意文件类中,搜索出与第一恶意文件相似的第二恶意文件的可能性较高。因此,通过上述的将文件特征转换为局部敏感哈希值,以及,以恶意文件类的类中心哈希值作为索引,避免了在与第一恶意文件相似的可能性较低的其他第二恶意文件中搜索,缩小了搜索范围,无须将所有第二恶意文件均与第一恶意文件进行逐一对比,从而,提升了家族变种恶意文件的挖掘效率。
而且,通过将文件特征转换为局部敏感哈希值,在搜索与第一恶意文件相似的第二恶意文件时,可以直接将第一恶意文件的局部敏感哈希值与第二恶意文件的局部敏感哈希值进行比较,由于局部敏感哈希值具有降维的特点,因此,可以高效地得到比较结果,节省了计算量,进一步提升了挖掘效率。
在一个实施例中,文件特征可以包括文件静态特征,步骤S202可以具体包括:
解析第一恶意文件,得到文件属性;识别文件属性中的数值型属性,和/或,识别文件属性中的非数值型属性;根据数值型属性中的数值,得到数值特征,和/或,对非数值型属性进行哈希化,得到哈希化特征;将数值特征和/或哈希化特征,作为文件静态特征。
其中,文件属性可以为文件的属性的特征。例如,文件大小、文件图标大小、文件字节数、导入表、导出表、PDB、Mutex等的属性。
其中,文件静态特征可以为反映文件的、不会在文件运行过程中发生变化的特征。例如,根据文件大小、文件图标大小、文件字节数、导入表、导出表、PDB、Mutex等的属性得到的特征。
其中,数值型属性可以为属性内容为数值的文件属性。例如,文件大小的文件属性为3Mb,文件大小为数值型属性。
其中,非数值型属性可以为属性内容为非数值的文件属性。
其中,哈希化特征可以为经过哈希计算后得到的字符串。
一种具体实现中,服务器110可以根据文件属性的属性内容,判断文件属性是否为数值型属性,若是,则提取数值型属性中的数值,得到数值特征,将该数值特征作为上述的文件静态特征。
另一种具体实现中,服务器110可以根据文件属性的属性内容,判断文件属性是否为数值型属性,若否,则判定文件属性为非数值型属性,并对非数值型属性的属性内容进行哈希计算,得到哈希化特征,将该哈希化特征作为文件静态特征。
另一种具体实现中,服务器110可以根据文件属性的属性内容,判断文件属性是否为数值型属性,若是,则提取数值型属性中的数值,得到数值特征,若否,则判定文件属性为非数值型属性,并对非数值型属性的属性内容进行哈希计算,得到哈希化特征。对多个文件属性重复上述的处理,得到多个的数值特征和多个的哈希化特征,作为文件静态特征。
上述家族变种恶意文件挖掘方法中,通过解析出第一恶意文件的文件属性,当文件属性为数值型属性时,直接提取数值得到数值特征,无须进行哈希计算,节省了计算量;当文件属性为非数值型属性时,对非数值型属性进行哈希化得到哈希化特征,以将非数值型的文件属性转换为数值型的哈希化特征,统一了特征的表现方式,从而在后续处理中,可以将具有统一表现方式的特征转换为局部敏感哈希值。
在一个实施例中,根据数值型属性中的数值,得到数值特征,可以具体包括:将数值型属性中的数值整除,将整除后的数值,作为数值特征。从而,降低了数值的敏感度。
例如,文件大小为2048Mb,2048将整除10,得到204,作为数值特征。如果一个恶意文件的文件大小为2048Mb,另一个恶意文件的文件大小为2049Mb,整除后的数值特征均为204,实质上两个恶意文件的差异很小,因此,通过整除的手段,使得没有因为文件的微小变动导致最后得到的局部敏感哈希值发生改变,降低了对数值的敏感度。
在一个实施例中,所述文件特征包括网络行为特征,步骤S204可以具体包括:
将第一恶意文件置于文件运行沙箱中运行;获取第一恶意文件在文件运行沙箱中运行时产生的网络访问信息;根据网络访问信息,得到网络行为特征。
其中,文件运行沙箱可以为服务器110设置的、用于获取网络访问信息的虚拟运行环境,在虚拟运行环境下运行的文件,所产生的运行结果不会对服务器的操作系统产生实际影响,保证服务器不受到恶意文件的破坏。
其中,网络访问信息可以为恶意文件运行过程中进行网络访问所产生的信息。例如,恶意文件所访问的Domain或IP。
具体实现中,服务器110可以生成一个文件运行沙箱,将第一恶意文件置于文件运行沙箱中,配置运行条件,以使第一恶意文件运行。第一恶意文件运行过程中会发起网络访问行为,例如,访问某个Domain或IP。文件运行沙箱会记录第一恶意文件的网络访问行为,形成沙箱日志。服务器110从沙箱日志中,得到第一恶意文件的网络访问信息,将该网络访问信息作为网络行为特征。
实际应用中,可以在网络访问信息中,将高热度的Domain、IP过滤,例如,将www.qq.com这些访问频率较高的域名滤除。此外。还可以过滤内网IP。从而,可以减少公共信息对挖掘结果的干扰,从而可以更准确面地挖掘出第一恶意文件的家族变种恶意文件。
上述家族变种恶意文件挖掘方法中,通过将第一恶意文件置于文件运行沙箱中,将第一恶意文件在文件运行沙箱中运行时所产生的网络访问信息,作为网络行为特征,在保证服务器的运行安全的情况下,获取到第一恶意文件的更全面的文件特征,从而可以更准确、更全面地挖掘出第一恶意文件的家族变种恶意文件。
在一个实施例中,步骤S206,可以具体包括:
计算文件特征的哈希值;采用文件特征的权重,对文件特征的哈希值进行加权,得到特征加权值;对特征加权值进行合并,得到合并特征加权值;对合并特征加权值进行降维,得到局部敏感哈希值。
具体实现中,服务器110可以根据文件特征的重要程度,针对不同的文件特征,设定相应的权重。采用哈希算法,计算出文件特征的哈希值,采用文件特征对应的权重,对文件特征的哈希值进行加权,得到特征加权值。
例如,文件特征为www.domain.com/hash,计算得到哈希值为[1,-1,-1],该文件特征的权重为4,进行加权后,得到的特征加权值W1为[4,-4,-4]。
然后,服务器110将多个文件特征的特征加权值进行合并,得到合并特征加权值。
例如,特征加权值W1为[4,-4,-4],特征加权值W2为[5,-5,5],将W1和W2合并,合并特征加权值为[9,-9,1]。
最后,对合并特征加权值进行降维,得到局部敏感哈希值。
例如,将[9,-9,1]降维,大于0的取1,小于0的取0,得到[1,0,1],序列101即为局部敏感哈希值。
上述的算法过程也称为simhash算法,得到的局部敏感哈希值也称为simhash值。
实际应用中,可以将多个的文件特征,先转换为128位的哈希值,最后可以得到128位的simhash值。
上述的家族变种恶意文件挖掘方法,通过首先计算文件特征的哈希值,再根据文件特征的权重对哈希值进行加权,将加权后的特征加权值进行合并,最后对合并得到的合并特征加权值进行降维,得到局部敏感哈希值,由此,将大量未结构化的特征转换为结构化的、降维的局部敏感哈希值,在后续处理中,可以通过结构化的、降维的局部敏感哈希值,比较两个恶意文件之间的相似度,而无须通过复杂的算法对高维特征向量进行相似度计算,节省了计算量,提升了挖掘效率。
在一个实施例中,步骤S208,可以具体包括:
计算第一恶意文件的局部敏感哈希值与恶意文件类的类中心哈希值之间的第一哈希值距离;根据第一哈希值距离,确定类中心哈希值与第一恶意文件的局部敏感哈希值相似的恶意文件类,作为目标恶意文件类。
其中,哈希值距离可以为反映哈希值之间的相似程度的数值。哈希值距离较大,表明哈希值之间的相似程度较低,哈希值距离较小,表明哈希值之间的相似程度较高。
具体实现中,服务器110可以计算第一恶意文件的局部敏感哈希值与恶意文件类的类中心哈希值之间的哈希值距离。
为了区分说明,该哈希值距离命名为第一哈希值距离。
由于哈希值距离越小,表明局部敏感哈希值与类中心哈希值之间越相似,因此,确定第一哈希值距离之后,服务器110可以将第一哈希值距离小于预设的距离阈值的恶意文件类,作为目标恶意文件类,也可以按照第一哈希值距离对多个恶意文件类进行升序排序,将排序靠前的若干个恶意文件类,作为目标恶意文件类。
实际应用中,局部敏感哈希值为simhash值时,哈希值距离可以为汉明距离。当然,本领域技术人员可以根据不同的局部敏感哈希值,采用相应的哈希值距离,以反映局部敏感哈希值之间的相似程度。
在一个实施例中,第一哈希值距离为第一汉明距离,第一恶意文件的局部敏感哈希值与恶意文件类的类中心哈希值均具有M1个字符位置;计算第一恶意文件的局部敏感哈希值与恶意文件类的类中心哈希值之间的第一哈希值距离,可以具体包括:
在M1个字符位置中选取目标字符位置;在第一恶意文件的局部敏感哈希值中,选取处于目标字符位置上的哈希值字符,作为第一哈希值字符;在恶意文件类的类中心哈希值中,选取处于目标字符位置上的哈希值字符,作为第二哈希值字符;将第一哈希值字符与所述第二哈希值字符进行比较;当第一哈希值字符与第二哈希值字符存在差异,确定目标字符位置为差异字符位置,并返回至在M1个字符位置中选取目标字符位置的步骤,直至选取N1个目标字符位置;其中,M1≥N1;统计差异字符位置的数量,作为第一汉明距离。
具体实现中,在将第一恶意文件、第二恶意文件等恶意文件的文件特征转换为局部敏感哈希值时,可以设定局部敏感哈希值的字节数为M1,例如,设定局部敏感哈希值的字节数M1为128bit。
由此,所得到恶意文件的局部敏感哈希值,可以具有M1个字符位置。例如,局部敏感哈希值的字节数为128bit,即具有128个字符位置。
由于恶意文件类的类中心哈希值是根据恶意文件的局部敏感哈希值得到,因此,恶意文件类的类中心哈希值,也具有M1个字符位置。
服务器110可以在M1个字符位置中,按序选取至少一个目标字符位置,在第一恶意文件的局部敏感哈希值中,选取处于目标字符位置上的哈希值字符,作为第一哈希值字符,在恶意文件类的类中心哈希值中,选取处于目标字符位置上的哈希值字符,作为第二哈希值字符。
服务器110可以将第一哈希值字符与所述第二哈希值字符进行比较,当第一哈希值字符与第二哈希值字符不存在差异,则返回至在M1个字符位置中选取目标字符位置的步骤;当第一哈希值字符与第二哈希值字符存在差异,确定目标字符位置为差异字符位置,并返回至在M1个字符位置中选取目标字符位置的步骤。重复上述过程,直至选取N1个目标字符位置。实际应用中,可以设定M1=N1,即遍历了局部敏感哈希值中的全部字符位置。
最后,服务器110可以统计差异字符位置的数量,该数量即为第一汉明距离。
例如,对于128bit的simhash值,有64个字符位置上的哈希值字符有差异,汉明距离即为64。
上述的家族变种恶意文件挖掘方法中,通过对第一恶意文件的局部敏感哈希值与恶意文件类的类中心哈希值在相同字符位置中的哈希值字符进行比较,统计存在字符差异的字符位置的数量得到汉明距离,从而可以通过较少的计算量得到与第一恶意文件的局部敏感哈希值相似的类中心哈希值之间,在索引目标恶意文件类的过程中节省了计算量,提升了家族变种恶意文件的挖掘效率。
在一个实施例中,恶意文件类具有M2个,根据第一哈希值距离,确定类中心哈希值与第一恶意文件的局部敏感哈希值相似的恶意文件类,作为目标恶意文件类,可以具体包括:
按照恶意文件类的第一哈希值距离,对M2个恶意文件类进行升序排序,将排序前N2个恶意文件类,作为所述目标恶意文件类;其中,M2>N2≥1。
具体实现中,可以按照恶意文件类的第一哈希值距离的大小,对M2个恶意文件类进行升序排序,将排序前N2个恶意文件类,作为目标恶意文件类,即,将第一哈希值距离较小的N2个恶意文件类作为目标恶意文件类。第一哈希值距离越小,表明恶意文件类的类中心哈希值与第一恶意文件的局部敏感哈希值越相似。
上述的家族变种恶意文件挖掘方法中,通过按照恶意文件类的第一哈希值距离,对M2个恶意文件类进行升序排序,选取排序前N2个恶意文件类作为目标恶意文件类,从而可以快速地确定类中心哈希值与第一恶意文件的局部敏感哈希值越相似的目标恶意文件类,而无须进行大量的复杂的计算,通过排序的方式索引出目标恶意文件类,提升了家族变种恶意文件的挖掘效率。
在一个实施例中,目标恶意文件类包括M3个第二恶意文件,步骤S210,可以具体包括:
计算第一恶意文件的局部敏感哈希值与M3个第二恶意文件的局部敏感哈希值之间的第三哈希值距离;
在M3个第二恶意文件中,筛选出第三哈希值距离小于预设的第三距离阈值的N3个第二恶意文件,作为家族变种恶意文件;其中,M3≥N3≥0。
具体实现中,服务器110可以分别计算第一恶意文件与M3个第二恶意文件各自的局部敏感哈希值之间的哈希值距离。
为了区分说明,该哈希值距离命名为第三哈希值距离。实际应用中,局部敏感哈希值为simhash值时,哈希值距离可以为汉明距离。相应地,第一恶意文件的局部敏感哈希值与M3个第二恶意文件的局部敏感哈希值之间的第三哈希值距离,即为第三汉明距离。由于计算第三汉明距离的过程,与计算第一汉明距离的过程相似,而计算第一汉明距离的过程,在上述实施例中已有详细说明,计算第三汉明距离的过程,在此不再赘述。
然后,将M3个第二恶意文件对应的第三哈希值距离,分别与预设的第三距离阈值进行比较,当某个第二恶意文件的第三哈希值距离小于预设的第三距离阈值,则确定该第二恶意文件与第一恶意文件相似,为第一恶意文件的家族变种恶意文件。由此,可以得到N3个第二恶意文件,作为第一恶意文件的家族变种恶意文件。
上述家族变种恶意文件挖掘方法中,通过设定的阈值的方式,在目标恶意文件类的多个第二恶意文件中筛选出与第一恶意文件相似的第二恶意文件,作为第一恶意文件的家族变种恶意文件,从而更准确地挖掘出家族变种恶意文件,提升了挖掘准确性。
图3为一个实施例的一种挖掘系统显示挖掘结果的界面示意图。如图所示,针对某个恶意文件,可以挖掘出若干个家族变种恶意文件,挖掘系统可以显示挖掘结果,挖掘结果的显示界面中,可以包含有各个家族变种恶意文件的MDS、DNA分数(即simhash值之间的汉明距离)、文件名和病毒名。
图4为一个实施例的一种恶意文件聚类方法的流程示意图,在一个实施例中,在步骤S208之前,可以还包括以下步骤:
S402,提取第二恶意文件的文件特征。
S404,将第二恶意文件的文件特征,转换为局部敏感哈希值。
需要说明的是,上述实施例以第一恶意文件为例,说明了提取文件特征、将文件特征转换为局部敏感哈希值的过程。实际应用中,上述的提取文件特征、将文件特征转换为局部敏感哈希值的过程,同样适用于第二恶意文件。即,提取第二恶意文件的文件特征、将第二恶意文件的文件特征转换为局部敏感哈希值的过程,与提取第一恶意文件的文件特征、将第一恶意文件的文件特征转换为局部敏感哈希值的过程,可以是相同的。
更具体的实现中,服务器110可以解析第二恶意文件,得到第二恶意文件的文件属性;识别第二恶意文件的文件属性中的数值型属性,和/或,识别第二恶意文件的文件属性中的非数值型属性;根据第二恶意文件的数值型属性中的数值,得到数值特征,和/或,对第二恶意文件的非数值型属性进行哈希化,得到哈希化特征;将数值特征和/或哈希化特征,作为第二恶意文件的文件静态特征。服务器110还可以将第二恶意文件置于文件运行沙箱中运行;获取第二恶意文件在文件运行沙箱中运行时产生的网络访问信息;根据网络访问信息,得到网络行为特征。服务器110还可以计算第二恶意文件的文件特征的哈希值;采用文件特征的权重,对第二恶意文件的文件特征的哈希值进行加权,得到特征加权值;对特征加权值进行合并,得到合并特征加权值;对合并特征加权值进行降维,得到第二恶意文件的局部敏感哈希值。
S406,根据第二恶意文件的局部敏感哈希值,对第二恶意文件进行聚类,得到恶意文件类和类中心哈希值。
具体实现中,服务器110可以根据第二恶意文件的局部敏感哈希值,通过各种聚类算法,对多个第二恶意文件进行聚类,形成多个恶意文件类及其对应的类中心哈希值。更具体地,可以通过K-means聚类算法,首先设定在多个第二恶意文件的局部敏感哈希值中,选取K个第二恶意文件,作为K个初始的类中心,将多个第二恶意文件与该初始的类中心进行局部敏感哈希值的比较,某个第二恶意文件的局部敏感哈希值与类中心的局部敏感哈希值相似的,则将该第二恶意文件归类至该类中心,并根据归类的第二恶意文件的局部敏感哈希值与类中心的局部敏感哈希值更新类中心,基于更新后的类中心,重复进行归类,直至将多个第二恶意文件分别聚类至K个恶意文件类。
在一个实施中,根据第二恶意文件的局部敏感哈希值,对第二恶意文件进行聚类,得到恶意文件类和类中心哈希值,具体包括:
在第二恶意文件中,选取出初始类中心文件;计算第二恶意文件与初始类中心文件各自的局部敏感哈希值之间的第二哈希值距离;将第二哈希值距离小于预设的第二距离阈值的第二恶意文件,作为初始类中心文件的聚类文件;计算聚类文件的局部敏感哈希值与初始类中心文件的局部敏感哈希值的聚类平均值;当聚类平均值收敛,将初始类中心文件和聚类文件聚合为恶意文件类,并将聚类平均值作为恶意文件类的类中心哈希值。
具体实现中,服务器110可以在多个第二恶意文件中,选取出K个第二恶意文件,作为初始类中心文件。选取的方式可以是随机选取,也可以根据第二恶意文件的局部敏感哈希值选取。根据第二恶意文件的局部敏感哈希值选取的方式中,可以计算第二恶意文件的局部敏感哈希值,将局部敏感哈希值之间的哈希值距离较大的第二恶意文件,作为初始类中心文件。
选取初始类中心文件之后,计算多个第二恶意文件与初始类中心文件各自的局部敏感哈希值之间的哈希值距离。
为了区分说明,该哈希值距离命名为第二哈希值距离。实际应用中,局部敏感哈希值为simhash值时,哈希值距离可以为汉明距离。相应地,第二恶意文件的局部敏感哈希值与初始类中心文件的局部敏感哈希值之间的第二哈希值距离,即为第二汉明距离。由于计算第二汉明距离的过程,与计算第一汉明距离的过程相似,而计算第一汉明距离的过程,在上述实施例中已有详细说明,计算第二汉明距离的过程,在此不再赘述。
当某个第二恶意文件与初始类中心文件的局部敏感哈希值之间的第二哈希值距离,小于预设的第二距离阈值,将该第二恶意文件,作为初始类中心文件的聚类文件。然后,计算聚类文件的局部敏感哈希值与初始类中心文件的局部敏感哈希值的聚类平均值。
得到聚类平均值之后,服务器110判断聚类平均值是否收敛,即,判断聚类平均值是否与之前得到聚类平均值是否发生较大的变化。如未收敛,则采用计算多个第二恶意文件的局部敏感哈希值与该聚类平均值之间的第二哈希值距离,将第二哈希值距离小于第二距离阈值的第二恶意文件,形成新的聚类文件,根据新的聚类文件,重新计算聚类平均值,经过多次迭代计算,直至聚类平均值收敛。
当聚类平均值收敛,将初始类中心文件和聚类文件聚合为恶意文件类,并将聚类平均值作为恶意文件类的类中心哈希值。
上述家族变种恶意文件挖掘方法中,通过迭代计算的方式,根据第二恶意文件的局部敏感哈希值之间的哈希值距离,对第二恶意文件进行聚类,得到多个恶意文件类及其对应的类中心哈希值,从而可以准确地将相似的第二恶意文件聚类,在挖掘家族变种恶意文件时,可以更准确地挖掘出与第一恶意文件相似的第二恶意文件。
如图5所示,在一个实施例中,提供了一种恶意文件聚类方法。本实施例主要以该方法应用于上述图1中的服务器110来举例说明。参照图5,该恶意文件聚类方法具体包括如下步骤:
S502,获取恶意文件;
S504,提取恶意文件的文件特征;
S506,将恶意文件的文件特征,转换为局部敏感哈希值;
S508,根据恶意文件的局部敏感哈希值,将恶意文件聚类,得到恶意文件类及对应的类中心哈希值;恶意文件类中的各个恶意文件的局部敏感哈希值均与恶意文件类的类中心哈希值相似;类中心哈希值用于在挖掘家族变种恶意文件时作为恶意文件类的索引。
由于上述各个步骤的详细实现过程,在上述实施例中已有详细说明,在此不再赘述。
上述的家族变种恶意文件挖掘方法,通过将恶意文件的文件特征转换为局部敏感哈希值,并根据恶意文件的局部敏感哈希值,将恶意文件进行聚类,得到恶意文件类及其对应的类中心哈希值,恶意文件类所包括的第二恶意文件的局部敏感哈希值均与其类中心哈希值相似,在挖掘家族变种恶意文件时,以恶意文件类的类中心哈希值作为索引,索引出类中心哈希值与特定恶意文件的局部敏感哈希值相似的恶意文件类。由于索引出的恶意文件类的类中心哈希值,与其包括的各个第二恶意文件的局部敏感哈希值均相似,因此,在恶意文件类中,搜索出局部敏感哈希值与特定恶意文件的局部敏感哈希值相似的恶意文件的可能性较高,由于局部敏感哈希值可以敏感地反映内容的变化程度,恶意文件之间的局部敏感哈希值相似,表明恶意文件之间相似,也即是说,在索引出的恶意文件类中,搜索出与特定恶意文件相似的恶意文件的可能性较高。因此,通过将恶意文件进行聚类为恶意文件类、得到各个恶意文件类的类中心哈希值、以类中心哈希值作为索引的方式,在挖掘家族变种恶意文件时,无须将所有恶意文件进行逐一对比,从而,提升了家族变种恶意文件的挖掘效率。
为了便于本领域技术人员深入理解本申请,以下将结合具体示例进行说明。
图6为一个实施例的一种挖掘系统的结构框图。如图6所示,该挖掘系统600可以包括静态特征提取模块602、网络行为特征提取模块604、simhash转换模块606、训练引擎模块608、搜索引擎模块610和家族变种获取模块612。
其中,静态特征提取模块602,主要用于解析恶意文件,解析出文件大小、文件图标大小、文件字节数、导入表、导出表、PDB、Mutex等的文件属性,根据文件属性得到文件静态特征。
其中,网络行为特征提取模块604,主要用于提取恶意文件在文件运行沙箱中所产生的网络访问信息作为网络行为特征,如恶意文件访问的domain和IP。
其中,simhash转换模块606,主要用于将文件静态特征和网络行为特征,以不同的权重组织成一个文档,然后利用simhash算法,将该文档转换为128bit的数字序列,作为simhash值。
其中,训练引擎模块608,主要用于通过训练引擎训练索引模型。训练过程中,根据恶意文件的simhash值,将相似的恶意文件进行聚类,得到多个恶意文件类及其作为索引的类中心哈希值,形成索引模型。此外,当恶意文件更新,或者恶意文件的simhash值更新时,通过训练引擎模块608更新索引模型。
其中,搜索引擎模块610,主要用于在挖掘家族变种恶意文件时,通过索引模型索引出类中心哈希值与特定恶意文件的simhash值相似的恶意文件类。
其中,家族变种获取模块612,主要用于在某个恶意文件类中搜索出simhash值之间的汉明距离小于一定阈值的恶意文件,作为家族变种恶意文件。
图7为一个实施例的一个具体的家族变种恶意文件的挖掘流程的流程示意图。如图所示,家族变种恶意文件的挖掘流程可以包括以下步骤:
S702,将大量的恶意文件,输入至挖掘系统600;
S704,挖掘系统600中的静态特征提取模块602,调用python的pefile模块,解析各个恶意文件,解析出文件大小、文件图标大小、文件字节数、导入表、导出表、PDB、Mutex等的文件属性;
S706,挖掘系统600中的静态特征提取模块602,判断文件属性是否为数值型属性;若是,则执行S708;若否,则执行S710;
S708,提取文件属性中的数值,得到数值特征;
S710,对文件属性的属性内容进行哈希化,得到哈希化特征;
S712,将数值特征和/或哈希化特征,作为文件静态特征;
S714,挖掘系统600中的网络行为特征提取模块604,将恶意文件置于文件运行沙箱中运行,将恶意文件在文件运行沙箱中运行时所访问的domain、IP等的网络访问信息,提取作为网络行为特征;
S716,挖掘系统600中的simhash转换模块606,将文件静态特征和网络行为特征,以不同的权重组织成一个文档,然后利用simhash算法,将该文档转换为128bit的simhash值;
S718,挖掘系统600中的训练引擎模块608,通过训练引擎训练索引模型。训练过程中,计算恶意文件的simhash值之间的汉明距离,将汉明距离小于预设阈值的恶意文件进行聚类,得到多个恶意文件类及其作为索引的类中心哈希值,形成索引模型。此外,当恶意文件更新,或者恶意文件的simhash值更新时,通过训练引擎模块608更新索引模型;
S720,在挖掘家族变种恶意文件时,在大量的恶意文件中,选取一个恶意文件,作为第一恶意文件,输入第一恶意文件至挖掘系统600,挖掘系统600中的搜索引擎模块610,针对所输入的第一恶意文件,计算第一恶意文件的simhash值与各个恶意文件类的类中心哈希值之间的汉明距离,根据计算出的汉明距离,对恶意文件类进行升序排序,取排序靠前的若干个恶意文件类,作为目标恶意文件类;
S722,挖掘系统600中的家族变种获取模块612,在目标恶意文件类中,搜索出simhash值之间的汉明距离小于一定阈值的若干个第二恶意文件,输出作为第一恶意文件的家族变种恶意文件。
图8为一个实施例的一种提取文件静态特征步骤的流程示意图。如图所示,提取文件静态特征步骤可以具体包括:
S802,通过python的pefile模块,解析恶意文件,得到恶意文件的文件属性;
S804,判断文件属性是否为数值型属性;若是,则执行S806,若否,则执行S810;
S806,对文件属性中的数值内容整除10,得到整除后的数值;
S810,对文件属性中的非数值内容取64bit的hash值;
S812,将整除后的数值和64bit的hash值,作为文件静态特征。
图9为一个实施例的一种分布式训练流程的流程示意图。如图所示,分布式训练流程的流程可以包括以下步骤:
S902,获取恶意文件的simhash值;
S904,将大量恶意文件的simhash值,按照simhash值中前N位的字符进行分类,将前N位的字符相同的simhash值分类为多个simhash集合;
S906,针对各个simhash集合,通过分布式的训练引擎进行训练。
通常,恶意文件的数量较大,按照simhash值的前N位的字符对simhash进行分类,可以提升训练效率。
应该理解的是,虽然图2、图4、图5、图7、图8和图9的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2、图4、图5、图7、图8和图9中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
如图10所示,在一个实施例中,提供了一种家族变种恶意文件挖掘装置1000,包括:
文件获取模块1002,用于获取用于挖掘所述家族变种恶意文件的第一恶意文件;
特征提取模块1004,用于提取所述第一恶意文件的文件特征;
转换模块1006,用于通过局部敏感哈希算法,将所述第一恶意文件的文件特征,转换为反映所述文件特征中各个局部的特征内容的局部敏感哈希值;
索引模块1008,用于在预设的包括有第二恶意文件的恶意文件类中,以所述恶意文件类的类中心哈希值作为索引,索引出类中心哈希值与所述第一恶意文件的局部敏感哈希值相似的目标恶意文件类;所述恶意文件类中的各个第二恶意文件的局部敏感哈希值均与所述恶意文件类的类中心哈希值相似;
家族变种搜索模块1010,用于在所述目标恶意文件类中的各个第二恶意文件中,搜索出所述第一恶意文件的家族变种恶意文件;所述家族变种恶意文件的局部敏感哈希值与所述第一恶意文件的局部敏感哈希值相似。
在一个实施例中,所述文件特征包括文件静态特征,特征提取模块1004,具体用于:解析所述第一恶意文件,得到文件属性;识别所述文件属性中的数值型属性,和/或,识别所述文件属性中的非数值型属性;根据所述数值型属性中的数值,得到数值特征,和/或,对所述非数值型属性进行哈希化,得到哈希化特征;将所述数值特征和/或所述哈希化特征,作为所述文件静态特征。
在一个实施例中,所述文件特征包括网络行为特征,特征提取模块1004,具体用于:将第一恶意文件置于文件运行沙箱中运行;获取第一恶意文件在文件运行沙箱中运行时产生的网络访问信息;根据网络访问信息,得到网络行为特征。
在一个实施例中,转换模块1006,具体用于:计算文件特征的哈希值;采用文件特征的权重,对文件特征的哈希值进行加权,得到特征加权值;对特征加权值进行合并,得到合并特征加权值;对合并特征加权值进行降维,得到局部敏感哈希值。
在一个实施例中,索引模块1008,具体用于:计算所述第一恶意文件的局部敏感哈希值与所述恶意文件类的类中心哈希值之间的第一哈希值距离;根据所述第一哈希值距离,确定类中心哈希值与所述第一恶意文件的局部敏感哈希值相似的恶意文件类,作为所述目标恶意文件类。
在一个实施例中,所述第一哈希值距离为第一汉明距离,所述第一恶意文件的局部敏感哈希值与所述恶意文件类的类中心哈希值均具有M1个字符位置;
所述索引模块1008,具体用于:在M1个字符位置中选取目标字符位置;在所述第一恶意文件的局部敏感哈希值中,选取处于所述目标字符位置上的哈希值字符,作为第一哈希值字符;在所述恶意文件类的类中心哈希值中,选取处于所述目标字符位置上的哈希值字符,作为第二哈希值字符;将所述第一哈希值字符与所述第二哈希值字符进行比较;当所述第一哈希值字符与所述第二哈希值字符存在差异,确定所述目标字符位置为差异字符位置,并返回至所述在M1个字符位置中选取目标字符位置的步骤,直至选取N1个目标字符位置;其中,M1≥N1;统计所述差异字符位置的数量,作为所述第一汉明距离。
在一个实施例中,所述恶意文件类具有M2个,所述索引模块1008,具体用于:按照所述恶意文件类的第一哈希值距离,对M2个所述恶意文件类进行升序排序,将排序前N2个恶意文件类,作为所述目标恶意文件类;其中,M2>N2≥1。
在一个实施例中,家族变种搜索模块1010,具体用于:计算第一恶意文件的局部敏感哈希值与M3个第二恶意文件的局部敏感哈希值之间的第三哈希值距离;在M3个第二恶意文件中,筛选出第三哈希值距离小于预设的第三距离阈值的N3个第二恶意文件,作为家族变种恶意文件;其中,M3≥N3≥0。
在一个实施例中,特征提取模块1004还用于:提取所述第二恶意文件的文件特征;转换模块1006还用于:将所述第二恶意文件的文件特征,转换为局部敏感哈希值;
家族变种恶意文件挖掘装置1000,还包括:
聚类模块,用于根据所述第二恶意文件的局部敏感哈希值,对所述第二恶意文件进行聚类,得到所述恶意文件类和所述类中心哈希值。
在一个实施例中,聚类模块,具体用于:在所述第二恶意文件中,选取出初始类中心文件;计算所述第二恶意文件与所述初始类中心文件各自的局部敏感哈希值之间的第二哈希值距离;将第二哈希值距离小于预设的第二距离阈值的第二恶意文件,作为所述初始类中心文件的聚类文件;计算所述聚类文件的局部敏感哈希值与所述初始类中心文件的局部敏感哈希值的聚类平均值;当所述聚类平均值收敛,将所述初始类中心文件和所述聚类文件聚合为所述恶意文件类,并将所述聚类平均值作为所述恶意文件类的类中心哈希值。
上述的家族变种恶意文件挖掘装置,预设的恶意文件类所包括的各个第二恶意文件的局部敏感哈希值均与其类中心哈希值相似,在挖掘家族变种恶意文件时,将第一恶意文件的文件特征转换为局部敏感哈希值,将第一恶意文件的局部敏感哈希值与各个恶意文件类的类中心哈希值进行比较,从而,以恶意文件类的类中心哈希值作为索引,索引出类中心哈希值与第一恶意文件的局部敏感哈希值相似的目标恶意文件类。由于目标恶意文件类的类中心哈希值,与目标恶意文件类中各个第二恶意文件的局部敏感哈希值均相似,因此,在目标恶意文件类中,搜索出局部敏感哈希值与第一恶意文件的局部敏感哈希值相似的第二恶意文件的可能性较高,由于局部敏感哈希值可以敏感地反映内容的变化程度,恶意文件之间的局部敏感哈希值相似,表明恶意文件之间相似,也即是说,在目标恶意文件类中,搜索出与第一恶意文件相似的第二恶意文件的可能性较高。因此,通过上述的将文件特征转换为局部敏感哈希值,以及,以恶意文件类的类中心哈希值作为索引,避免了在与第一恶意文件相似的可能性较低的其他第二恶意文件中搜索,缩小了搜索范围,无须将所有第二恶意文件均与第一恶意文件进行逐一对比,从而,提升了家族变种恶意文件的挖掘效率。
而且,通过将文件特征转换为局部敏感哈希值,在搜索与第一恶意文件相似的第二恶意文件时,可以直接将第一恶意文件的局部敏感哈希值与第二恶意文件的局部敏感哈希值进行比较,由于局部敏感哈希值具有降维的特点,因此,可以高效地得到比较结果,节省了计算量,进一步提升了挖掘效率。
如图11所示,在一个实施例中,提供了一种恶意文件聚类装置1100,包括:
文件获取模块1102,用于获取恶意文件;
特征提取模块1104,用于提取恶意文件的文件特征;
转换模块1106,用于将恶意文件的文件特征,转换为局部敏感哈希值;
聚类模块1108,用于根据恶意文件的局部敏感哈希值,将恶意文件聚类,得到恶意文件类及对应的类中心哈希值;恶意文件类中的各个恶意文件的局部敏感哈希值均与恶意文件类的类中心哈希值相似;类中心哈希值用于在挖掘家族变种恶意文件时作为恶意文件类的索引。
上述的家族变种恶意文件挖掘装置,通过将恶意文件的文件特征转换为局部敏感哈希值,并根据恶意文件的局部敏感哈希值,将恶意文件进行聚类,得到恶意文件类及其对应的类中心哈希值,恶意文件类所包括的第二恶意文件的局部敏感哈希值均与其类中心哈希值相似,在挖掘家族变种恶意文件时,以恶意文件类的类中心哈希值作为索引,索引出类中心哈希值与特定恶意文件的局部敏感哈希值相似的恶意文件类。由于索引出的恶意文件类的类中心哈希值,与其包括的各个第二恶意文件的局部敏感哈希值均相似,因此,在恶意文件类中,搜索出局部敏感哈希值与特定恶意文件的局部敏感哈希值相似的恶意文件的可能性较高,由于局部敏感哈希值可以敏感地反映内容的变化程度,恶意文件之间的局部敏感哈希值相似,表明恶意文件之间相似,也即是说,在索引出的恶意文件类中,搜索出与特定恶意文件相似的恶意文件的可能性较高。因此,通过将恶意文件进行聚类为恶意文件类、得到各个恶意文件类的类中心哈希值、以类中心哈希值作为索引的方式,在挖掘家族变种恶意文件时,无须将所有恶意文件进行逐一对比,从而,提升了家族变种恶意文件的挖掘效率。
图12示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的服务器110。如图12所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现一种家族变种恶意文件挖掘方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行一种家族变种恶意文件挖掘方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的一种家族变种恶意文件挖掘装置可以实现为一种计算机程序的形式,计算机程序可在如图12所示的计算机设备上运行。计算机设备的存储器中可存储组成该家族变种恶意文件挖掘装置的各个程序模块,比如,图12所示的文件获取模块1002、特征提取模块1004、转换模块1006、索引模块1008和家族变种搜索模块1010。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的家族变种恶意文件挖掘方法中的步骤。
例如,图12所示的计算机设备可以通过如图10所示的家族变种恶意文件挖掘装置中的文件获取模块1002执行获取第一恶意文件。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述家族变种恶意文件挖掘方法的步骤。此处家族变种恶意文件挖掘方法的步骤可以是上述各个实施例的家族变种恶意文件挖掘方法中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述家族变种恶意文件挖掘方法的步骤。此处家族变种恶意文件挖掘方法的步骤可以是上述各个实施例的家族变种恶意文件挖掘方法中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种家族变种恶意文件挖掘方法,包括:
获取用于挖掘所述家族变种恶意文件的第一恶意文件;
提取所述第一恶意文件的文件特征;
通过局部敏感哈希算法,将所述第一恶意文件的文件特征,转换为反映所述文件特征中各个局部的特征内容的局部敏感哈希值;
在预设的包括有第二恶意文件的恶意文件类中,以所述恶意文件类的类中心哈希值作为索引,索引出类中心哈希值与所述第一恶意文件的局部敏感哈希值相似的目标恶意文件类;所述恶意文件类中的各个第二恶意文件的局部敏感哈希值均与所述恶意文件类的类中心哈希值相似;
在所述目标恶意文件类中的各个第二恶意文件中,搜索出所述第一恶意文件的家族变种恶意文件;所述家族变种恶意文件的局部敏感哈希值与所述第一恶意文件的局部敏感哈希值相似。
2.根据权利要求1所述的方法,其特征在于,所述在预设的包括有第二恶意文件的恶意文件类中,以所述恶意文件类的类中心哈希值作为索引,索引出类中心哈希值与所述第一恶意文件的局部敏感哈希值相似的目标恶意文件类,包括:
计算所述第一恶意文件的局部敏感哈希值与所述恶意文件类的类中心哈希值之间的第一哈希值距离;
根据所述第一哈希值距离,确定类中心哈希值与所述第一恶意文件的局部敏感哈希值相似的恶意文件类,作为所述目标恶意文件类。
3.根据权利要求2所述的方法,其特征在于,所述第一哈希值距离为第一汉明距离,所述第一恶意文件的局部敏感哈希值与所述恶意文件类的类中心哈希值均具有M1个字符位置;
所述计算所述第一恶意文件的局部敏感哈希值与所述恶意文件类的类中心哈希值之间的第一哈希值距离,包括:
在M1个字符位置中选取目标字符位置;
在所述第一恶意文件的局部敏感哈希值中,选取处于所述目标字符位置上的哈希值字符,作为第一哈希值字符;
在所述恶意文件类的类中心哈希值中,选取处于所述目标字符位置上的哈希值字符,作为第二哈希值字符;
将所述第一哈希值字符与所述第二哈希值字符进行比较;
当所述第一哈希值字符与所述第二哈希值字符存在差异,确定所述目标字符位置为差异字符位置,并返回至所述在M1个字符位置中选取目标字符位置的步骤,直至选取N1个目标字符位置;其中,M1≥N1;
统计所述差异字符位置的数量,作为所述第一汉明距离。
4.根据权利要求2所述的方法,其特征在于,所述恶意文件类具有M2个,所述根据所述第一哈希值距离,确定类中心哈希值与所述第一恶意文件的局部敏感哈希值相似的恶意文件类,作为所述目标恶意文件类,包括:
按照所述恶意文件类的第一哈希值距离,对M2个所述恶意文件类进行升序排序,将排序前N2个恶意文件类,作为所述目标恶意文件类;其中,M2>N2≥1。
5.根据权利要求1所述的方法,其特征在于,在所述在预设的包括有第二恶意文件的恶意文件类中,以所述恶意文件类的类中心哈希值作为索引,索引出类中心哈希值与所述第一恶意文件的局部敏感哈希值相似的目标恶意文件类的步骤之前,还包括:
提取所述第二恶意文件的文件特征;
将所述第二恶意文件的文件特征,转换为局部敏感哈希值;
根据所述第二恶意文件的局部敏感哈希值,对所述第二恶意文件进行聚类,得到所述恶意文件类和所述类中心哈希值。
6.根据权利要求5所述的方法,其特征在于,所述根据所述第二恶意文件的局部敏感哈希值,对所述第二恶意文件进行聚类,得到所述恶意文件类和所述类中心哈希值,包括:
在所述第二恶意文件中,选取出初始类中心文件;
计算所述第二恶意文件与所述初始类中心文件各自的局部敏感哈希值之间的第二哈希值距离;
将第二哈希值距离小于预设的第二距离阈值的第二恶意文件,作为所述初始类中心文件的聚类文件;
计算所述聚类文件的局部敏感哈希值与所述初始类中心文件的局部敏感哈希值的聚类平均值;
当所述聚类平均值收敛,将所述初始类中心文件和所述聚类文件聚合为所述恶意文件类,并将所述聚类平均值作为所述恶意文件类的类中心哈希值。
7.根据权利要求1至6任一所述的方法,其特征在于,所述文件特征包括文件静态特征,所述提取所述第一恶意文件的文件特征,包括:
解析所述第一恶意文件,得到文件属性;
识别所述文件属性中的数值型属性,和/或,识别所述文件属性中的非数值型属性;
根据所述数值型属性中的数值,得到数值特征,和/或,对所述非数值型属性进行哈希化,得到哈希化特征;
将所述数值特征和/或所述哈希化特征,作为所述文件静态特征。
8.一种家族变种恶意文件挖掘装置,包括:
文件获取模块,用于获取用于挖掘所述家族变种恶意文件的第一恶意文件;
特征提取模块,用于提取所述第一恶意文件的文件特征;
转换模块,用于通过局部敏感哈希算法,将所述第一恶意文件的文件特征,转换为反映所述文件特征中各个局部的特征内容的局部敏感哈希值;
索引模块,用于在预设的包括有第二恶意文件的恶意文件类中,以所述恶意文件类的类中心哈希值作为索引,索引出类中心哈希值与所述第一恶意文件的局部敏感哈希值相似的目标恶意文件类;所述恶意文件类中的各个第二恶意文件的局部敏感哈希值均与所述恶意文件类的类中心哈希值相似;
家族变种搜索模块,用于在所述目标恶意文件类中的各个第二恶意文件中,搜索出所述第一恶意文件的家族变种恶意文件;所述家族变种恶意文件的局部敏感哈希值与所述第一恶意文件的局部敏感哈希值相似。
9.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至7中任一项所述方法的步骤。
10.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至7中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910725993.1A CN112347477A (zh) | 2019-08-07 | 2019-08-07 | 家族变种恶意文件挖掘方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910725993.1A CN112347477A (zh) | 2019-08-07 | 2019-08-07 | 家族变种恶意文件挖掘方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112347477A true CN112347477A (zh) | 2021-02-09 |
Family
ID=74366603
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910725993.1A Pending CN112347477A (zh) | 2019-08-07 | 2019-08-07 | 家族变种恶意文件挖掘方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112347477A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114266045A (zh) * | 2021-12-13 | 2022-04-01 | 安天科技集团股份有限公司 | 网络病毒的识别方法、装置、计算机设备及存储介质 |
CN115099795A (zh) * | 2022-08-29 | 2022-09-23 | 江苏青山软件有限公司 | 企业内部数字资源管理方法及系统 |
-
2019
- 2019-08-07 CN CN201910725993.1A patent/CN112347477A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114266045A (zh) * | 2021-12-13 | 2022-04-01 | 安天科技集团股份有限公司 | 网络病毒的识别方法、装置、计算机设备及存储介质 |
CN115099795A (zh) * | 2022-08-29 | 2022-09-23 | 江苏青山软件有限公司 | 企业内部数字资源管理方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210256127A1 (en) | System and method for automated machine-learning, zero-day malware detection | |
US11212307B2 (en) | Server-supported malware detection and protection | |
Gupta et al. | Improving malware detection using big data and ensemble learning | |
AU2020223632B2 (en) | System and method for detecting data anomalies by analysing morphologies of known and/or unknown cybersecurity threats | |
US10474818B1 (en) | Methods and devices for detection of malware | |
RU2708356C1 (ru) | Система и способ двухэтапной классификации файлов | |
US20140090061A1 (en) | System and method for automated machine-learning, zero-day malware detection | |
US9565209B1 (en) | Detecting electronic messaging threats by using metric trees and similarity hashes | |
CN105224600B (zh) | 一种样本相似度的检测方法及装置 | |
EP3346664B1 (en) | Binary search of byte sequences using inverted indices | |
KR20150038738A (ko) | 비밀 정보의 검출 | |
CN107273746A (zh) | 一种基于apk字符串特征的变种恶意软件检测方法 | |
Liu et al. | A statistical pattern based feature extraction method on system call traces for anomaly detection | |
CN111723371A (zh) | 构建恶意文件的检测模型以及检测恶意文件的方法 | |
CN112148305A (zh) | 一种应用检测方法、装置、计算机设备和可读存储介质 | |
CN111869176A (zh) | 用于恶意软件签名生成的系统和方法 | |
CN112347477A (zh) | 家族变种恶意文件挖掘方法和装置 | |
CN111666258B (zh) | 信息处理方法和装置、信息查询方法和装置 | |
De La Torre-Abaitua et al. | On the application of compression-based metrics to identifying anomalous behaviour in web traffic | |
CN116821053B (zh) | 数据上报方法、装置、计算机设备和存储介质 | |
CN117061254B (zh) | 异常流量检测方法、装置和计算机设备 | |
Ahmed et al. | Shieldroid: A hybrid approach integrating machine and deep learning for android malware detection | |
US11487876B1 (en) | Robust whitelisting of legitimate files using similarity score and suspiciousness score | |
Zhu et al. | PDHF: Effective phishing detection model combining optimal artificial and automatic deep features | |
CN107844702B (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 |