一种恶意域名检测方法及装置制造方法及图纸

技术编号:38714779 阅读:15 留言:0更新日期:2023-09-08 14:57
本发明专利技术属于网络安全领域,提出了一种恶意域名检测方法及装置。首先利用原始域名数据集对检测模型进行训练;通过基于序列对抗网络和用雅克比的显著性图的对抗样本生成算法生成DGA恶意域名数据集,将生成的DGA恶意域名数据集输入至分类模型进行交替训练,生成新的对抗样本;生成的对抗样本加入原始域名数据集对检测模型进行再训练。本发明专利技术所提出的方法相比于现有技术,检测模型的对抗样本检测能力更强、鲁棒性更好、精确率以及召回率均优于其它模型。增加对抗训练后,检测模型的检测能力也有所提高。所提高。所提高。

【技术实现步骤摘要】
一种恶意域名检测方法及装置


[0001]本专利技术涉及网络安全领域,尤其涉及一种恶意域名检测方法及装置。

技术介绍

[0002]目前网络安全的主要问题之一是不断出现的大规模攻击,例如僵尸网络和勒索软件等,利用DGA域名与C&C服务器建立连接。DGA可以短时间内生成大量域名,只有很小一部分会被解析为C&C服务器,而且可以快速切换服务器的IP地址和域名,使得传统的黑名单技术难以对其进行有效检测。目前,对于恶意域名的检测主要有两个方向:逆向工程和基于域名本身进行检测。
[0003]对恶意样本进行逆向工程以发现DGA算法和生成域名列表的种子,进而对域名进行抢注或发布在黑名单的方式减轻恶意活动。但是这种技术十分耗时,并且容易被攻击者规避,因此对DGA恶意域名的检测主要集中在第二种方式上。这类方法尝试通过分析DNS流量特征或域名字符串本身的特征,比如域名熵值、长度和发音特征等来进行检测。常规的恶意域名检测方法主要有基于特征和基于深度学习方法。基于特征的恶意域名检测方法依赖于人工提取的特征如DNS响应,IP地址位置,WHOIS和TLS证书信息等统计数据来确定域名的合法性。基于深度学习的恶意域名检测方法无需额外信息即可实现对DGA恶意域名的实时检测。而且作为黑盒,攻击者很难执行逆向工程规避这些方法。
[0004]论文“J.Selvi,R.J.Rodr
í
guez,E.Soria

olivas Detection of algorithmically generated malicious domain names using masked N

grams Expert Syst.Appl.,124(2019),pp.156

163”提出了一种机器学习方法,使用随机森林算法来检测DGA域名。他们提取了域名的词汇属性和统计信息,检测准确率为98.91%。但是,他们提取的都是统计特征,比如方差、均值和标准差,当域名较短时,统计特征不再有效。
[0005]论文“Anderson H S,Woodbridge J,Filar B.DeepDGA:Adversarially

tuned domain generation and detection[C]//Proceedings of the 2016ACM Workshop on Artificial Intelligence and Security.2016:13

21.”提出使用单层长短期记忆网络(LSTM),完成域名检测任务。他们的方法不需要特征提取的步骤,实验结果表明LSTM优于字符级马尔科夫链模型和使用字符分布熵等特征的随机森林模型。在识别大多数DGA家族域名时具有较好的效果,但是在以字典作为种子的DGA恶意域名上检测效果不佳。
[0006]大多数基于机器学习的检测方式,如随机森林,支持向量机等,太依赖于人工提取的特征,如域名的长度、字符出现的频率等。当DGA使用新的种子时,就需要重新提取特征,耗时而且容易被攻击者规避。此外,研究发现深度学习模型容易受到精心设计的对抗样本的攻击。通过对输入添加扰动,会导致模型以高置信度输出不正确的结果。

技术实现思路

