[发明专利]基于机器码字节流的端到端的深度学习恶意软件分类方法在审
| 申请号: | 202211566609.6 | 申请日: | 2022-12-07 |
| 公开(公告)号: | CN115987580A | 公开(公告)日: | 2023-04-18 |
| 发明(设计)人: | 李小勇;侯子晗;李灵慧;高雅丽;苑洁 | 申请(专利权)人: | 北京邮电大学 |
| 主分类号: | H04L9/40 | 分类号: | H04L9/40;G06N3/045;G06N3/08 |
| 代理公司: | 北京挺立专利事务所(普通合伙) 11265 | 代理人: | 高福勇 |
| 地址: | 100876 *** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 机器 码字 节流 端到端 深度 学习 恶意 软件 分类 方法 | ||
1.一种基于机器码字节流的端到端的深度学习恶意软件分类方法,其特征在于,包括以下步骤:
S1、以恶意软件样本机器码字节流为输入,经过恶意软件领域表示向量编码,输出恶意软件邻域信息;所述恶意软件领域表示向量编码利用一维卷积实现对恶意软件向量的纵向降维,利用一维池化实现对恶意软件向量的横向降维;
S2、恶意软件邻域信息经过恶意软件全区信息抽取模块,输出恶意软件全局信息;所述恶意软件全区信息抽取模块使用自注意力机制处理降维后的恶意软件表示向量;
S3、恶意软件邻域信息和全局信息共同输入残差链接模块,输出恶意软件表示向量;
S4、恶意软件表示向量经过分类输出模块的处理,输出恶意软件分类结果。
2.根据权利要求1所述的基于机器码字节流的端到端的深度学习恶意软件分类方法,其特征在于,步骤S1字节流输入前先修改机器码字节流的两个标志位来使样本无害化,然后截取前204800字节作为分类依据,将长度为204800的机器码字节流作为输入。
3.根据权利要求1所述的基于机器码字节流的端到端的深度学习恶意软件分类方法,其特征在于,所述步骤S1中恶意软件领域表示向量编码的过程为:
(1)首先将Embedding编码结果e经过一个参数独立的卷积层进行高维特征抽取得到两个(400*32)的向量cm和cp,卷积运算的公式如下所示:
其中x为输入向量,kernel为卷积核,i、j、p、q为卷积相对坐标;
(2)对cm和cp两个向量求Hadamard运算得到一个(400*32)的低维向量ch,Hadamard运算为向量按位相乘,其计算公式如下所示:
i为行号、j为列号 (2)
(3)然后对其进行一维池化降维,得到(400*1)的恶意软件中间向量表示rc,其计算公式如下所示:
i为行号、j为列号 (3)
卷积层Sigmoid激活函数计算公式如下所示:
其中x为输入值 (4)
Hadamard运算ReLU激活函数计算公式如下所示:
ReLU(x)=max(0,x) (5)
其中x为输入值。
4.根据权利要求1所述的基于机器码字节流的端到端的深度学习恶意软件分类方法,其特征在于,所述步骤S2中恶意软件全区信息抽取模块的过程为:
恶意软件表示向量rc经过重新排列形成(25*16)的向量,建模为一个包含25个单词的句子,每个单词由长度为16的向量表示,经过一个自注意力层提取恶意软件长距离之间的可用信息,得到一个(400*1)的恶意软件概要信息向量表示ra,自注意力机制计算公式如下所示:
其中words代表恶意软件表示向量rc转化成的25个长度为16的word组成的矩阵,WQ、WK、WV均为模型通过训练得到的参数矩阵,Q、K、V分别是25个word对应的自注意力机制中定义的查询、键、值三个向量组成的矩阵;
其中dk为Q、K的长度 (7)
采用8头注意力模型,最终输出结果ra为包含恶意软件全文信息的表示向量,公式如下所示:
其中i代表第i个注意力头,均为模型通过训练得到的参数矩阵,注意力机制的第i个头根据Q、K、V计算该注意力头的Qi、Ki、Vi,Qi、Ki、Vi分别是自注意力机制中定义的第i个注意力头的查询、键、值三个向量组成的矩阵,concat表示拼接各个头的计算结果,W0是模型通过训练得到的参数矩阵。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京邮电大学,未经北京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211566609.6/1.html,转载请声明来源钻瓜专利网。





