掌桥专利:专业的专利平台
掌桥专利
首页

一种基于自生成对抗和卷积神经网络的恶意代码分类方法

文献发布时间:2024-04-18 19:59:31


一种基于自生成对抗和卷积神经网络的恶意代码分类方法

技术领域

本发明属于恶意代码分类,具体涉及一种基于自生成对抗和卷积神经网络的恶意代码分类方法,用于实现恶意代码的分类。

背景技术

通过对恶意代码进行分类可以追溯其来源并将其归类到具体的恶意家族中。这对于工控系统的安全建设也非常重要。综合采取这些措施可以有效降低工控系统受到攻击的风险,保护工控系统的正常运行和稳定性。

目前恶意代码分类方法主要分为基于传统机器学习的方法和基于深度学习的方法。针对基于传统机器学习的方法,由于现在许多恶意代码采取了反调试技术、代码混淆等手段来逃避静态分析的检测。这导致基于传统机器学习的方法难以通过静态高级特征准确地检测和分类恶意代码。此外,基于传统机器学习的方法需要手动提取特征,这一过程易受人为因素影响。因此,为了提高分类的准确性和鲁棒性,研究人员引入了基于深度学习的分类方法,并采用图像处理技术将恶意代码转化为图像,以利用深度学习模型更好地识别和分类恶意代码。此外,深度学习模型还能够自适应地学习不同恶意代码家族和变体之间的相似性和差异性,从而提高分类的准确性和鲁棒性。因此,使用深度学习方法对恶意代码进行检测和分类已经成为当前的主流研究方向。目前已经有一些深度学习模型比如自动编码器(AE)、卷积神经网络(CNN)、递归神经网络(RNN)以及这些深度学习算法的组合来检测和分类恶意攻击代码。

综上所述,设计一种基于自生成对抗和卷积神经网络的恶意代码分类方法具有必要性。

发明内容

本发明目的在于针对数据质量不高,数据集不平衡的问题,以提高数据质量和增加样本量并获得更好的数据分类结果的问题,提供了一种基于自生成对抗和卷积神经网络的恶意代码分类方法。该方法从数据质量不高,数据集不平衡,分类准确率不高等问题入手,注重提高数据质量,平衡数据集中不平衡数据,并对轻量级卷积神经网络模型进行改进以提高分类准确率。由于同一家族的恶意代码在结构上具有相似性,因此本模型针对恶意代码通过数据增强来提高数据质量和提供充足样本以及使用改进的轻量级卷积神经网络提取特征并分类,从而可以提升恶意代码分类的准确性。

本发明采用的技术方案包括以下步骤:

步骤1、二进制代码可视化,首先将每个8位二进制文件视为一串0和1的序列,并将其读取为无符号整数表示,可以得到一个二维矩阵。通过将这个矩阵转化为图像,可以得到一个灰度图像,其中每个像素的灰度值代表了对应的二进制文件中的值。具体来说假如一个位串是0010000000101100,那么这个过程就是0010000000101100→00100000,00101110→32 46。

步骤2、图像尺寸归一化,因为卷积和池化操作对图像的输入尺寸和通道数有一定的要求,如果输入图像的尺寸和通道数不匹配,会影响网络的训练和性能,甚至导致训练失败。因此,需要对输入图像尺寸进行归一化。为了使归一化后的图片还能保持原有的纹理特征,使用双线性插值来调整恶意代码图像的大小,因为它的计算复杂度降低,而且分类器性能强。

步骤3、将灰度图转化为RGB图像的过程中,将灰度值复制到三个通道中。

步骤4、数据增强,高质量的数据对于机器学习和深度学习任务至关重要。如果训练模型使用粗糙的数据样本,那么将会影响模型的质量和性能。相反,由高质量数据训练的模型更加健壮,能够避免过拟合问题,并且可以快速训练得到高效的模型。恶意代码通常由多个家族组成,每个家族的样本数量差异很大,这种数据的变化会对训练模型的准确性和鲁棒性造成负面影响。为了解决这个问题,可以采用数据增强技术来提高数据质量。通过改变、扩展和润色现有的数据,可以生成更多、更丰富的数据样本。这种方法可以增加数据的多样性,使得模型可以更好地处理各种情况,从而提高模型的性能和准确性。数据增强技术适用于各种机器学习和深度学习任务。自生成对抗网络模型生成与真实数据更相似的合成数据。

步骤5、特征提取与分类。

本发明的积极效果

(1)本发明使用自生成对抗网络的数据增强方法,通过自注意力机制关注特征图的重点信息以提取到更准确的特征来伪造数据,通过伪造足够真实的数据来对原始数据进行增强从而产生足够数量的高质量数据。

(2)本发明提出基于轻量级卷积神经网络的改进模型,通过“Concat”的方式来连接卷积神经网络中不同的层,增强网络中前几层的表现力,提高特征提取的能力;并且通过在网络中使用了批量归一化层和残差网络结构,有效防止模型过拟合,提高模型整体训练速度和精度;最后在改进的轻量级卷积神经网络中加入了无参注意力机制,关注重点特征信息,提高分类准确率。