[0007]针对上述问题,本专利技术提出了一种恶意域名检测方法及装置,基于深度学习的恶意域名检测模型具备鲁棒性,能够抵抗对抗样本的攻击,同时提高了对DGA域名的检测效
果。该方法可以抵抗对抗样本的攻击,并且提高了对DGA域名的检测效果。与未经过对抗训练的模型相比,该模型对对抗样本的检测能力大幅提升,而且对基于词表域名的检测能力也有所提高。与使用单一网络的模型相比,该模型吸收了不同网络的优点,并且由于注意力机制的引入,能够从提取的特征中选择更为关键的信息,进一步提高了检测效果。
[0008]本专利技术的技术方案:
[0009]一种恶意域名检测方法,利用原始域名数据集对待训练检测模型进行训练,获得预训练检测模型;通过基于序列对抗网络(SeqGAN)对抗样本生成算法和用雅克比的显著性图方法(JSMA)生成DGA恶意域名数据集,将生成的DGA恶意域名数据集输入至分类模型进行交替训练,生成对抗样本;生成的对抗样本加入原始域名数据集对预训练检测模型进行再训练,生成最终检测模型,用于域名检测;预训练检测模型、待训练检测模型和最终检测模型是同一个检测模型的不同训练阶段,包括嵌入层、卷积神经网络层、长短期记忆网络层、注意力层和全连接层。
[0010]所述原始域名数据集经待训练检测模型的嵌入层进行处理,保留域名的倒数第二个部分且设置域名长度为固定值,并将域名中的大写字符转换成小写,然后将域名编码为域名长度*128的矩阵;比如youtube.com,只保留youtube部分;设置域名长度为65,如果域名字符串长度大于65则对其进行截断,小于65则会被填充。
[0011]经嵌入层处理后的原始域名数据集输入至卷积神经网络层以获得数据集的空间特征;卷积神经网络层输出的数据作为长短期记忆网络层的输入以获得数据集的时间特征;注意力层根据获得的时间特征和空间特征进行分配权重;全连接层把经卷积神经网络层、长短期记忆网络层、注意力层依次处理后的数据映射为最后的输出,输出结果表示样本是恶意域名的概率;注意力机制通常跟编码器

解码器结构同时使用,在解码器中,通过计算目标特征和输入特征的对齐可能性,可以得到注意力分配概率,数值较大的是高价值的,分配更多权重;使用Sigmoid作为检测模型全连接层的激活函数,并采用基于梯度下降的Adam算法更新检测模型参数;
[0012]选择分类模型用于区分DGA恶意域名与普通域名,该分类模型具有恒定大小的One

hot编码层;使用公开的普通域名和DGA恶意域名作为数据集训练分类模型;
[0013]将生成的DGA恶意域名数据集输入至分类模型进行交替训练,生成对抗样本,包括:
[0014]步骤1、利用基于序列对抗网络的对抗样本生成方法生成DGA域名;序列对抗网络包括生成器和判别器;
[0015]训练生成器G
θ
以生成序列Y
1:T
=y1,y2,...,y
T
,y
T
∈Y,其中Y是候选词汇表中的词汇;生成器与判别器进行交替训练;SeqGAN主要借鉴了强化学习中的方法,在实践中通过不断试错来学习最好的策略,目标是最大化长期收益。强化学习中有几个核心概念:状态s(State),动作a(Action),奖励r(Reward)。
[0016]具体过程如下:
[0017]1.1随机初始化生成器G
θ
的参数θ,判别器D
φ
的参数φ;
[0018]1.2基于最大似然估计预训练G
θ
,并利用G
θ
生成的DGA恶意域名样本预训练D
本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种恶意域名检测方法,其特征在于,包括:利用原始域名数据集对待训练检测模型进行训练,获得预训练检测模型;通过基于序列对抗网络对抗样本生成算法和用雅克比的显著性图方法生成DGA恶意域名数据集;将生成的DGA恶意域名数据集输入至分类模型进行交替训练,生成对抗样本;生成的对抗样本加入原始域名数据集对预训练检测模型进行再训练,生成最终检测模型,用于恶意域名检测;其中所述预训练检测模型、待训练检测模型和最终检测模型是同一个检测模型的不同训练阶段,包括嵌入层、卷积神经网络层、长短期记忆网络层、注意力层和全连接层。2.根据权利要求1所述的恶意域名检测方法,其特征在于,所述利用原始域名数据集对待训练检测模型进行训练,获得预训练检测模型中,所述原始域名数据集经待训练检测模型的嵌入层进行处理,保留域名的倒数第二个部分且设置域名长度为固定值,并将域名中的大写字符转换成小写,然后将域名编码为域名长度*128的矩阵;经嵌入层处理后的原始域名数据集输入至卷积神经网络层以获得数据集的空间特征;卷积神经网络层输出的数据作为长短期记忆网络层的输入以获得数据集的时间特征;注意力层根据获得的时间特征和空间特征进行分配权重;全连接层把经卷积神经网络层、长短期记忆网络层、注意力层依次处理后的数据映射为最后的输出,输出结果表示样本是恶意域名的概率;使用Sigmoid作为检测模型全连接层的激活函数,并采用基于梯度下降的Adam算法更新检测模型参数。3.根据权利要求1或2所述的恶意域名检测方法,其特征在于,将生成的DGA恶意域名数据集输入至分类模型进行交替训练,生成对抗样本,包括:步骤1、基于序列对抗网络的对抗样本生成方法生成DGA域名;所述序列对抗网络包括生成器和判别器;训练生成器G
θ
以生成序列Y
1:T
=y1,y2,...,y
T
,y
T
∈Y,其中Y是候选词汇表中的词汇;生成器与判别器进行交替训练;步骤2:构建基于雅克比的显著性图攻击矩阵;步骤3:利用雅克比显著性图向DGA域名字符序列添加扰动;步骤4:将添加扰动的DGA域名数据与真实的普通域名组合为恶意域名数据集输入分类模型,对分类模型进行训练;重复训练K次分类模型后,重复步骤1

