
技术摘要:
本发明属于计算机安全技术领域,具体涉及一种基于PE头可视化的恶意软件分类方法。本发明能够将恶意软件PE头可视化,通过将PE头转化成灰度图像,把恶意软件分类问题转化为图像分类问题。本发明使用恶意软件的灰度图像、PE头中的字段对恶意软件进行分类,并提出将PE头中 全部
背景技术:
伴随着互联网技术的高速发展,人们对互联网的应用越来越多并且对各种软件的 依赖性显著增强,这为恶意软件的入侵和传播带来极大的便利。各种自动化工具的层出不 穷,恶意软件在互联网上的的衍生速度远远超过被人们发现的速度。例如2018年第3季度 McAfee实验室每天检测8.5亿个恶意文件。虽然恶意软件的衍生速度越来越快,但是绝大部 分的恶意软件都是通过已知恶意软件的多态和变形演化而来。比如,一份来自Symantec的 报告显示2018年发现的4.1亿恶意代码中2.46亿新的恶意代码均来源于变体。因此,攻击组 织溯源、运行环境还原以及攻击防范问题对发现样本中的同源关系具有十分重要的作用。 目前,通过判断恶意软件在特征提取时是否执行,可将恶意软件检测技术分为静 态检测和动态检测,这两种检测技术大部分是源于特征工程。但基于特征工程的检测方法 都存在一些问题,比如静态检测易受到混淆技术的影响,动态检测或许无法覆盖所有的执 行路径。而使用灰度图像代替特征工程的恶意软件可视化方法,虽然可以在一定程度上缓 解对于静态分析存在的缺点,但是也带来了提取图像纹理特征耗时较长的问题。 综上所述,尽管相关人员对识别恶意软件的变体做了很多的研究工作,但是恶意 软件攻击仍然泛滥。针对现行灰度图像纹理特征提取耗时较长,实用性不强等缺点,研究适 用面广、实用性强的恶意软件变体识别技术来提高计算机系统的安全性具有非常重要的科 学理论价值与实际应用意义。
技术实现要素:
本发明的目的在于提供一种基于PE头可视化的恶意软件分类方法。 本发明的目的通过如下技术方案来实现:包括以下步骤: 步骤1:输入待分类的恶意软件样本数据集,取部分样本构建训练集; 步骤2:从训练集中选择一个恶意软件样本,从恶意软件样本的PE头中提取可选头 特征; 步骤3:将提取的可选头特征转化为二进制文件; 步骤4:将二进制文件中每8个字节为一块进行分割,并转化成灰度值存储在一维 灰度数组中; 步骤5:将一维灰度数组转化成二维灰度矩阵,将二维灰度矩阵转化成灰度图像; 步骤6:若训练集中所有恶意软件样本均转化成灰度图像,则执行步骤7;否则,返 回步骤2; 步骤7:用训练集训练卷积神经网络模型,得到可识别恶意软件家族的卷积神经网 络分类器; 3 CN 111552965 A 说 明 书 2/4 页 步骤8:将其它待分类的恶意软件样本数据集输入到卷积神经网络分类器中,得到 分类结果。 本发明还可以包括: 所述的步骤4中将二进制文件中每8个字节为一块进行分割,并转化成灰度值存储 在一维灰度数组中的方法具体为:将可选头中的每8位二进制用0-255范围内的无符号整数 表示,其中0代表白色,255代表黑色。 所述的步骤7中卷积神经网络模型具体为:卷积神经网络中卷积层依靠特定的滤 波器提取特征图中的高级特征,池化层主要以采样原理进行降采样;在卷积层中,对于每一 个卷积层包含的3组不同尺寸的卷积核,分别为1×1、3×3、5×5,将步长设置为1;在特征图 周围填充0,确保3种卷积核提取的特征图和输入特征图的尺寸完全相同;然后,卷积层的输 出组合作为每个池化层输入,池化层采用最大池化,其窗口大小为2*2,步长为2;最后,在第 二个池化层之后,输出特征图,并连接到两个全连接层和一个的输出层;卷积层和全连接层 采用激活函数,并在每个激活函数之后增加一个归一化层。 本发明的有益效果在于: 本发明提供了一种基于PE头可视化的恶意软件分类方法。本发明能够将恶意软件 PE头可视化,通过将PE头转化成灰度图像,把恶意软件分类问题转化为图像分类问题。本发 明使用恶意软件的灰度图像、PE头中的字段对恶意软件进行分类,并提出将PE头中的可选 头字段代表恶意软件的新方法。本发明具有较高的分类精度和较快的分类速度。 附图说明 图1为一种基于PE头可视化的恶意软件分类方法的流程图。 图2为本发明中可选头特征生成灰度图像的流程图。 图3为本发明提供的卷积神经网络架构图。