一种基于结构熵序列的恶意软件分类方法技术

技术编号:25308960 阅读:21 留言:0更新日期:2020-08-18 22:27
本发明专利技术属于计算机安全技术领域,具体涉及一种基于结构熵序列的恶意软件分类方法。本发明专利技术通过提取噪声更少的结构熵序列并用于训练卷积神经网络模型,可以提取出更加贴近恶意软件本质特征的特征,从而提高恶意软件的分类准确率。本发明专利技术的卷积神经网络模型的输入数据噪声更少,所提取的特征更加贴近恶意软件的本质特征,增加了恶意软件的识别率。本发明专利技术能够处理大批量数据,且能保持较好的分类性能。

【技术实现步骤摘要】
一种基于结构熵序列的恶意软件分类方法
本专利技术属于计算机安全
,具体涉及一种基于结构熵序列的恶意软件分类方法。
技术介绍
随着网络技术的飞速发展,恶意软件的不断变种、快速传播成为了信息安全领域面临的巨大挑战。尽管当前安全研究领域针对恶意软件检测工作已经做出了很多改进,但还是无法应对恶意软件呈指数增长的趋势。同时随着恶意软件类别语义的发展,新的恶意软件类别也在增加。安全云脑上半年检测到木马远控病毒样本31780个,共拦截13.46亿次。其中最活跃的木马远控家族是DriveLife,DriveLife木马家族作为供应链木马,在2019年上半年有多次变种,其攻击态势迅速增长,半年拦截数量达1.72亿次。经研究发现,把具有相似行为或特征的恶意软件分类为恶意软件家族,对于恶意软件的分析和检测具有重要的作用。传统的恶意软件分类方法在特征提取阶段,通常伴随所提取的特征噪声较大的问题。近年来,相关领域的研究人员为了解决该问题,经常将机器学习技术以不同形式结合到恶意软件检测中。卷积神经网络作为目前较为流行的机器学习技术,主要应用于计算机视觉和自然语言处理方向。由于卷积神经网络在图像的特征提取方面具有较强的能力,因此,将卷积神经网络应用于恶意软件的特征提取成为了网络安全领域关注的一个重点。综上所述,恶意软件分类系统的性能好坏主要取决于特征的提取。因此,研究如何应用卷积神经网络实现鲜明的特征提取,以及如何根据恶意软件的本质特征实现对恶意软件所属家族的分类,对提升分类系统的性能和准确性具有非常重要的科学理论价值与实际应用意义。
技术实现思路
本专利技术的目的在于提供一种基于结构熵序列的恶意软件分类方法。本专利技术的目的通过如下技术方案来实现:包括以下步骤:步骤1:输入待分类的恶意软件样本数据集,取部分数据构建训练集;步骤2:从训练集中选择一个恶意软件样本,将该恶意软件样本转化为二进制流文件;步骤3:将二进制流文件划分为固定长度的字节块;步骤4:应用香农公式对中恶意软件样本的每一个字节块进行熵值计算,得到恶意软件样本的结构熵序列;步骤5:将结构熵序列看作熵时间序列,并应用离散小波变换技术减少熵时间序列的噪声,同时获得近似系数与细节系数;步骤6:对步骤5中产生的近似系数进行迭代操作;所述的迭代操作具体为:在每一次迭代中,仅使用前一次迭代生成的近似系数作为输入信号;每一次迭代都会生成一个近似系数和一个细节系数,并在执行最后一次迭代时,通过设置阈值的方式,达到减少熵时间序列中的噪声的目的,进而提高分类性能;步骤7:迭代完成后,使用逆小波变换操作重构熵时间序列,获得更加平滑、噪声更少的平滑熵时间序列;步骤8:若训练集中所有恶意软件样本均转化成平滑熵时间序列,则执行步骤9;否则,返回步骤2;步骤9:用训练集训练卷积神经网络模型,得到可识别恶意软件家族的卷积神经网络分类器;具体步骤为:步骤9.1:应用嵌入层将平滑熵序列映射到要求范围内的单词向量;步骤9.2:计算卷积层的特征图,将特征图输入到最大池化层;步骤9.3:将最大池化层的输出平铺成一个向量与全连接层连接,并在输出层输出每个恶意软件样本的分类结果;步骤10:将其它待分类的恶意软件样本数据集输入到卷积神经网络分类器中,得到分类结果。本专利技术还可以包括:所述的步骤3中将二进制流文件划分为固定长度的字节块具体为:划分的块大小和块数量为预先设定,块大小与块数量均为2的指数次幂;其中块大小的指数大于或者等于8,块数量的指数取决于恶意软件家族中所有样本字节长度的中位数和块大小;如果恶意软件代码的长度大于设定的块大小和块数量的乘积,则需要将划分的块数减少到设定的块数;在减少块数时,保留第一块和最后一块,然后从第一个块开始,每次增加一定的距离选取剩下的块,直到块数达到目标数量;如果恶意软件代码的长度小于块大小和设定块数的乘积,则需要将划分的块数增加到设定的块数;通过在最后一块前面增加一定数量的、由相同的死代码组成的块的方式,将总块数增加到设定的块数。本专利技术的有益效果在于:本专利技术通过提取噪声更少的结构熵序列并用于训练卷积神经网络模型,可以提取出更加贴近恶意软件本质特征的特征,从而提高恶意软件的分类准确率。本专利技术的卷积神经网络模型的输入数据噪声更少,所提取的特征更加贴近恶意软件的本质特征,增加了恶意软件的识别率。本专利技术能够处理大批量数据,且能保持较好的分类性能。附图说明图1为本专利技术的总体流程图。图2为本专利技术训练卷积神经网络模型的流程图。图3为本专利技术的卷积神经网络模型的运行逻辑图。具体实施方式下面结合附图对本专利技术做进一步描述。本专利技术提供的是一种基于结构熵序列的恶意软件分类方法,属于计算机安全领域。本专利技术包括以下步骤:1.将原始数据转化为二进制流文件,并对其进行块划分,获取固定长度的字节快;2.对选定的字节块进行熵值计算,并获得结构熵序列;3.应用离散小波变换技术减少结构熵序列的噪声,并获得近似系数与细节系数;4.对近似系数进行迭代和逆小波变换操作,获得更加平滑、噪声更少的熵时间序列;5.将平滑熵时间序列作为输入训练卷积神经网络模型,从而得到基于结构熵序列的恶意软件分类器。本专利技术通过提取噪声更少的结构熵序列,用于训练卷积神经网络模型以提取更加贴近恶意软件本质特征的特征,从而提高恶意软件的分类准确率。一种基于结构熵序列的恶意软件分类方法,包括如下五个步骤:步骤1、将原始数据.exe文件转化为二进制流文件。然后定义两个重要的参数:块大小和块数量,对二进制流文件进行块划分,获得固定长度的字节块。步骤2、使用香农公式对中选定的字节块进行熵值计算,得到结构熵序列。步骤3、将生成的结构熵序列看作熵时间序列,并应用离散小波变换技术减少熵时间序列的噪声,同时获得近似系数与细节系数。步骤4、对产生的近似系数进行迭代操作以生成新的近似系数和细节系数。在迭代完成后,使用逆小波变换操作重构熵时间序列,获得更加平滑、噪声更少的熵时间序列。最后将熵时间序列映射到n维空间。步骤5、将中生成的平滑熵时间序列作为卷积神经网络模型的输入,用来训练卷积神经网络分类器从而对恶意软件进行所属家族分类。步骤1所述块大小和块数量的定义进一步包括:块大小是2的指数次幂,其指数必然满足大于或者等于8;块数量同样也是2的指数次幂,其指数由恶意软件家族中所有样本字节长度的中位数和块大小决定。步骤1所述对二进制流文件进行块划分进一步包括:当对恶意软件进行块划分时,通常需要将最后划分的块数递增或递减到设定的数值。因此,存在下述两种情况:(1)如果恶意软件代码的长度大于块大小和设定块数的乘积,则将划分的块数减少到步骤1中设定的块数。在减少块数时,保留第一块和最后一块,然后从第一个块开始,每次增加一定的距离选取剩下的块,直到块数达到目标数量。(2)如果恶意软件代码本文档来自技高网
...