3生成趋近于真实恶意域名的数据,最终生成的恶意域名数据能欺骗分类模型,即被分类模型识别为普通域名;最终生成的恶意域名数据为对抗样本。4.根据权利要求3所述的恶意域名检测方法,其特征在于,所述步骤1的具体过程如下:1.1随机初始化生成器G
θ
的参数θ,判别器D
φ
的参数φ;1.2基于最大似然估计预训练G
θ
,并利用G
θ
生成的DGA恶意域名样本预训练D
φ
;1.3生成器G
θ
从起始状态s0生成DGA恶意域名,生成器G
θ
的目标是从起始状态s0开始,按照公式实现最大化期望奖励;其中,R
T
是完整域名序列的奖励,y是生成的下一个词,是一个DGA恶意域名的动作价值函数,G
θ
(y|s0)是模型参数为θ的生成器,它根据状态s0生成下一个词y;
1.4计算1到T的各个时间步对应词汇的奖励在最后一个时间步t=T时,直接用判别函数D
φ
(Y
1:T
)计算奖励,在其余时间步,应用生成器和蒙特卡洛算法,利用前面已经产生的序列,从当前词汇位置的下一个位置开始采样,生成N个后续备选项,使用判别函数计算每个备选项的奖励并求均值,将得到的结果作为该时间步对应词汇的奖励;从Y
1:t
‑1到Y
1:t+n
的蒙特卡洛搜索定义为1.5更新生成器G
θ
的参数的参数1.6利用训练好的生成器G
θ
生成DGA恶意域名,并结合真实的DGA恶意域名输入判别器D
φ
;1.7利用最小化对数损失来训练判别器D
φ
;当判别器认定生成器G
θ
生成的DGA恶意域名是真实的DGA恶意域名时,则重复1.3到1.5重新训练生成器。5.根据权利要求4所述的恶意域名检测方法,其特征在于,所述步骤2的具体过程如下:2.1将步骤1.6中生成器生成的域名数据X输入用于预测分类的分类模型,得到预测值,即对域名分类为普通域名或DGA恶意域名;2.2使用二元交叉熵损失函数L=

[...

【专利技术属性】
技术研发人员:姚羽焦轩琦周小明张维杨巍于海周金磊赵桐吕军李文轩孟勐杨道青李冲李桉雨李雪莹刘莹马智学刘思宇宋为
申请(专利权)人:国网辽宁省电力有限公司信息通信分公司
类型:发明
国别省市:

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

1