[发明专利]一种基于深度学习的恶意软件检测方法有效

专利信息
申请号: 201910000661.7 申请日: 2019-01-02
公开(公告)号: CN109784056B 公开(公告)日: 2021-04-20
发明(设计)人: 陈炳才;任重儒;聂冰洋;余超 申请(专利权)人: 大连理工大学
主分类号: G06F21/56 分类号: G06F21/56;G06N3/04;G06N3/08
代理公司: 大连理工大学专利中心 21200 代理人: 温福雪;刘秋彤
地址: 116024 辽*** 国省代码: 辽宁;21
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明属于网络空间安全技术领域,设计了一种基于深度学习的恶意软件检测方法。该方法包含检测器和分类器两部分。检测器用来检测输入样本的合法性,分类器用来对合法样本进行预测来判断其是否为恶意样本。该方法不但能够有效检测出未知恶意软件或已知恶意软件的变种,而且能够有效识别出对抗样本攻击行为。与现有的基于深度学习的恶意软件检测模型相比,大幅度提高了检测模型的安全性和检测效率。
搜索关键词: 一种 基于 深度 学习 恶意 软件 检测 方法
【主权项】:
1.一种基于深度学习的恶意软件检测方法,其特征在于,步骤如下:第一步、收集恶意样本和良性样本,构建样本数据集;构建样本数据集的具体方法如下:收集两组带标签的PE文件组成一个数据集;第一组是恶意样本集,数据标签设置为1;第二组是良性样本集,数据标签设置为0;两组样本集所包含的文件数量相同,所有样本的大小均小于lMB,文件名设置为该文件的Hash值;第二步、构建卷积神经网络分类器,根据样本数据集对分类器进行训练,确定分类器内部参数;作为深度学习的代表算法之一,卷积神经网络分类器F所需要的所有层均能使用成熟的深度学习算法库来实现;对一个输入样本x,最大长度l,构建卷积神经网络分类器包含以下步骤:步骤2.1:数据预处理;x表示为离散字节序列x=(x1,x2...xm),m<l,其中xi∈{0,1,...,255};首先进行数据预处理,通过补0的形式生成固定长度为l的序列xpad;步骤2.2:词向量化;xpad经过词向量层E,映射为固定尺寸的向量矩阵e,记为e=E(xpad);步骤2.3:特征抽取;e分别送入两个一维卷积层Conv1和Conv2,两个卷积层中卷积核的大小sfilter和数量nfilter均相同;其中Conv1中的激活函数设置为Sigmoid,Conv2中的激活函数设置为Relu,得到C1=Conv1(e),C2=Conv2(e);步骤2.4:选取最显著特征;将C1和C2做对应元素相乘得到C,再通过全局最大池化层得到长度为nfilter的向量p=Maxpooling(C);步骤2.5:输出分类结果;将p送入全连接层W,最后通过Sigmoid层输出结果output=Sigmoid(W(p)),根据output值和给定的阈值threshold,来判定x是否为恶意软件;利用构建的样本数据集来训练卷积神经网络分类器F,最终确定其分类器的内部参数,具体步骤如下:步骤2.6:数据集划分;将样本数据集打乱并划分为训练集、验证集和测试集三个部分;步骤2.7:损失函数选取;选取交叉熵函数作为损失函数,损失函数值越小说明分类器越逼近真实的数据集;步骤2.8:训练分类器;将训练集中的样本及其对应的标签输入分类器,用Adam优化算法迭代地更新分类器的内部参数,使损失函数最小化;一次训练完成后用验证集来验证分类器性能防止过拟合,重复训练,并选择性能最优的参数进行保存;步骤2.9:性能测试;选择分类器最优的内部参数并设置为预测模式,将测试集的样本输入到分类器进行预测,将预测结果和真实标签进行比对;第三步、构建对抗样本检测器,待检测的样本首先将被送入对抗样本检测器来判断合法性;当待检测的样本是合法输入,则转交给分类器进行预测,通过预测结果来判断该样本是否为恶意样本,当待检测的样本是非法输入,则标记为对抗样本直接丢弃;检测器首先获取输入样本的特定属性,然后通过对数据库中表的查询、插入和更新等操作来识别和记录对抗攻击行为;对一个待检测样本x,包含以下步骤:步骤3.1:获取文件特定属性;根据PE文件格式解析出x中可执行代码段的数据记为xcode,对其做哈希操作得到Hash(xcode),将整个输入文件做哈希得到Hash(x),获取当前时间得到tnow;步骤3.2:识别攻击行为;特征数据库中的Identify表用来记录对抗样本攻击行为;将Hash(xcode)作为索引查询Identify表中是否存在记录,当存在记录r时,则取出这条记录的所有字段(rnum,rhash,rtime);其中rnum为该记录被检测出存在攻击行为的次数,rhash为插入该条记录时获得的输入样本哈希值、rtime为插入该条记录时的时间戳;将r中的字段和x的相关属性进行对比,当rnum大于阈值N且Hash(x)≠rhash时,则判定x为非法输入并丢弃,并更新该条记录的rnum字段为rnum+1,否则判定x为恶意样本;步骤3.3:分类器预测;当记录r不存在时,则表示x为合法输入,接着送入分类器F进行预测来判断x是否为恶意样本;是恶意样本,则将(Hash(xcode),1,Hash(x),tnow)作为一条新的记录插入数据库的Identify表中;步骤3.4:定期数据清理;定期扫描数据库中的Identify表,根据设定的阈值T,将(tnow‑rtime)>T的记录删除。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于大连理工大学,未经大连理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201910000661.7/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top