[发明专利]基于反汇编代码结构和语义特征的恶意软件家族分类方法有效
申请号: | 202110571280.1 | 申请日: | 2021-05-25 |
公开(公告)号: | CN113434858B | 公开(公告)日: | 2022-11-01 |
发明(设计)人: | 刘爽;陈冠宏 | 申请(专利权)人: | 天津大学 |
主分类号: | G06F21/56 | 分类号: | G06F21/56;G06N3/04;G06N3/08;G06K9/62 |
代理公司: | 天津市北洋有限责任专利代理事务所 12201 | 代理人: | 刘子文 |
地址: | 300350 天津市津南区海*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 汇编 代码 结构 语义 特征 恶意 软件 家族 分类 方法 | ||
1.基于反汇编代码结构和语义特征的恶意软件家族分类方法,其特征在于,包括以下步骤:
(1)使用反汇编工具对二进制文件进行解析,得到二进制文件的汇编代码表示,这种表示利用.asm文件进行存储,通过再对.asm文件进行解析,得到二进制文件的汇编级别控制流图;利用反汇编工具进行反汇编得到.asm文件,并在.asm文件基础上,整理得到二进制文件的控制流图结构;
(2)使用自然语言处理技术的经典模型以及语料库进行预训练,得到汇编代码的语义向量表示;使用word2vec模型对汇编代码单词进行嵌入,再利用预训练的LSTM模型对汇编序列进行嵌入,得到以向量表示节点语义信息的控制流图;
对于Word2Vec模型,使用到的是开源的Gensim模块中的Word2Vec模型;实施过程中,所有的恶意软件的汇编语言代码都将参与训练;设置词向量维度为16维,窗口大小为3,最小词频为5;并在处理初始语料时,对单词进行归一化处理,将语料按照模式进行归一处理,用于缩小词表的大小;最终生成6000的词表大小;
对于LSTM模型,采取Bi-LSTM即双向LSTM模型,从正序逆序两个方向获取序列的特征,双向LSTM模型即在单向的基础上添加逆序的结构;其中,隐层大小为16维,深度为2层,学习率0.003,采用Adam优化器;首先根据控制流图结构,提取一个执行路径下的若干个block作为正样本,随机替换路径中的某个block信息,作为需要被检测出来的负样本;利用双向LSTM模型得到序列的向量表示,将该向量表示经过全连接层,得到最终的判断结果;训练完成后抽取出双向LSTM模型作为嵌入模型用于后续模型训练,训练数据集采用.asm文件,以文件为单位将数据按照8:1:1比例划分为训练集、验证集、测试集;
(3)综合上述步骤得到的控制流图和语义向量表示,使用针对图结构的神经网络对二进制文件进行分类,确定恶意软件的家族,利用Structure2vec模型对(2)中得到的控制流图结构进行向量表示,然后利用神经网络对二进制文件进行最终的家族分类。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津大学,未经天津大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110571280.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种土动三轴试验土样装膜器
- 下一篇:一种杀菌抗病毒的熔喷滤材的制备方法