[发明专利]基于Bi-LSTM和自注意力的恶意代码检测方法及系统在审
申请号: | 202010470523.8 | 申请日: | 2020-05-28 |
公开(公告)号: | CN111723368A | 公开(公告)日: | 2020-09-29 |
发明(设计)人: | 唐永旺;王刚;郭志刚;陈刚;魏晗;郑治中;席耀一 | 申请(专利权)人: | 中国人民解放军战略支援部队信息工程大学 |
主分类号: | G06F21/56 | 分类号: | G06F21/56;G06N3/04;G06N3/08;G06N20/00;G06K9/62 |
代理公司: | 郑州大通专利商标代理有限公司 41111 | 代理人: | 周艳巧 |
地址: | 450000 河*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 bi lstm 注意力 恶意代码 检测 方法 系统 | ||
本发明属于信息安全技术领域,特别涉及一种基于Bi‑LSTM和自注意力的恶意代码检测方法及系统,将恶意代码转换为长度统一的字节流序列,每个字节元素利用多维独热编码表示;采用双向长短时记忆Bi‑LSTM模型自动学习字节流序列特征,并输出各时间步的隐状态;利用自注意力机制对各时间步隐状态分配权重,将各隐状态的线性加权和作为样本序列的深层特征表示;对该深层特征表示进行全连接神经网络学习和分类,输出样本预测概率。本发明自动重点关注恶意代码中表现恶意行为的字节,通过Bi‑LSTM和自注意力机制结合获取深层特征表示,尽量避免代码检测中的人工处理分析,能够提高恶意代码检测准确率,降低其误报率,在信息安全等数据检测处理领域具有较好地应用前景。
技术领域
本发明属于信息安全技术领域,特别涉及一种基于Bi-LSTM和自注意力的恶意代码检测方法及系统。
背景技术
恶意代码是指故意编制或设置的、对网络或系统会产生威胁或潜在威胁的计算机代码。最常见的恶意代码有计算机病毒、特洛伊木马、计算机蠕虫、后门、逻辑炸弹等。恶意代码随着互联网的蓬勃发展而不断发展,现在呈现出变种数量多、传播速度快、影响范围广的特点。根据Symantec公司的报告每天有将近百万的变种病毒在互联网中横行,己经成为威胁互联网安全的关键因素之一。传统的主流恶意代码检测技术可分为两类:基于签名特征码和基于启发式规则的检测方法。基于启发式规则的检测方法通过专业的研究人员分析恶意代码进行规则制定,并依照制定的规则对代码样本进行检测,但该方法的规则严重依赖人工选取,容易引起高误报率。另外,面对日益庞大的恶意代码数量,仅依赖人工进行恶意代码分析变得愈发困难。基于签名特征码的检测方法根据恶意代码二进制文件的特征码,在恶意代码库中通过模式匹配的方式检测恶意代码,该方法具有速度快、效率高、误报率低等优点,是当前网络安全公司广泛采用的方法。然而,该方法没有利用恶意代码样本的深层特征进行分类,恶意代码经过简单变形或者混淆即可躲避该方法的检测。
恶意代码检测的本质是一个分类问题,即把待检测样本区分成恶意或合法的程序。从早期的机器学习算法如K近邻算法(K-Nearest Neighbors,K-NN),决策树(DecisionTree,DT),支持向量机(Support Vector Machines,SVM),随机森林(Random Forest,RF)等,到深度学习模型如卷积神经网络(Convolutional Neural Networks,CNN)、循环神经网络(Recurrent Neural Network,RNN)、生成式对抗神经网络(Generative AdversarialNets,GANs)等多数应用于分类问题。例如抽取恶意代码的元数据特征、编译的特征、DLL特征和引入函数特征,生成28维的特征向量,利用K近邻,决策树,支持向量机,随机森林等实现恶意代码分类。CNN多被应用于计算机视觉领域,对图像、视频等数据进行识别分类;RNN多被应用于自然语言处理领域,擅长处理序列数据分类问题。鉴于深度学习自动提取数据深层特征的优点,深度学习算法下的恶意代码检测思想被提出,目前是业内研究的热点。将Android app所需权限,敏感API和某些动态行为相结合提取200维的特征向量,通过深度置信网络训练Android恶意app的分类器。结合Android app的动态特征(文件操作、网络行为等)和静态特征(app名字,app结构,权限需求等),提取特征向量后训练Android app分类器。从恶意代码上下文比特、PE端口号和PE元数据中提取1024维特征向量,利用3层的神经网络模型和分数校准模型训练恶意代码分类器。但,在实际环境中,一些恶意代码具有很强的反沙箱技术,一旦恶意代码发现自身正在被分析,它会切换运行流程,避免被查杀,动态特征难以提取。另外,这些方法在提取特征时还是建立在人工分析、制定规则的前提下,并没有实现真正的智能化,而且人工分析时并没有通过分析整个恶意代码获取恶意代码的深层特征,这样会丢失一些存在于代码本身的逻辑关联特征,如果恶意代码改变格式约定,隐藏恶意代码片段的区域,以上方法就无法正确区分恶意代码。RNN虽可以挖掘恶意代码字节序列数据中的逻辑关系特征,以RNN最后一个时刻的隐状态或者各时刻隐状态的拼接作为提取的关联特征。但是,该特征无法突出表现恶意行为的端口、函数等之间的调用关系特征。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军战略支援部队信息工程大学,未经中国人民解放军战略支援部队信息工程大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010470523.8/2.html,转载请声明来源钻瓜专利网。