[发明专利]基于深度学习的恶意软件汇编格式的检测方法在审
申请号: | 201910671549.6 | 申请日: | 2019-07-24 |
公开(公告)号: | CN110647745A | 公开(公告)日: | 2020-01-03 |
发明(设计)人: | 陈晋音;邹健飞;袁俊坤 | 申请(专利权)人: | 浙江工业大学 |
主分类号: | G06F21/56 | 分类号: | G06F21/56;G06K9/62;G06N3/04;G06N3/08 |
代理公司: | 33201 杭州天正专利事务所有限公司 | 代理人: | 王兵;黄美娟 |
地址: | 310014 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 恶意软件 检测 卷积神经网络 样本数据 分类器 构建 汇编 汇编语言文件 处理和分析 分类检测 数值矩阵 网络模型 学习算法 原始文件 卷积核 大池 算法 样本 保存 分类 学习 网络 | ||
1.一种基于深度学习的恶意软件汇编格式的检测方法,其特征在于:所述方法包括以下步骤:
1)构建恶意软件样本数据集。过程如下:
1.1)收集各个恶意软件家族样本数据集,数据以“.asm”后缀的汇编语言文件类型保存;
1.2)考虑各个类别的样本数量差异以及为便于后续的工作,将各个类别数据集以训练集占比约80%、测试集占比约20%的比例划分;
2)恶意软件汇编格式的处理,过程如下:
2.1)考虑到实验的效率,为降低资源的使用,筛选100万以下大小字节量的文件作分析,同时将文件的每个字符通过ASCII映射到0-255区间范围,在序列的末尾添加“0”的方式填充为100万大小的定长数组;
2.2)再使用PyTorch的Embedding函数随机生成256×8大小的映射矩阵将每一位字节映射为8位长度的向量;
2.3)最终形成1000000*8大小的8通道输入数值矩阵;
3)构建卷积神经网络分类器。卷积神经网络作为经典的深度学习网络,被广泛地应用在计算机分类任务中。对输入大小为1000000*8大小的8通道输入数值矩阵,构建卷积神经网络分类器,过程如下:
3.1)将步骤2.3)获取的8通道输入数值矩阵的前四个通道和后四个通道分别通过128个500*4大小的卷积进行一维卷积,分别为卷积层1.1、卷积层1.2,其中卷积层1.1的输出通过Sigmoid激活函数,另一个不作处理,步长均为500;
3.2)将步骤3.1)获得的两个卷积层的卷积结果通过一个乘积层2进行对应位相乘的哈达玛积运算;
3.3)将步骤3.2)获取的运算结果通过池化层3进行全局最大值池化,形成128×1大小的高维特征序列,最大限度地降低资源消耗;
3.4)将步骤3.3)获取的序列通过两个全连接层分别为全连接层4和全连接层5以输出预测数值;
3.5)最后经过Sigmoid层运用Sigmoid函数输出0-1之间的分类概率,实验最终达到了99.83%的分类精度。
2.如权利要求1所述的基于深度学习的恶意软件汇编格式的检测方法,其特征在于:所述步骤1)中,获取了9个恶意软件家族样本数据集,共10868个恶意软件样本,且样本为以“.asm”后缀的汇编语言文件;所述步骤2)中,考虑到实验的效率,为降低资源的使用,筛选100万以下大小字节量的文件作分析,同时将文件的每个字符通过ASCII映射到0-255区间范围,在序列的末尾添加“0”的方式填充为100万大小的定长数组。
3.如权利要求1所述的基于深度学习的恶意软件汇编格式的检测方法,其特征在于:在所述步骤3)中,除去输入层网络共5层,共528,512个参数,除去偏置值,且实际训练时由于前向、反向计算和优化器的使用,使用的参数量将增大对应倍数。通过网络的层次传递,输入的1000000*8大小的8通道输入数值矩阵,最后输出该样本被分类到2个不同类别的恶意软件的概率大小。
4.如权利要求1所述的基于深度学习的恶意软件汇编格式的检测方法,其特征在于:在所述步骤3.5)中,实验最终达到了99.83%的分类精度,其中精度为分类正确的样本占总样本的比例,精度的计算公式如下:
其中f(xi)为分类器对样本i的分类结果,yi为样本真实的标签,样本总数为n。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江工业大学,未经浙江工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910671549.6/1.html,转载请声明来源钻瓜专利网。