一种恶意代码识别方法及装置、存储介质、终端设备制造方法及图纸

技术编号:37616549 阅读:9 留言:0更新日期:2023-05-18 12:08
本发明专利技术涉及恶意代码识别,具体涉及一种恶意代码识别方法及装置、存储介质、终端设备,目的是解决现有技术识别未知恶意代码效果不佳的技术问题,本发明专利技术提供一种恶意代码识别方法及装置、存储介质、终端设备,该方法包括以下步骤:加载PE文件数据集,并将其转化为灰度图像集;采用Gamma算法对该灰度图像集进行数据增强处理,得到灰度增强图像集;基于图像纹理特征对所得灰度增强图像集进行特征提取;建立恶意代码模型,并将提取到的图像纹理特征与灰度增强图像集作为输入,对该模型进行训练,得到恶意代码训练模型;加载待识别PE文件;利用上述恶意代码训练模型进行检测;根据检测结果输出待识别PE文件的文件类型。出待识别PE文件的文件类型。出待识别PE文件的文件类型。

【技术实现步骤摘要】
一种恶意代码识别方法及装置、存储介质、终端设备


[0001]本专利技术涉及恶意代码识别,具体涉及一种恶意代码识别方法及装置、存储介质、终端设备。

技术介绍

[0002]随着信息技术的发展,恶意代码的攻击频率呈几何级增长,恶意代码变体成为信息安全的重要威胁,其中,以PE(Portable Executable)文件类型为代表的木马、病毒、蠕虫等恶意代码造成的影响最为广泛。现有技术中,通常采用静态检测或动态监测技术对恶意代码进行检测,但是,传统的静态检测技术对未知代码和恶意代码变种的检测能力不足,而动态检测虽然能够有效检测出未知代码和恶意代码变种,具有较好的泛化能力,但其缺点是误报率和漏报率较高。除此之外,机器学习也常用于恶意代码识别,通常采用随机森林算法或支持向量算法,虽然上述机器学习分析方法能够区分良性文件与恶意代码文件,以及检测已知或未知的恶意代码及其变体,但是这些方法的检测精度较低,实时性差,并且检测效果依赖于分析人员的经验。而且,面对规模日益庞大且增长迅速的恶意代码库,无论使用静态检测还是动态监测,都已经不能满足实时分析的需求,对未知恶意代码的甄别很难实现精准化识别。

技术实现思路

