[发明专利]基于可解释性深度学习的恶意代码检测方法及装置有效
申请号: | 202310131156.2 | 申请日: | 2023-02-17 |
公开(公告)号: | CN115828248B | 公开(公告)日: | 2023-06-20 |
发明(设计)人: | 王振众;李震宇;张智超 | 申请(专利权)人: | 杭州未名信科科技有限公司;浙江省北大信息技术高等研究院 |
主分类号: | G06F21/56 | 分类号: | G06F21/56;G06F18/22;G06N3/084;G06N3/0464 |
代理公司: | 北京辰权知识产权代理有限公司 11619 | 代理人: | 尹倩倩 |
地址: | 311200 浙江省杭州市萧*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 解释性 深度 学习 恶意代码 检测 方法 装置 | ||
本发明涉及一种基于可解释性深度学习的恶意代码检测方法及装置,方法包括:获取目标代码,并基于目标代码确定对应的灰度图;基于预训练好的重参数化的恶意代码分类模型、恶意代码分类检测的可解释性模型以及目标代码对应的灰度图,确定并显示目标代码对应的灰度图的可解释性的第一相关分数矩阵;基于第一相关分数矩阵、各种类型的恶意代码对应的模板图和恶意代码分类检测的可解释性模型,确定并显示目标代码对应的灰度图和各种类型的恶意代码对应的模板图之间的相似度。基于此,能够在保证学习得到较丰富的目标代码的图像纹理特征的同时,实现高效地对恶意代码检测的预测结果进行可解释性推理及展示。
技术领域
本发明涉及人工智能技术领域,特别是涉及基于可解释性深度学习的恶意代码检测方法及装置。
背景技术
针对以浏览器和网页作为传播渠道的恶意代码检测,研究人员早期多从语法、语义层面理解程序行为,采用的方法主要为与恶意代码库的源程序或二进制码扫描匹配法。但恶意代码的数量和种类愈来愈多,代码混淆、代码变异、加密技术的兴起,也使得人工对恶意代码的收集、分类、录入、分析及评估的工作量日渐增加;研究人员因此将目光转移到自动化或半自动化的恶意代码检测方式上,目前较为流行的方式有两大类,分别是基于操作码序列特征的机器学习方法,以及通过采用图像特征提取技术反编译样本软件的十进制整型数据构成的灰度图进行预测与分类方法;但两类方法皆仅考虑了目标代码的图像纹理特征,维度单一,不能体现内部信息压缩和加密等部分。另外,深度学习模型的训练深度也带来了内存访问成本及计算并行度等问题,深度模型本身的“黑盒性”也给研究人员分析预测结果时带来输入数据与预测结果之间因果无法推理的问题。而当前的事后比较(Post-hoc)型的可解释性模型存在推理时间缓慢,缓存占用率高,效率低下的问题。
因此,如何能够在保证学习得到较丰富的目标代码的图像纹理特征同时,能够实现高效地对恶意代码检测的预测结果进行可解释性推理及展示是目前需要解决的一个技术问题。
发明内容
本发明提供一种基于可解释性深度学习的恶意代码检测方法及装置,用以解决现有技术中在保证学习得到较丰富的目标代码的图像纹理特征同时,高效地实现对恶意代码检测的预测结果进行可解释性推理及展示的问题,实现在保证学习得到较丰富的目标代码的图像纹理特征同时,高效地实现对恶意代码检测的预测结果进行可解释性推理及展示。
一种基于可解释性深度学习的恶意代码检测方法,所述方法包括:获取目标代码,并基于所述目标代码确定对应的灰度图;基于预训练好的重参数化的恶意代码分类模型、恶意代码分类检测的可解释性模型以及所述目标代码对应的灰度图,确定并显示所述目标代码对应的灰度图的可解释性的第一相关分数矩阵;其中,所述预训练好的重参数化的恶意代码分类模型为深度学习模型,用于提取所述目标代码对应的灰度图中的丰富的特征,并用于确定所述目标代码中的恶意代码的目标类型;所述恶意代码分类检测的可解释性模型中包括最大二叉堆模型和目标可解释性模型;基于所述第一相关分数矩阵、各种类型的恶意代码对应的模板图和所述恶意代码分类检测的可解释性模型,确定并显示所述目标代码对应的灰度图和各种类型的恶意代码对应的模板图之间的相似度。
在其中一个实施例中,所述预训练好的重参数化的恶意代码分类模型中包括预训练好的重参数化的特征提取模型,相应地,基于预训练好的重参数化的恶意代码分类模型、恶意代码分类检测的可解释性模型以及所述目标代码对应的灰度图,确定并显示所述目标代码对应的灰度图的可解释性的第一相关分数矩阵,包括:基于所述预训练好的重参数化的特征提取模型以及所述目标代码对应的灰度图,确定前向传播过程中所述重参数化的特征提取模型中每一层神经元提取的所述目标代码对应的灰度图的第一特征;根据所述目标可解释性模型,基于上一层每个神经元对应的第一特征以及所述重参数化的特征提取模型中当前层各个神经元与上一层的每个神经元之间的权重,确定上一层的每个神经元的第一相关分数;基于反向传播过程,所述最大二叉堆模型以及上一层的神经元对应的第一相关分数向量,确定上一层的前n层的神经元的第二相关分数向量;其中,n为大于或等于1的整数;基于所述第二相关分数向量,确定并显示输入层中多个神经元对应的第一相关分数矩阵。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州未名信科科技有限公司;浙江省北大信息技术高等研究院,未经杭州未名信科科技有限公司;浙江省北大信息技术高等研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310131156.2/2.html,转载请声明来源钻瓜专利网。