System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及恶意软件检测,尤其是涉及一种android恶意软件多分类动态检测方法和系统。
技术介绍
1、随着android应用程序的快速发展和多样化,其带来的android恶意软件攻击也日益严峻。android恶意软件检测方法大致可以分为静态分析方法、动态分析方法和混合分析方法三大类。gorment等人在2023年的一项研究结果显示大多数研究使用了静态分析,比例为53.3%,其次是动态分析,比例为28.9%,混合分析仅占17.8%。虽然,目前主流的基于静态分析的android恶意软件检测方法,尤其是基于签名的技术,能够有效识别已知的android恶意软件。然而,通过改变android恶意软件的代码结构和行为模式,使得基于静态分析的检测方法难以有效识别其真实意图,导致检测准确率下降。
2、为此,研究人员提出了基于android恶意软件行为的动态分析方法。通过android恶意软件在沙箱环境中的运行结果来检测android恶意软件。为了提高android恶意软件检测的准确率,机器学习(ml)算法被广泛采纳。aslan等人的研究表明,在检测已知android恶意软件以及未知android恶意软件方面,ml方法显示出了较好的效果。最近,梯度增强决策树(gradient boosting decision trees,gbdt)在许多研究中取得了优异的性能。而其中的轻量级梯度提升机(light gradient boosting machine,lightgbm)模型是一种改进的gbdt,具有训练速度更快,效率更高的优势。k
3、但是,lightgbm模型包含大量的超参数,其值的设定对模型的检测性能具有较大的影响。此外,由于超参数数量大、模型本身的复杂度高,以及非线性超参数之间的耦合性,手动参数调优的挑战性极大。由于超参数优化问题通常是非凸或不可微的优化问题,传统的优化方法可能获得局部而非全局最优解。而元启发式算法可以有效地求解超参数优化问题所属的复杂、大搜索空间和非凸优化问题的技术。如al ogaili等人提出了使用加权算术平均值改进鲸鱼优化算法的种群更新过程,并将改进后的算法用于进行特征选择来检测android恶意软件攻击。dong等人提出了一种使用莱维飞行改进烟花优化算法的初始化过程,并使用精英主义引导策略改进了算法的更新过程。之后将改进后的烟花优化算法应用于优化svm模型的超参数,并使用优化后的svm模型对android恶意软件进行检测。斑马优化算法(zebra optimization algorithm,zoa)是一种新型的元启发式算法,相较于传统的元启发式算法具有更好的性能。然而,zoa仍然存在收敛速度慢和陷入局部最优解的问题,导致其性能受限。
技术实现思路
1、本专利技术针对上述现有技术的缺点,本专利技术提出了一种基于改进的斑马优化算法(improved zebra optimization algorithm,izoa),并利用izoa算法优化lightgbm模型的超参数,并利用优化后的lightgbm模型对android恶意软件进行动态检测。
2、本专利技术所采用的技术方案包括以下步骤:
3、步骤1:构建izoa-lightgbm动态检测模型;
4、步骤2:对待测软件进行下载,获取软件的行为并收集其行为数据,将获取的数据进行预处理并输入到izoa-lightgbm动态检测模型;
5、具体地,观察恶意软件的行为并收集有关其行为的数据,这些数据包括系统调用、api调用、网络活动、文件系统操作等;
6、步骤3:利用izoa-lightgbm动态检测模型对待测软件进行检测,并输出检测结果。
7、进一步地,步骤1模型构建的具体步骤包括:
8、步骤1.1:初始化环境和参数;
9、步骤1.2:获取基于动态分析的android恶意软件数据集,并对数据集进行预处理;
10、步骤1.3:将预处理后的android恶意软件数据集划分为训练集、验证集和测试集;
11、步骤1.4:确定lightgbm模型待优化的超参数,初始化具有默认超参数的lightgbm模型;
12、步骤1.5:在训练集上,利用izoa算法对lightgbm模型的默认超参数进行优化,并通过验证集评估不同超参数组合的优化结果,选择最优的超参数组合;
13、步骤1.6:基于最优的超参数组合构建lightgbm模型;
14、步骤1.7:利用测试集评估步骤1.6构建的模型的性能,计算模型的各项评估指标,判断模型的各项指标是否达到预期阈值,若达到,则进入步骤1.8;否则,返回步骤1.5;
15、步骤1.8:输出测试通过的模型,将其作为izoa-lightgbm动态检测模型。
16、进一步地,lightgbm模型待优化的超参数包括:学习率、一个叶子节点所需的最小样本数、树的最大深度、每棵树上的叶子节点数量、特征值分箱的最大可能数量、叶子节点中的最小数据样本数、每次迭代中用于训练模型的特征子集的比例、控制训练数据的采样比例、进行bagging的频率、l1正则化、l2正则化。
17、进一步地,步骤1.5的具体步骤包括:
18、步骤1.5.1:初始化参数,参数包括斑马种群数量、lightgbm模型待优化超参数的最小值和最大值、最大迭代次数、控制扰动幅度、初始吸引度系数、调节吸引力衰减的速率;
19、步骤1.5.2:基于eobl算法初始化斑马种群,其中每只斑马对应于一组待优化的超参数值;
20、步骤1.5.3:计算种群中每个斑马的适应度函数值,选择种群中适应度函数值最小的斑马作为先锋斑马;
21、步骤1.5.4:根据下式计算斑马新位置:
22、
23、其中,为斑马ai的第j个超参数值的更新值,r为区间[0,1]内的随机数,pzj为先锋斑马第j个超参数值,
24、步骤1.5.5:利用以下的位置更新公式更新觅食阶段斑马的位置,若新位置的适应度函数值更小,则更新位置,否则,保留原位置:
25、
26、其中,为斑马ai的新位置;为新位置的适应度函数值,f(ai)为原位置的适应度函数值;
27、步骤1.5.6:在防御阶段,根据随机数p∈[0,1]的取值,通过下式计算斑马新位置:
28、
29、其中,m1表示逃跑策略,m2表示反击策略;t是当前迭代次数,t是最大迭代次数;β是一个常数,其值等于0.01;az表示斑马种群中除第i只之外的任意一只斑马的位置,azj为其第j个超参数的值;
30、步骤1.5.7:更新防御阶段的斑马位置,利用fds算法再次更新斑马位置;
31、步骤1.5.8:判断当前迭代是否遍历所有斑本文档来自技高网...
【技术保护点】
1.一种Android恶意软件多分类动态检测方法,其特征在于,包括以下步骤:
2.如权利要求1所述的一种Android恶意软件多分类动态检测方法,其特征在于,步骤1模型构建的具体步骤包括:
3.如权利要求1所述的一种Android恶意软件多分类动态检测方法,其特征在于,LightGBM模型待优化的超参数包括:学习率、一个叶子节点所需的最小样本数、树的最大深度、每棵树上的叶子节点数量、特征值分箱的最大可能数量、叶子节点中的最小数据样本数、每次迭代中用于训练模型的特征子集的比例、控制训练数据的采样比例、进行bagging的频率、L1正则化、L2正则化。
4.如权利要求2所述的一种Android恶意软件多分类动态检测方法,其特征在于,步骤1.5的具体步骤包括:
5.如权利要求2所述的一种Android恶意软件多分类动态检测方法,其特征在于,步骤1.5.2的具体步骤包括:
6.如权利要求2所述的一种Android恶意软件多分类动态检测方法,其特征在于,步骤1.5.7的具体步骤包括:
7.一种Android恶意软件多分
...【技术特征摘要】
1.一种android恶意软件多分类动态检测方法,其特征在于,包括以下步骤:
2.如权利要求1所述的一种android恶意软件多分类动态检测方法,其特征在于,步骤1模型构建的具体步骤包括:
3.如权利要求1所述的一种android恶意软件多分类动态检测方法,其特征在于,lightgbm模型待优化的超参数包括:学习率、一个叶子节点所需的最小样本数、树的最大深度、每棵树上的叶子节点数量、特征值分箱的最大可能数量、叶子节点中的最小数据样本数、每次迭代中用于训练模型的特征子集的比例、控制训练数据的采样比例、进行b...
【专利技术属性】
技术研发人员:李宏慧,周顺成,付学良,马莉莉,李靖,
申请(专利权)人:内蒙古农业大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。