基于哈希变换的恶意软件深度学习检测鲁棒性增强方法
- 国知局
- 2024-07-31 23:09:20
本发明涉及对抗机器学习、网络空间安全,尤其涉及基于哈希变换的恶意软件深度学习检测鲁棒性增强方法。
背景技术:
1、恶意软件是网络安全的主要威胁。在万物互联、万物智能时代,随着相对开放的安卓应用系统的流行,恶意软件问题日益严重。为了快速应对大批量的恶意软件样本,机器学习技术已经广泛应用于恶意软件检测和分类任务。然而,相关实验表明机器学习模型容易受到对抗样本的攻击,使得基于机器学习的恶意软件检测器易被恶意软件对抗样本攻击。具体而言,对抗样本通过修改原恶意软件样本以规避检测,其中原恶意软件可被智能检测器正确检测,加扰后的恶意软件虽然依然保有恶意软件功能,但被归类为良性软件。
2、为了提升恶意软件深度检测器的鲁棒性以抵御对抗样本攻击,相关研究人员从调整输入、调整训练过程和调整网络架构等方式加强模型抗对抗样本攻击的能力。尽管在经验上增强了模型的鲁棒性,但总在后续的研究中被更强的攻击打败。尤其原因,防御的设计往往针对部分的攻击脆弱点且无法搜索到最优对抗样本以进行主动防御。换言之,以经验的方式所设计的防御虽能防御一些攻击,但可能被更强的攻击方法打败。特别是在对抗环境下,攻防之间往往形成动态环境。近年来,可证明的防御机制备受关注,其在一定的威胁模型下,可从理论上分析模型的鲁棒性,实现防御在针对威胁下的任何攻击。然而,此类防御技术主要集中在图像分类等研究领域,有待进一步拓展至恶意软件检测任务;
3、为此,设计基于哈希变换的恶意软件深度学习检测鲁棒性增强方法,用于对上述技术问题提供另一种技术方案。
技术实现思路
1、基于此,有必要针对上述技术问题,提供基于哈希变换的恶意软件深度学习检测鲁棒性增强方法,用于解决上述背景技术中提出的技术问题。
2、为了解决上述的技术问题,本发明采用了如下技术方案:
3、基于哈希变换的恶意软件深度学习检测鲁棒性增强方法,步骤如下:
4、s1:输入一个软件样本,通过特征提取算法提取样本特征;
5、s2:针对特征提取,采用哈希变换输入,构建哈希层;
6、s3:基于哈希层的神经网络建模;
7、s4:基于哈希层的神经网络模型训练;
8、s5:基于哈希层的神经网络模型部署。
9、作为本发明提供的所述的基于哈希变换的恶意软件深度学习检测鲁棒性增强方法的一种优选实施方式,所述s1步骤中,输入一个软件样本,通过特征提取算法提取样本特征,步骤如下:
10、从原始数据中识别和选择对于任务最为重要的信息进行特征提取;
11、将提取的特征数据分为三个不相交的集合,分别为训练集、验证集和测试集。
12、作为本发明提供的所述的基于哈希变换的恶意软件深度学习检测鲁棒性增强方法的一种优选实施方式,所述s2步骤中,对特征提取,采用哈希变换输入,构建哈希层,步骤如下:
13、a.从局部敏感哈希函数集中执行k次随机采样,得到函数{h1,h2,…,hk},将输入样本映射为哈希值,表达式如下:
14、
15、其中,hi(i=1,…,k)是哈希函数,将k个哈希函数对输入的映射结果组成一个向量;
16、b.重复步骤al次,得到哈希变换,表达式如下:
17、
18、其中,hlsh是l个向量组成的矩阵;
19、c.搜集训练数据集χ,计算数据哈希值并在哈希值构成的训练集上学习高度为d=4且叶子数为2d-1的决策树其中1≤j≤k,且n是向量的维度;
20、d.对于每一个决策树将其叶子如下标记为:
21、对应的路径上的叶子节点标记为“1”,其余2d-1-1的叶子标记为“0”,表达式如下:
22、
23、其中,
24、e.重复步骤c和步骤dl次,得到哈希变换,表达式如下:
25、
26、其中,hlsh是l个向量组成的矩阵。
27、作为本发明提供的所述的基于哈希变换的恶意软件深度学习检测鲁棒性增强方法的一种优选实施方式,所述s3步骤中,基于哈希层的神经网络建模,步骤如下:
28、a.根据所述s1步骤与所述s2步骤提取出原始样本对应的向量集合hlsh或者hlnh,将向量集合构造成矩阵或者平铺成向量,记为作为神经网络输入;
29、b.构造神经网络模型包括分类部分与对抗样本检测部分。
30、作为本发明提供的所述的基于哈希变换的恶意软件深度学习检测鲁棒性增强方法的一种优选实施方式,所述构造神经网络模型包括分类部分与对抗样本检测部分,步骤如下:
31、分类部分包含多个隐藏层与一个输出层,隐藏层非线性映射网络输入且输出层判断输入是否为恶意软件,记z'是一个以哈希矩阵为输入的神经网络;
32、对抗样本检测部分则通过去噪自主编码机构造,即其中,δ随机噪声。
33、作为本发明提供的所述的基于哈希变换的恶意软件深度学习检测鲁棒性增强方法的一种优选实施方式,所述s4步骤中,基于哈希层的神经网络模型训练,步骤如下:
34、①.输入训练样本集合通过哈希变换hlsh或hlnh构造的神经网络模型,首先将标量标签转换为独热编码标签
35、②.对于神经网络模型的分类任务部分,采用多分类损失函数,表达式如下:
36、
37、其中,是交叉熵分类损失函数,z'是一个以哈希矩阵为输入的神经网络,θc是神经网络的可训练参数,n表示样本数;
38、③.对于神经网络去噪自主编码机部分,采用重构损失函数表达式如下:
39、
40、其中,dae表示去噪自主编码机,δi表示对添加的随机噪声,表示添加操作,将哈希映射的向量集合构造成矩阵;
41、④.通过分类损失函数与重构损失函数形成损失函数来训练基于哈希层的神经网络,表达式如下
42、
43、其中,λd>0是一个超参数。
44、作为本发明提供的所述的基于哈希变换的恶意软件深度学习检测鲁棒性增强方法的一种优选实施方式,对于二进制的特征向量表示,重构损失可更换为交叉熵损失函数,表达式如下:
45、
46、随机噪声δ从中对噪声注入的概率进行采样,其中是高斯分布且n是向量维度。
47、作为本发明提供的所述的基于哈希变换的恶意软件深度学习检测鲁棒性增强方法的一种优选实施方式,所述s5步骤中,基于哈希层的神经网络模型部署,步骤如下:
48、1).神经网络用于分类部分正常部署,输入测试集中的恶意软件样本经过哈希变换层后进入神经网络模型,最后输出分类标签;
49、2).神经网络用于对抗样本检测模型通过dae的重构误差来决定是否为离群点。
50、作为本发明提供的所述的基于哈希变换的恶意软件深度学习检测鲁棒性增强方法的一种优选实施方式,所述2)步骤中,神经网络用于对抗样本检测模型通过dae的重构误差来决定是否为离群点,步骤如下:
51、在验证集上允许99.9%的样本可以通过dae得到超参数阈值tr;
52、输入样本经过哈希变换层后进入dae模型,计算重建损失;
53、若重建损失大于超参数tr则认为是离群点,否则不是。
54、可以毫无疑义的看出,通过本技术的上述的技术方案,必然可以解决本技术要解决的技术问题。
55、同时,通过以上技术方案,本发明至少具备以下有益效果:
56、本发明提供的基于哈希变换的恶意软件深度学习检测鲁棒性增强方法,通过构建基于哈希变换的恶意软件深度检测器提高鲁棒性;首先,对恶意软件进行特征提取,其可采用原恶意软件检测器中特征提取方法;然后,哈希层建模,针对特征类型设计局部敏感的哈希技术,其主要通过二层随机采样构建哈希映射函数;其次,建立基于哈希层的神经网络模型,含有恶意软件检测与离群点检测两个组成部分;再次,基于哈希层的神经网络训练,构造分类损失函数与样本特征重建损失函数在训练集上学习模型参数;最后,基于哈希层的神经网络模型部署,用于检测恶意软件及其对抗样本。该方法显著增强了恶意软件检测的安全保障水平。
本文地址:https://www.jishuxx.com/zhuanli/20240730/196125.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。