一种基于集成学习的恶意域名检测方法技术

技术编号:35038752 阅读:15 留言:0更新日期:2022-09-24 23:16
本发明专利技术公开了一种基于集成学习的恶意域名检测方法,包括:基于域名特征提取技术提取域名特征;基于特征选择算法对域名特征进行筛选;采用多种算法结合构建恶意域名检测模型;基于恶意域名检测模型,并采用集成学习的方式进行恶意域名检测。本发明专利技术通过在海量恶意域名数据库中,利用恶意域名和合法域名在字符特征和高级特征上的差别,通过融合多特征选择算法,优化域名特征、缩短检测时间,并使用多种分类器模型进行组合学习训练,提升恶意域名的检测效率和准确率,再通过集成方式将多个分类器结合在一起以优化恶意域名检测能力,使检测模型更加稳定与高效。型更加稳定与高效。型更加稳定与高效。

【技术实现步骤摘要】
一种基于集成学习的恶意域名检测方法


[0001]本专利技术属于网络空间安全领域,特别是涉及一种基于集成学习的恶意域名检测方法。

技术介绍

[0002]随着互联网的快速发展和普及,无论是个人,还是企业、政府等都受到了由恶意域名产生的巨大危害和恶劣影响。前产生恶意域名威胁的主要有两种方式,一是采用相关恶意算法(Domain Generation Algorithm,DGA)来生成大量域名,不断替换躲避检测;另外一种是通过更换服务器逃脱防御者的检测。在传统的解决方案中主要是通过建立黑名单列表和逆向工程。但由于DGA能够在短时间内生成大量域名,且具有极大的随机性,所以通过传统建立黑名单等方式已经赶不上恶意域名的更新速度,故已不再能给相关用户、企业提供保护。
[0003]目前针对域名检测的主要方式分为基于域名DNS流量的检测和基于域名文本字符的检测两类,构建了较为高效的恶意域名检测模型,也很好地补足了传统检测方式的短板。但是,根据DGA生成算法的不同,会生成不同的家族域名,而不同DGA家族之间的突出特征往往存在不同,基于恶意域名某一方面的特征来进行检测判断,往往会导致检测模型针对不同家族的恶意域名时产生的效果也具有较大差异,就会出现漏检现象,同时也要根据不同家族构建不同的检测模型,在学习时间、检测时效上带来巨大的成本。

技术实现思路

[0004]本专利技术的目的是提供一种基于集成学习的恶意域名检测方法,以解决上述现有技术存在的问题。
[0005]为实现上述目的,本专利技术提供了一种基于集成学习的恶意域名检测方法,包括:
[0006]基于域名特征提取技术提取域名特征;
[0007]基于特征选择算法对所述域名特征进行筛选;
[0008]构建恶意域名检测模型;
[0009]基于所述恶意域名检测模型,采用集成学习的方式进行恶意域名检测。
[0010]可选地,所述域名特征包括:域名与平均长度距离、特殊字符比例、特殊字符个数、数字比例、连续辅音比例、最长连续辅音字符串长度、字母个数、连续辅音个数、辅音字母个数和N

Gram特征;
[0011]所述N

Gram特征的提取方法包括:
[0012]对域名进行粗切分、Gram切分,获取相关频度列表;
[0013]设定阈值并选取大于阈值的片段,将每个片段作为一个维度,形成特征向量表;
[0014]将所述特征向量表中的特征向量进行均值化处理作为域名的特征;所述N

Gram特征的距离计算公式如下:
[0015]D=|GN(s)|+|GN(t)|
‑2×
|GN(s)∩GN(t)|
[0016]其中,|GN(s)|表示N