【技术保护点】
1.一种基于结构熵序列的恶意软件分类方法,其特征在于,包括以下步骤:/n步骤1:输入待分类的恶意软件样本数据集,取部分数据构建训练集;/n步骤2:从训练集中选择一个恶意软件样本,将该恶意软件样本转化为二进制流文件;/n步骤3:将二进制流文件划分为固定长度的字节块;/n步骤4:应用香农公式对中恶意软件样本的每一个字节块进行熵值计算,得到恶意软件样本的结构熵序列;/n步骤5:将结构熵序列看作熵时间序列,并应用离散小波变换技术减少熵时间序列的噪声,同时获得近似系数与细节系数;/n步骤6:对步骤5中产生的近似系数进行迭代操作;所述的迭代操作具体为:在每一次迭代中,仅使用前一次迭代生成的近似系数作为输入信号;每一次迭代都会生成一个近似系数和一个细节系数,并在执行最后一次迭代时,通过设置阈值的方式,达到减少熵时间序列中的噪声的目的,进而提高分类性能;/n步骤7:迭代完成后,使用逆小波变换操作重构熵时间序列,获得更加平滑、噪声更少的平滑熵时间序列;/n步骤8:若训练集中所有恶意软件样本均转化成平滑熵时间序列,则执行步骤9;否则,返回步骤2;/n步骤9:用训练集训练卷积神经网络模型,得到可识别恶意软件家族的卷积神经网络分类器;具体步骤为:/n步骤9.1:应用嵌入层将平滑熵序列映射到要求范围内的单词向量;/n步骤9.2:计算卷积层的特征图,将特征图输入到最大池化层;/n步骤9.3:将最大池化层的输出平铺成一个向量与全连接层连接,并在输出层输出每个恶意软件样本的分类结果;/n步骤10:将其它待分类的恶意软件样本数据集输入到卷积神经网络分类器中,得到分类结果。/n...

