[发明专利]面向恶意软件汇编格式检测模型的黑盒攻击的防御方法有效
申请号: | 201910672092.0 | 申请日: | 2019-07-24 |
公开(公告)号: | CN110633570B | 公开(公告)日: | 2021-05-11 |
发明(设计)人: | 陈晋音;邹健飞;袁俊坤 | 申请(专利权)人: | 浙江工业大学 |
主分类号: | G06F21/56 | 分类号: | G06F21/56;G06K9/62 |
代理公司: | 杭州天正专利事务所有限公司 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%的分类精度;
4)基于梯度下降的恶意软件汇编格式检测模型的白盒攻击,具体过程如下:
4.1)选择一个被分类为“恶意”的样本,概率0.5;
4.2)将样本的“0”填充字节重新进行随机初始化;
4.3)依次选择一个填充字节;
4.4)求出其他255个字节关于当前字节值在梯度方向上的投影距离与梯度的距离;
4.5)选择在梯度方向上的投影距离大于0且与梯度最近的字节,将其替换到该样本中形成对抗样本;
4.6)计算新的对抗样本被分类器预测的概率,若检测概率0.5则重复4.3、4.4、4.5、4.6四个步骤直到该对抗样本被分类器检测为良性软件,即概率0.5;
5)设计深度学习模型结构,并将它们作为用于迁移攻击的迁移分类器;
6)将初始的训练数据集划分为两部分,一部分用于MalConv的学习,一部分用于迁移分类器的学习;
7)将步骤4)说明的白盒攻击方法用于对训练完成的迁移分类器进行攻击,生成对抗样本;
8)将步骤7)获取的对抗样本对恶意软件汇编格式检测模型重训练进行优化,获得能够防御对抗攻击的恶意软件检测模型;
9)利用能够防御对抗攻击的恶意软件检测模型对恶意软件进行识别,能够防御对恶意软件检测模型的对抗攻击。
2.如权利要求1所述的面向恶意软件汇编格式检测模型的黑盒攻击的防御方法,其特征在于:所述步骤1)中,获取了9个恶意软件家族样本数据集,共10868个恶意软件样本;所述步骤2)中,考虑到实验的效率,为降低资源的使用,筛选100万以下大小字节量的文件作分析,经筛选后符合要求的是Ramnit和Keilhos_ver3两个恶意软件家族的样本,其中Ramnit有372个训练集样本,75个测试集样本,Keilhos_ver3有1976个训练集样本,505个测试集样本。
3.如权利要求1所述的面向恶意软件汇编格式检测模型的黑盒攻击的防御方法,其特征在于:在所述步骤3)中,除去输入层网络共5层,共528,512个参数,除去偏置值,且实际训练时由于前向、反向计算和优化器的使用,使用的参数量将增大对应倍数;通过网络的层次传递,输入的1000000*8大小的8通道输入数值矩阵,最后输出该样本被分类到2个不同类别的恶意软件的概率大小。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江工业大学,未经浙江工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910672092.0/1.html,转载请声明来源钻瓜专利网。