[0003]本专利技术的目的是解决现有技术在识别未知恶意代码时识别效果不佳的技术问题,提供一种恶意代码识别方法及装置、存储介质、终端设备。
[0004]为解决上述技术问题,本专利技术提供的技术解决方案如下:
[0005]一种恶意代码识别方法,其特殊之处在于:包括以下步骤:
[0006]步骤1,加载PE文件数据集,并将其按照一定比例分为训练集与验证集,其中,所述PE文件数据集包括良性文件与恶意代码文件;
[0007]步骤2,将训练集、验证集分别通过文件像素化转化为第一灰度图像集、第二灰度图像集;
[0008]或者,将训练集、验证集分别通过文件像素化转化为第一灰度图像集、第二灰度图像集,并通过Gamma算法对所得第一灰度图像集、第二灰度图像集进行数据增强处理,得到第一灰度增强图像集、第二灰度增强图像集;
[0009]步骤3,基于图像纹理特征对所得第一灰度图像集或第一灰度增强图像集、所得第二灰度图像集或第二灰度增强图像集进行特征提取,得到第一特征向量、第二特征向量;
[0010]步骤4,建立恶意代码模型,所述恶意代码模型包括多层神经网络模型;
[0011]步骤5,通过所述第一特征向量、第一灰度图像集或第一灰度增强图像集,以及所述第二特征向量、第二灰度图像集或第二灰度增强图像集,对所述恶意代码模型进行训练,得到恶意代码训练模型;
[0012]步骤6,加载待识别PE文件,并将所述待识别PE文件通过文件像素化转化为待识别
灰度图像;
[0013]步骤7,根据所得恶意代码训练模型,对所述待识别灰度图像进行检测,得到检测结果;
[0014]步骤8,根据所得检测结果输出所述待识别PE文件的文件类型,若待识别PE文件为良性文件,则输出良性文件类号,若待识别PE文件为恶意代码文件,则输出恶意代码文件类号。
[0015]进一步地,所述多层神经网络模型包括:
[0016]输入层:输入所述第一特征向量,以及第一灰度图像集或第一灰度增强图像集;
[0017]输入所述第二特征向量,以及第二灰度图像集或第二灰度增强图像集;
[0018]卷积层:包括第一卷积层、第二卷积层及第三卷积层,均采用3
×
3的卷积核;
[0019]池化层:包括第一池化层、第二池化层及第三池化层,均采用最大池化方法,且池化宽度均设置为3
×
3;
[0020]Dropout层:包括第一Dropout层与第二Dropout层;
[0021]全连接层:包括第一全连接层、第二全连接层及第三全连接层,均采用Sigmoid分类器;
[0022]输出层:输出文件类型;
[0023]其中,输入层、第一卷积层、第一池化层、第二卷积层、第二池化层、第三卷积层、第三池化层、第一Dropout层、第一全连接层、第二Dropout层、第二全连接层、第三全连接层及输出层,依次进行数据连接。
[0024]进一步地,步骤2中,将训练集、验证集分别通过文件像素化转化为第一灰度图像集、第二灰度图像集,包括以下步骤:
[0025]步骤2.1,将训练集中每个PE文件的字节序列均转化为第一向量组,并将每个第一向量组均转化为与之对应的第一灰度值组;
[0026]将验证集中每个PE文件的字节序列均转化为第二向量组,并将每个第二向量组均转化为与之对应的第二灰度值组;
[0027]步骤2.2,根据所得第一灰度值组,生成与所述训练集一一对应的第一灰度图像集;
[0028]根据所得第二灰度值组,生成与所述验证集一一对应的第二灰度图像集。
[0029]进一步地,步骤3中,若所述训练集或验证集中存在不同大小的PE文件,则对所述训练集或验证集中的文件大小范围进行阶梯状划分,将不同大小的PE文件按照其文件大小所在的范围划分为不同类别,对不同类别的PE文件进行相应的图像宽度约束。
[0030]进一步地,步骤3中,选用SURF算法进行特征提取。
[0031]同时,本专利技术提供一种恶意代码识别装置,用于实现上述识别方法,其特殊之处在于:包括训练单元,以及依次连接的加载单元、识别单元、输出单元;
[0032]所述训练单元包括依次连接的获取模块、图像模块、特征提取模块及模型训练模块:
[0033]所述获取模块,用于获取PE文件数据集,并将其按照一定比例分为训练集与验证集;
[0034]所述图像模块,用于将训练集、验证集分别通过文件像素化转化为第一灰度图像
集、第二灰度图像集;
[0035]或者,将训练集、验证集分别通过文件像素化转化为第一灰度图像集、第二灰度图像集,并通过Gamma算法对所得第一灰度图像集、第二灰度图像集进行数据增强处理,得到第一灰度增强图像集、第二灰度增强图像集;
[0036]所述特征提取模块,用于基于图像纹理特征对所得第一灰度图像集或第一灰度增强图像集、所得第二灰度图像集或第二灰度增强图像集进行特征提取,得到第一特征向量、第二特征向量;
[0037]所述模型训练模块,用于建立恶意代码模型,并通过所述第一特征向量、第一灰度图像集或第一灰度增强图像集,以及所述第二特征向量、第二灰度图像集或第二灰度增强图像集,对所述恶意代码模型进行训练,得到恶意代码训练模型;
[0038]所述加载单元,用于加载待识别PE文件,并将所述待识别PE文件通过文件像素化转化为待识别灰度图像;
[0039]所述识别单元,用于根据恶意代码训练模型对所述待识别灰度图像进行检测,得到检测结果;
[0040]所述输出单元,用于根据所得检测结果输出所述待识别PE文件的文件类型,若待识别PE文件为良性文件,则输出良性文件类号,若待识别PE文件为恶意代码文件,则输出恶意代码文件类本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种恶意代码识别方法,其特征在于:包括以下步骤:步骤1,加载PE文件数据集,并将其按照一定比例分为训练集与验证集,其中,所述PE文件数据集包括良性文件与恶意代码文件;步骤2,将训练集、验证集分别通过文件像素化转化为第一灰度图像集、第二灰度图像集;或者,将训练集、验证集分别通过文件像素化转化为第一灰度图像集、第二灰度图像集,并通过Gamma算法对所得第一灰度图像集、第二灰度图像集进行数据增强处理,得到第一灰度增强图像集、第二灰度增强图像集;步骤3,基于图像纹理特征对所得第一灰度图像集或第一灰度增强图像集、所得第二灰度图像集或第二灰度增强图像集进行特征提取,得到第一特征向量、第二特征向量;步骤4,建立恶意代码模型,所述恶意代码模型包括多层神经网络模型;步骤5,通过所述第一特征向量、第一灰度图像集或第一灰度增强图像集,以及所述第二特征向量、第二灰度图像集或第二灰度增强图像集,对所述恶意代码模型进行训练,得到恶意代码训练模型;步骤6,加载待识别PE文件,并将所述待识别PE文件通过文件像素化转化为待识别灰度图像;步骤7,根据所得恶意代码训练模型,对所述待识别灰度图像进行检测,得到检测结果;步骤8,根据所得检测结果输出所述待识别PE文件的文件类型,若待识别PE文件为良性文件,则输出良性文件类号,若待识别PE文件为恶意代码文件,则输出恶意代码文件类号。2.根据权利要求1所述的一种恶意代码识别方法,其特征在于:所述多层神经网络模型包括:输入层I:输入所述第一特征向量,以及第一灰度图像集或第一灰度增强图像集;输入所述第二特征向量,以及第二灰度图像集或第二灰度增强图像集;卷积层:包括第一卷积层C1、第二卷积层C2及第三卷积层C3,均采用3
×
3的卷积核;池化层:包括第一池化层MP1、第二池化层MP2及第三池化层MP3,均采用最大池化方法,且池化宽度均设置为3
×
3;Dropout层:包括第一Dropout层D1与第二Dropout层D2;全连接层:包括第一全连接层F1、第二全连接层F1及第三全连接层F1,均采用Sigmoid分类器;输出层O:输出文件类型;其中,输入层I、第一卷积层C1、第一池化层MP1、第二卷积层C2、第二池化层MP2、第三卷积层C3、第三池化层MP3、第一Dropout层D1、第一全连接层F1、第二Dropout层D2、第二全连接层F2、第三全连接层F3及输出层O,依次进行数据连接。3.根据权利要求2所述的一种恶意代码识别方法,其特征在于:步骤2中,将训练集、验证集分别通过文件像素化转化为第一灰度图像集、第二灰度图像集,包括以下步骤:步骤2.1,将训练集中每个PE文件的字节序列均转化为第一向量组,并将每个第一向量组均转化为与之对应的第一灰度值组;将验证集中每个...

【专利技术属性】
技术研发人员:张勇
申请(专利权)人:西安邮电大学
类型:发明
国别省市:

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

1