【技术实现步骤摘要】
一种恶意域名检测方法及装置
[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 ...
【技术保护点】
【技术特征摘要】
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=
‑
[...
【专利技术属性】
技术研发人员:姚羽,焦轩琦,周小明,张维,杨巍,于海,周金磊,赵桐,吕军,李文轩,孟勐,杨道青,李冲,李桉雨,李雪莹,刘莹,马智学,刘思宇,宋为,
申请(专利权)人:国网辽宁省电力有限公司信息通信分公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。