Gram切分之后的合集,即两个域名之间共同字符串的个数,|GN(t)|表示被检测域名切分后的字符串个数。
[0017]可选地,筛选后的域名特征融合改进Relief特征选择算法和基于决策数的特征选择算法的筛选结果,其中:
[0018]所述改进Relief算法包括在Relief算法的基础上将数据集分割后并行处理;
[0019]所述基于决策树的特征选择法具体包括:按照特征选择标准从特征数据集中选择一个特征作为当前节点的分裂标准;基于所选特征的特征评估标准,生成子节点直至数据集不可再分;针对决策树的过拟合现象进行修剪。
[0020]可选地,所述特征评估标准采用基尼指数,计算方法为:
[0021][0022]可选地,构建所述恶意域名检测模型的过程中,采用XGBoost分类算法和多层感知器分类算法。
[0023]可选地,基于所述XGBoost分类算法构建所述恶意域名检测模型,计算公式为:
[0024][0025]其中,K表示分类回归树的总数,f
k
表示第k棵分类回归树,表示x
i
对应的预测结果;
[0026]在计算过程中,通过将学习速率设置为0.01以控制树的权重;将最大迭代次数设为100,计算过程中使用的损失函数公式为:
[0027][0028]其中,表示训练样本x
i
对应的误差,表示决策树模型对训练样本的预测损失或经验误差,Ω(f
k
)表示正则项(第k棵回归树),表示决策数模型的繁杂程度。
[0029]可选地,所述多层感知器分类算法中的多层感知器包括两层隐藏层,每层的神经元个数分别为5、2,随机数生成器的种子值为1;所述多层感知器分类算法中层与层之间的联系为:
[0030]H=f(W1X+B1)
[0031]其中,H表示多层感知器中层之间全连接计算所得的权重和,W表示权重值,B表示偏置值,f是激活函数,采用ReLU作为激活函数,ReLU函数的计算公式为:
[0032]ReLU=max(0,x)
[0033]在多层感知器模型的训练过程中,选择拟牛顿算法族的优化算法进行权重优化得到权重值;设置正则化项参数为1
×
10
‑5于控制平衡,防止过拟合显现。
[0034]可选地,采用集成学习的方式进行恶意域名检测的过程包括:
[0035]采用投票分类器将XGBoost分类算法和多层感知器分类算法相结合,获取整体分类器学习模型;
[0036]基于所述整体分类器学习模型,并采用软投票的方式进行恶意域名检测。
[0037]本专利技术的技术效果为:
[0038]本专利技术通过在海量的恶意域名数据库中,利用恶意域名和合法域名在字符特征和高级特征上的差别,使用改进的Relief特征选择算法和基于决策数的特征选择算法,分别筛选出权重值最高的6种特征进行融合,以减少域名的特征维度,降低计算复杂度,并使用多种分类器模型进行组合学习训练,提升恶意域名的检测效率和准确率,再通过集成方式将多个分类器结合在一起以优化恶意域名检测能力,使检测模型更加稳定与高效。
附图说明
[0039]构成本申请的一部分的附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0040]图1为本专利技术实施例中基于集成学习的恶意域名检测方法流程图;
[0041]图2为本专利技术实施例中的正常域名与DGA域名中元音字母比重分布图;
[0042]图3为本专利技术实施例中的正常域名与DGA域名的香农熵分布图;
[0043]图4为本专利技术实施例中的改进Relief算法特征选择流程图;
[0044]图5为本专利技术实施例中的基于决策树特征选择法流程图;
[0045]图6为本专利技术实施例中的XGBoost分类流程图;
[0046]图7为本专利技术实施例中的多层感知器架构示意图;
[0047]图8为本专利技术实施例中的集成学习软投票原理示意图。
具体实施方式
[0048]需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于集成学习的恶意域名检测方法,其特征在于,包括以下步骤:基于域名特征提取技术提取域名特征;基于特征选择算法对所述域名特征进行筛选;构建恶意域名检测模型;基于所述恶意域名检测模型,采用集成学习的方式进行恶意域名检测。2.根据权利要求1所述的基于集成学习的恶意域名检测方法,其特征在于,所述域名特征包括:域名与平均长度距离、特殊字符比例、特殊字符个数、数字比例、连续辅音比例、最长连续辅音字符串长度、字母个数、连续辅音个数、辅音字母个数和N

Gram特征;所述N

Gram特征的提取方法包括:对域名进行粗切分、Gram切分,获取相关频度列表;设定阈值并选取大于阈值的片段,将每个片段作为一个维度,形成特征向量表;将所述特征向量表中的特征向量进行均值化处理作为域名的特征;所述N

Gram特征的距离计算公式如下:D=|GN(s)|+|GN(t)|
‑2×
|GN(s)∩GN(t)|其中,|GN(s)|表示N

Gram切分之后的合集,即两个域名之间共同字符串的个数,|GN(t)|表示被检测域名切分后的字符串个数。3.根据权利要求1所述的基于集成学习的恶意域名检测方法,其特征在于,筛选后的域名特征融合改进Relief特征选择算法和基于决策数的特征选择算法的筛选结果,其中:所述改进Relief算法包括在Relief算法的基础上将数据集分割后并行处理;所述基于决策树的特征选择法具体包括:按照特征选择标准从特征数据集中选择一个特征作为当前节点的分裂标准;基于所选特征的特征评估标准,生成子节点直至数据集不可再分;针对决策树的过拟合现象进行修剪。4.根据权利要求3所述的基于集成学习的恶意域名检测方法,其特征在于,所述特征评估标准采用基尼指数,计算方法为:5.根据权利要求1...

【专利技术属性】
技术研发人员:游政贤茅剑林金良杨燕萍
申请(专利权)人:厦门吉快科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1