【技术特征摘要】
1.一种基于结构熵序列的恶意软件分类方法,其特征在于,包括以下步骤:
步骤1:输入待分类的恶意软件样本数据集,取部分数据构建训练集;
步骤2:从训练集中选择一个恶意软件样本,将该恶意软件样本转化为二进制流文件;
步骤3:将二进制流文件划分为固定长度的字节块;
步骤4:应用香农公式对中恶意软件样本的每一个字节块进行熵值计算,得到恶意软件样本的结构熵序列;
步骤5:将结构熵序列看作熵时间序列,并应用离散小波变换技术减少熵时间序列的噪声,同时获得近似系数与细节系数;
步骤6:对步骤5中产生的近似系数进行迭代操作;所述的迭代操作具体为:在每一次迭代中,仅使用前一次迭代生成的近似系数作为输入信号;每一次迭代都会生成一个近似系数和一个细节系数,并在执行最后一次迭代时,通过设置阈值的方式,达到减少熵时间序列中的噪声的目的,进而提高分类性能;
步骤7:迭代完成后,使用逆小波变换操作重构熵时间序列,获得更加平滑、噪声更少的平滑熵时间序列;
步骤8:若训练集中所有恶意软件样本均转化成平滑熵时间序列,则执行步骤9;否则,返回步骤2;
步骤9:用训练集训练卷积神经网络模型,得到可识别恶意软件家族的卷积神经网络分类器...

【专利技术属性】
技术研发人员:薛迪李静梅彭弘
申请(专利权)人:哈尔滨工程大学
类型:发明
国别省市:黑龙江;23

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

1