一种病毒文件识别方法技术

技术编号:20944715 阅读:27 留言:0更新日期:2019-04-24 02:29
本发明专利技术实施例公开了一种病毒文件识别方法,属于信息处理技术领域,本申请提供的病毒文件识别方法,在判断目标文件是否为基准文件的变种的过程中,以第一分片单元文件的信息熵作为目标文件的哈希,有较强的鲁棒性,能够准确的识别出基准病毒文件的变种,有效提升病毒文件检测的能力。

A Virus File Recognition Method

The embodiment of the present invention discloses a method for identifying virus files, which belongs to the field of information processing technology. The method for identifying virus files provided in this application has strong robustness and can accurately identify variants of reference virus files by using the information entropy of the first fragmentation unit file as the hash of the target files in the process of judging whether the target file is a variant of the reference file. Effectively enhance the ability of virus file detection.

【技术实现步骤摘要】
一种病毒文件识别方法
本申请涉及信息处理
,尤其涉及一种病毒文件识别方法。
技术介绍
病毒文件检测通常采用消息摘要算法MD5等方法进行,但随着病毒软件的爆发式增长,很多病毒文件通过修改字节、插入、删除字节等方式,形成多种形式的变种病毒文件,现有的检测无法对该类变种病毒文件进行有效的检测。
技术实现思路
本专利技术实施例提供了一种能够有效的提升病毒文件检测准确性以及效率的病毒文件识别方法、设备以及计算机可读存储介质。本专利技术实施例第一方面提供了一种病毒文件识别方法,包括:通过专用链路获取目标文件;将所述目标文件拆分成多个第一分片单元文件;基于哈希算法分别计算多个所述第一分片单元文件的信息熵;根据所述第一分片单元文件的信息熵和预先设置的权重参数确定第一系数,其中所述第一系数为所述第一分片单元文件的信息熵和所述权重参数的乘积;根据所述第一系数获取第一熵向量,所述第一系数为所述第一熵向量的元素;获取基准文件,所述基准文件包含有病毒标签;将所述基准文件拆分成多个第二分片单元文件,所述第一分片单元文件和所述第二分片单元文件的数量相同;根据所述第二分片单元文件的信息熵和预先设置的权重参数的乘积获取第二系数,根据所述第二系数获取所述第二熵向量,所述第二系数为所述第二熵向量的元素;计算所述第一熵向量与第二熵向量的关联度系数值;根据所述关联度系数值确定所述目标文件是否与所述基准文件相关联,当所述关联度系数值大于预设门限值时,确定所述目标文件和所述基准文件相关联,将所述目标文件打上与所述基准文件相同的病毒标签。优选地,所述病毒文件识别方法中:所述第一熵向量为x=(x1,x2,x3,...,xn)T;其中,xn为所述第一熵向量所包括的第n个元素;所述第二熵向量为y=(y1,y2,y3,...,yn)T;其中,yn为所述第二熵向量所包括的第n个元素,维度T为所述第一熵向量或第二熵向量包括的元素的数量;所述计算所述第一熵向量与第二熵向量的关联度系数值包括:基于下述计算式计算所述第一熵向量与第二熵向量的关联度系数值s:优选地,所述病毒文件识别方法中:所述第一熵向量为x=(x1,x2,x3,...,xn)T,其中,xn为所述第一熵向量所包括的第n个元素;所述第二熵向量为y=(y1,y2,y3,...,yn)T,其中,yn为所述第二熵向量所包括的第n个元素,维度T为所述第一熵向量或第二熵向量包括的元素的数量;所述计算所述第一熵向量与第二熵向量的关联度系数值包括:基于以下数学式计算所述第一熵向量与第二熵向量的关联度系数值d,其中,所述第二公式为:其中,xi为所述第一熵向量所包括的任一元素,yi为所述第二熵向量所包括的任一元素。本申请提供了一种病毒文件识别方法,在判断目标文件是否为基准文件的变种的过程中,以第一分片单元文件的信息熵作为目标文件的哈希,有较强的鲁棒性,能够准确的识别出基准病毒文件的变种。附图说明图1为本专利技术实施例提供的病毒文件识别方法的流程示意图。具体实施方式参考图1,本专利技术实施例第一方面提供了一种病毒文件识别方法,包括:步骤1、通过专用链路获取目标文件。本实施例中,通过专用链路从文件库获取目标文件,可以避免在文件传输过程中引入杂志,例如传输过程中受到病毒感染,使得所述目标文件为非病毒文件的情形下而感染病毒,导致最终对所述文件库中的目标文件是否为病毒文件的识别结论出现误差。本实施例需要识别出所述目标文件的文件属性,且本实施例对目标文件的具体类型不做限定,例如,所述目标文件可以指被操作系统运行的二进制文件,内容除了包含系统规定的必须的信息,还会根据要实现的功能以及开发者的编码风格呈现不同的特点。如目标文件可为android(安卓)系统下的dex文件。步骤2、将所述目标文件拆分成多个第一分片单元文件。例如本实施例基于内容分割的分片哈希算法CTPH对所述目标文件进行拆分处理,形成多个第一分片单元文件。步骤3、基于哈希算法分别计算多个所述第一分片单元文件的信息熵。其中,信息熵为所述第一分片单元文件所包含的信息的平均量,又称信源熵、平均自信息量。信息熵为不确定的量度而不是确定性的量度,因为越随机的第一分片单元文件的信息熵越大,还可以这样理解,来自第一分片单元文件的概率分布和第一分片单元文件的信息量构成了一个随机变量,这个随机变量的均值(即期望)就是这个分布产生的信息量的平均值,(即信息熵)。本实施例对通过何种算法计算出所述第一分片单元文件的信息熵的不做限定;对所述第一分片单元文件可以使用传统的哈希算法,计算出所述第一分片单元文件的信息熵。具体的,把第一分片单元文件作为输入,通过散列算法,变换成固定长度的输出,即所述第一分片单元文件的信息熵,所述第一分片单元文件的信息熵就是散列值。本实施例所示的哈希算法其实是一种压缩映射,也就是,第一分片单元文件的信息熵的空间通常远小于作为输入的第一分片单元文件的空间。对所述第一分片单元文件可以使用模糊哈希算法计算出所述第一分片单元文件的信息熵。具体的,模糊哈希算法SSDeep是一个用来计算CTPH(基于文本的分片哈希算法)。模糊哈希算法主要包括强哈希算法,所述强哈希算法用于计算所述第一分片单元文件的信息熵。本实施例中,在将所述目标文件分片完成后,计算所述目标文件分片处理后的第一分片单元文件的信息熵,其中,所述第一分片单元文件为所述基准文件分片后的多个第一分片单元文件中的任一个分片文件。步骤4、根据所述第一分片单元文件的信息熵和预先设置的权重参数确定第一系数,其中所述第一系数为所述第一分片单元文件的信息熵和所述权重参数的乘积。步骤5、根据所述第一系数获取第一熵向量,所述第一系数为所述第一熵向量的元素。所述第一熵向量包括第一系数xn,所述第一系数xn为所述第一熵向量所包括的多个元素中的任一元素。所述第一熵向量可表示为x=(x1,x2,x3,...,xn)T,其中,xn为所述第一熵向量所包括的第n个元素,即为所述第一系数,维度T等于所述第一熵向量所包括的元素的数量,且所述T还等于所述第二熵向量所包括的元素的数量。其中,所述xn=fn*wn。可选的,本实施例可对已确定出的所述权重参数wn进行修正,以使修正后的所述权重参数wn可与不同的分片文件的敏感度对应,本实施例所示的敏感度是指对所述基准文件和目标文件之间文件属性是否相同的判断准确性,即敏感度越高,则判断的准确性越高。若第一分片单元文件位于所述基准文件的中间位置,则说明该第一分片单元文件比较重要,进而说明与所述第一分片单元文件的敏感性越高,则可提升所述权重参数的数值;若所述第一分片单元文件所包含的词汇在所述基准文件中出现的概率大于预设值,则说明该第一分片单元文件比较重要,进而说明与所述第一分片单元文件的敏感性越高,则可提升所述权重参数的数值;若所述第一分片单元文件位于所述基准文件的头部或尾部,则说明该第一分片单元文件不重要,进而说明与所述第一分片单元文件的敏感性越低,则可降低所述权重参数的数值。步骤6、获取基准文件,所述基准文件包含有病毒标签。本实施例中,可通过人工的方法预先获取多个基准文件,且识别所述多个基准文件的文件属性是安全文件属性还是病毒文件属性,当识别出所述基准文件的文件属性是病毒文件属性时,则将所述基准文件的文件属性打上病毒标签。本实施本文档来自技高网...