附图说明

图1为本发明实施方法的基本流程示意图。

具体实施方式

本发明如图1所示,总体分为三个过程,首先将恶意代码文件进行预处理。然后为了解决恶意代码数据质量不高,恶意代码家族数量分布不均衡的问题,使用基于自生成对抗网络的数据增强方法,方法通过自注意力机制关注特征图的重点信息以提取到更准确的特征来伪造数据,通过伪造足够真实的数据来对原始数据进行增强从而产生足够数量的高质量数据,以解决数据质量不高,数据量不够等的数据集不平衡问题。最后为了准确高效地对图像特征进行提取并分类,使用基于轻量级卷积神经网络的改进模型,方法首先模仿DenseNet的结构,通过“Concat”的方式来连接卷积神经网络中不同的层,增强网络中前几层的表现力,提高特征提取的能力;并且通过在网络中使用了批量归一化层和残差网络结构,有效防止模型过拟合,提高模型整体训练速度和精度;最后在改进的轻量级卷积神经网络中加入了无参注意力机制,关注重点特征信息,提高分类准确率等等。

其中,所采用的技术方案具体实施方式如下步骤:

步骤1、二进制代码可视化,首先将每个8位二进制文件视为一串0和1的序列,并将其读取为无符号整数表示,可以得到一个二维矩阵。通过将这个矩阵转化为图像,可以得到一个灰度图像,其中每个像素的灰度值代表了对应的二进制文件中的值。具体来说假如一个位串是0010000000101100,那么这个过程就是0010000000101100→00100000,00101110→32 46。一个八位二进制数B=(b

I=b

步骤2、图像尺寸归一化,因为卷积和池化操作对图像的输入尺寸和通道数有一定的要求,如果输入图像的尺寸和通道数不匹配,会影响网络的训练和性能,甚至导致训练失败。因此,需要对输入图像尺寸进行归一化。为了使归一化后的图片还能保持原有的纹理特征,使用双线性插值来调整恶意代码图像的大小,因为它的计算复杂度降低,而且分类器性能强。双线性插值法是通过在已知的四个邻近点的像素值之间进行线性插值,来估计目标位置的像素值。假设已知目标位置(x,y)的四个邻近点的坐标为(x

对这四个插值点进行双线性插值,得到要求的值,过程如下式所示。

步骤3、生成RGB图像,使用深度学习模型进行图像分类时,RGB图像中每个像素的三个通道可以提供更丰富的信息,可能有助于提高模型的分类精度。将灰度图转化为RGB图像的过程中,将灰度值复制到三个通道中。

步骤4、数据增强,高质量的数据对于机器学习和深度学习任务至关重要。如果训练模型使用粗糙的数据样本,那么将会影响模型的质量和性能。相反,由高质量数据训练的模型更加健壮,能够避免过拟合问题,并且可以快速训练得到高效的模型。恶意代码通常由多个家族组成,每个家族的样本数量差异很大,这种数据的变化会对训练模型的准确性和鲁棒性造成负面影响。为了解决这个问题,可以采用数据增强技术来提高数据质量。通过改变、扩展和润色现有的数据,可以生成更多、更丰富的数据样本。这种方法可以增加数据的多样性,使得模型可以更好地处理各种情况,从而提高模型的性能和准确性。数据增强技术适用于各种机器学习和深度学习任务。自生成对抗网络模型生成与真实数据更相似的合成数据。

自注意力机制模块首先将前一个隐藏层的特征图像

在训练的过程中,持续进行更新。引入特征空间的目的在于刻画各个位置之间的相互作用,以获得特征矩阵之间的注意力关联。

s

其中,β

注意层的输出是

h(x

其中,

y

其中,γ是一个可学习的标量,初始化设置为0。引入γ的原因是让神经网络首先关注局部的特征,然后再逐渐增加非局部位置更多的权重。这也是加入自注意力层的优势之一,可以先学习简单的任务,然后逐渐增加任务的难度。

步骤5、特征提取与分类,为了改进卷积神经网络中层之间的信息传递,使用一种新的连接模式,类似于DenseNet的结构。这种连接模式由一个池化层和一个fire模块组成,将池化层和fire模块concat后的结果作为下一个卷积层的输入。

借鉴了ResNet的结构,提出由池化层和Fire模块组成的不同构建块。最后,在两层相加后,将其连接到下一卷积层。

为了更好的重点关注主要特征,提高模型分类的准确性。还在模型最后一个卷积层后加入了无参注意力模块simAM。

相关技术
  • 在时变信道上接收发射信号的方法及其接收器
  • 用于发射数据传输信号的发射器和用于接收该数据传输信号的接收器,该发射器和接收器中每个都可以取决于附加的信息信号而在编码方案和/或调制方案之间切换
技术分类

06120116520517