System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及对抗机器学习、网络空间安全,尤其涉及基于哈希变换的恶意软件深度学习检测鲁棒性增强方法。
技术介绍
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)步骤中,神经网络用于对抗样本检测模型本文档来自技高网...
【技术保护点】
1.基于哈希变换的恶意软件深度学习检测鲁棒性增强方法,其特征在于,步骤如下:
2.根据权利要求1所述的基于哈希变换的恶意软件深度学习检测鲁棒性增强方法,其特征在于,所述S1步骤中,输入一个软件样本,通过特征提取算法提取样本特征,步骤如下:
3.根据权利要求1所述的基于哈希变换的恶意软件深度学习检测鲁棒性增强方法,其特征在于,所述S2步骤中,对特征提取,采用哈希变换输入,构建哈希层,步骤如下:
4.根据权利要求1所述的基于哈希变换的恶意软件深度学习检测鲁棒性增强方法,其特征在于,所述S3步骤中,基于哈希层的神经网络建模,步骤如下:
5.根据权利要求4所述的基于哈希变换的恶意软件深度学习检测鲁棒性增强方法,其特征在于,所述构造神经网络模型包括分类部分与对抗样本检测部分,步骤如下:
6.根据权利要求4所述的基于哈希变换的恶意软件深度学习检测鲁棒性增强方法,其特征在于,所述S4步骤中,基于哈希层的神经网络模型训练,步骤如下:
7.根据权利要求6所述的基于哈希变换的恶意软件深度学习检测鲁棒性增强方法,其特征在于,对于二
8.根据权利要求7所述的基于哈希变换的恶意软件深度学习检测鲁棒性增强方法,其特征在于,所述S5步骤中,基于哈希层的神经网络模型部署,步骤如下:
9.根据权利要求8所述的基于哈希变换的恶意软件深度学习检测鲁棒性增强方法,其特征在于,所述2)步骤中,神经网络用于对抗样本检测模型通过DAE的重构误差来决定是否为离群点,步骤如下:
...【技术特征摘要】
1.基于哈希变换的恶意软件深度学习检测鲁棒性增强方法,其特征在于,步骤如下:
2.根据权利要求1所述的基于哈希变换的恶意软件深度学习检测鲁棒性增强方法,其特征在于,所述s1步骤中,输入一个软件样本,通过特征提取算法提取样本特征,步骤如下:
3.根据权利要求1所述的基于哈希变换的恶意软件深度学习检测鲁棒性增强方法,其特征在于,所述s2步骤中,对特征提取,采用哈希变换输入,构建哈希层,步骤如下:
4.根据权利要求1所述的基于哈希变换的恶意软件深度学习检测鲁棒性增强方法,其特征在于,所述s3步骤中,基于哈希层的神经网络建模,步骤如下:
5.根据权利要求4所述的基于哈希变换的恶意软件深度学习检测鲁棒性增强方法,其特征在于,所述构造神经网络模型包括分类部分与...
【专利技术属性】
技术研发人员:李德强,曹建宇,任新一,杜哲凯,徐佳,代陈,
申请(专利权)人:南京邮电大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。