【技术保护点】
1.一种病毒文件识别方法,其特征在于,包括:通过专用链路获取目标文件;将所述目标文件拆分成多个第一分片单元文件;基于哈希算法分别计算多个所述第一分片单元文件的信息熵;根据所述第一分片单元文件的信息熵和预先设置的权重参数确定第一系数,其中所述第一系数为所述第一分片单元文件的信息熵和所述权重参数的乘积;根据所述第一系数获取第一熵向量,所述第一系数为所述第一熵向量的元素;获取基准文件,所述基准文件包含有病毒标签;将所述基准文件拆分成多个第二分片单元文件,所述第一分片单元文件和所述第二分片单元文件的数量相同;根据所述第二分片单元文件的信息熵和预先设置的权重参数的乘积获取第二系数,根据所述第二系数获取所述第二熵向量,所述第二系数为所述第二熵向量的元素;计算所述第一熵向量与第二熵向量的关联度系数值;根据所述关联度系数值确定所述目标文件是否与所述基准文件相关联,当所述关联度系数值大于预设门限值时,确定所述目标文件和所述基准文件相关联,将所述目标文件打上与所述基准文件相同的病毒标签。

【技术特征摘要】
1.一种病毒文件识别方法,其特征在于,包括:通过专用链路获取目标文件;将所述目标文件拆分成多个第一分片单元文件;基于哈希算法分别计算多个所述第一分片单元文件的信息熵;根据所述第一分片单元文件的信息熵和预先设置的权重参数确定第一系数,其中所述第一系数为所述第一分片单元文件的信息熵和所述权重参数的乘积;根据所述第一系数获取第一熵向量,所述第一系数为所述第一熵向量的元素;获取基准文件,所述基准文件包含有病毒标签;将所述基准文件拆分成多个第二分片单元文件,所述第一分片单元文件和所述第二分片单元文件的数量相同;根据所述第二分片单元文件的信息熵和预先设置的权重参数的乘积获取第二系数,根据所述第二系数获取所述第二熵向量,所述第二系数为所述第二熵向量的元素;计算所述第一熵向量与第二熵向量的关联度系数值;根据所述关联度系数值确定所述目标文件是否与所述基准文件相关联,当所述关联度系数值大于预设门限值时,确定所述目标文件和所述基准文件相关联,将所述目标文件打上与所述基准文件相同的病毒标签。2.根据权利要求1所述的病毒文件识别方法,...

【专利技术属性】
技术研发人员:林路路
申请(专利权)人:建湖云飞数据科技有限公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1