基于CNN改进模型的恶意域名训练数据生成技术_第1页
基于CNN改进模型的恶意域名训练数据生成技术_第2页
基于CNN改进模型的恶意域名训练数据生成技术_第3页
基于CNN改进模型的恶意域名训练数据生成技术_第4页
基于CNN改进模型的恶意域名训练数据生成技术_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于CNN改进模型的恶意域名训练数据生成技术马骁,蔡满春,芦天亮收稿日期:2021.5.6基金项目:“十三五”国家密码发展基金密码理论研究重点课题(No.MMJJ20180108);中国人民公安大学2019年基本科研业务费重大项目(No.2019JKF108)。作者简介:马骁(1997-),男,山东,硕士研究生,研究方向:信息网络安全;蔡满春(1972-),男,河北,副教授,博士,主要研究方向为密码学与通信保密;芦天亮(1985-),男,河北,副教授,博士,主要研究方向为恶意代码与人工智能安全。通信作者:蔡满春caimanchun@(中国人民公安大学信息网络安全学院,北京100038)摘要:近年来,命令与控制(C&C)服务器开始被新型僵尸网络所用进行攻击,利用域名生成算法(DGA)来躲避检测。传统的域名生成算法存在寻址效率不高、大量域的相应代码流量导致通信容易被检测发现等弊端。本文通过改进传统的CNN模型,结合文本生成的相关思想,利用Bi-LSTM的自注意力机制来生成恶意域名。最终结果表明,用于该方法生成的域名数据在对比实验中变现良好,可以模拟真实的域名数据,提高了恶意域名检测效率。关键词:恶意域名;卷积神经网络;僵尸网络;机器学习MaliciousdomainnametrainingdatagenerationtechnologybasedonimprovedCNNmodelMaXiao,CaiManchun,LuTianliangDepartmentofInformationNetworkSecurity,PeoplesPublicSecurityUniversityofChina,Beijing100076,ChinaAbstract:Inrecentyears,newbotnetshavebeguntousecommandandcontrol(C&C)servercommunicationtoattackandusedomainnamegenerationalgorithms(DGA)toavoiddetection.Thetraditionalalgorithmofdomainnamegenerationhassomedisadvantages,suchaslowaddressingefficiencyandeasydetectionduetothecorrespondingcodetrafficofalargenumberofdomains.Inthispaper,weusetheself-attentionmechanismofBI-LSTMtogeneratemaliciousdomainnamebyimprovingthetraditionalCNNmodelandcombiningwiththerelatedideasoftextgeneration.Thefinalresultsshowthatthedomainnamedatageneratedbythismethodcanbeusedasrealdomainnamedatainthecomparativeexperiment,whichimprovestheefficiencyofdetectingmaliciousdomainname.Keywords:maliciousdomainname;convolutionalneuralnetwork;botnet;machinelearning0引言第五次信息革命以来,互联网的应用与我们的生活中越来越紧密,但同时网络安全问题也日益严重,其中最主要的攻击形式是以域名为依托而展开的,如反射DDos攻击、DNS放大攻击、DNS劫持、缓存投毒等。僵尸主机、僵尸网络的控制者、命令控制通道(C&C)三者组成了僵尸网络(Botnet),bot程序(僵尸程序)病毒是僵尸网络(Botnet)进行攻击的主要手段,僵尸网络通过使用传播手段将bot程序病毒感染目标主机并迅速扩散感染其他许多设备。此后,病毒将会潜伏在宿主主机中,完全听令于攻击者,从而使控制者可以控制多个被感染主机,一旦时机成熟,僵尸网络的中心机器(C&C服务器)就会利用网络协议控制僵尸主机发动大规模的DDos攻击[1-2]。一个算法域名生成算法(DGA)程序由一个恶意软件和C&C所共享的随机种子组成,DGA通过在攻击方与被攻击方同时执行操作来实现目标:当恶意软件需要与C&C网络保持联系时,将激活DGA的共享随机种子,并从字典中选择一些元素根据算法随机生成域名。在C&C方面,基于相同的DGA生成了一组域名,用以有效地响应来自受害者主机的查询请求。在网络攻击者方面,DGA、恶意软件和C&C服务器之间的连接都依赖于不同的域名,这将减少被网络防御者发现和阻止的可能性。恶意域名与良性域名相比有着长度短,特征不明显等特点,这就使得在提取其特征生成数据时更加困难。本文采用了改进的CNN结构以及双向LSTM(Bi-LSTM),并通过一系列对照实验,验证了改进后生成数据的可用性以及相较于改进前的优势。根据种子性质和生成算法的不同,DGA有不同分类:基于种子性质分类,即根据种子是否依赖于时间以及种子是否确定将DGA划分为四个类别:TID、TDD、TDN、TIN。用以DGA恶意域名检测的传统方法可分为两种,一是基于类目标检测,它是先通过聚类的方式将域名的一些访问特征汇总起来,通过与DGA以及正常域名进行识别比较,并根据识别的结果进行分类;二是基于单个域名所存在的一些特性进行分析[3]。DucTran等人为处理DGA僵尸网络检测中的多类不平衡问题提出了一种基于二进制和多类分类模型的新型LSTM算法,该方法同时也考虑了类之间的分类重要性[4],为进一步研究分析LSTM的各种特性奠定了基础。BinYu提出并探索了一种将监督学习应用到实时DGA检测的方法。在这种方法中,使用简单的过滤步骤从真实的DNS流量中获得足够纯的DGA/非DGA样本。这种方法对于可部署模型是必要的,因为依赖于反向工程恶意软件的方法不是可伸缩的,并不能适应实际流量的变化[5]。他们还利用深度学习的优点、自动特征提取和在线学习的潜力来跟上DGA模式的变化,从而发现深层网络也是优越的DGA检测器。JonathanWoodbridge等人出了一种利用LSTM网络对生成的DGA域进行分类的方法[6-7]。LSTM相比于其他技术有着无特征、使用原始域名作为输入、无需手动创建在对抗性机器学习中可能变得无用的难以维护的特性等优点。徐国天等人创新性地提出了一种新型DGA破解算法,该算法利用捕获网络数据包的方式可以对DGA算法进行初步判断,并能迅速、精准地识别出恶意程序中的DGA核心关键代码,从而降低在取证过程中的难度,提高工作效率[8]。杨路辉等人考虑到计算精度和计算速度在真实的网络环境中需要兼顾,提出了一种检测模型,该模型基于可分离卷积的轻量级恶意域名,使用可分离卷积结构来替代标准卷积结构[9-10]。这样一来不仅能够将深度卷积和逐点卷积相结合用以代替标准卷积过程,更能显著提升卷积计算速度,保证较高的准确率。以上方法存在的主要问题都集中用于生成检测模型的训练数据提取时间长、特征提取不明显等问题。本文通过对传统CNN进行改进,提出了一种并行的CNN结构,通过引入不同大小的卷积核来更精确地提取字符集特征。使用基于自注意力机制的Bi-LSTM来提取全局特征,深度提取字符间特征,并通过使用贝叶斯、J48、随机森林等分类器来验证生成恶意域名训练数据的的有效性。1改进的模型1.1改进的卷积神经网络CNN最初常用于图像分类,因其结构非常适合于对像素值的卷积计算,能够将像素级特征较好地从二维图像中提取出来。同样,卷积模型也可以用于处理的字级特征关系。文本分类需要分配预定义的类别到自由文本文档,基于单词的文本分类技术是目前文本分类技术的主流,表现最好的是其中一些简单的有序单词组合(如n-gram),在早期使用深度学习的时间延迟网络本质上是对顺序数据进行建模的卷积网络[11-12]。为改进CNN,我们将并行结构引入到传统CNN的架构中,采用不同大小卷积核的卷积结构,有效地增加模型的接收场,提取更精确的字符级特征[13-15]。卷积核的大小决定着对同一段话、同一个词语所提取到的特征,卷积核大小的不同,提取的特征也可能因为分段点的不同而不一样。但对于有意义的域名来说,即使将词语分开,字与字之间也有着相关性,为了提取这些字串之间的关系,我们在并行分支中添加两个卷积层,结构如图1所示。图1改进后的CNN框架并行CNN体系结构由基于CNN的体系结构的4个分支组成,每个分支由1个CNN层、1个求和层和1个丢包层组成,卷积核的大小从2到5不等。增加的卷积分支由两个卷积层、一个最大池层、两个丢包层和一个池化层组成。新分支的输出与原始分支连接,并作为输入进入密集层,密集层是用于提取和输出特定尺寸特征的完全连接层。并行CNN的体系结构可以通过如下公式来表示:F1R1=F2RR=R1+R2其中xt是输入向量[x1、x2、⋯、xn]、xt*xt−1代表卷积,F1代表一次卷积,R1是第一层卷积层的结果,n是卷积核在不同尺度下的大小。F2(t,n)是基于核大小为n的第一卷积层的结果,这样,可以在更深的尺度上提取特征。R2是第二卷积层的结果,R是结合R1和R2的所得到的和。从上述公式可以看出,卷积是对输入局部区域的操作,这意味着卷积特征可以看作是输入的局部特征。在不同的卷积核大小下,利用第一和第二卷积层,可以在多个宽度尺度上提取局部特征。1.2Bi-LSTM循环神经网络(RNN)是在传统神经网络的基础上进行扩展所得到的,但梯度消失、梯度爆炸等问题依然是其在序列数据分类方面无法彻底摆脱的问题。为处理这一弊端,LongShortTerm网络(LSTM)应运而生,它摆脱了长期依赖问题,在许多分类任务中取得了较好的成果[16]。Bi-LSTM解决了LSTM提取单词的单一方向问题[17-18],它可用于提取域名中字符之间的双向关系。自然语言处理(NLP)任务近年来开始应用注意力机制,它的关键是找出句子中每个单词对应的隐藏状态的权重。这通常需要全局信息,但是全局信息对于确定域名中每个字符的权重是无效的,因为域名中的字符数量有限且域名数量巨大。为了计算句子中每个单词之间的相关系数,我们采用了基于自注意力机制的Bi-LSTM[19-21],它首先将嵌入字符向量[x1、x2、⋯、xn]输入到Bi-LSTM模型,输出是向量[h1、h2、⋯、hn],分别由Bi-LSTM模型生成的[l1、l2、⋯、ln]和[r1、r2、⋯、rn]组成。[l1、l2、⋯、ln]根据如下公式生成:X=ftitotCtlt=ot*其中ft、it、ot分别表示LSTM的三个基本组成单元:遗忘门、输入门和输出门,Wf、Wi、Wo表示训练过程中的加权矩阵,bf、bi、bo表示偏差。σ是S型函数,tanh是相切线函数,xt是其中的一个输入向量,[r1、r2、⋯、rn]也是比照上述方法生成。1.3恶意域名检测设计本文设计了一个恶意域名检测框架,通过使用贝叶斯、J48、随机森林等分类器来验证生成恶意域名训练数据的的有效性,具体设计思路如图2所示:图2恶意域名检测模型首先对真实恶意域名进行预处理,将域名所包含的顶级域名以及可能存在的二、三级域名去掉,只保留部分域名字符。将预处理后的真实恶意域名数据输入到Bi-LSTM层,通过Bi-LSTM的深度特征提取,将该层的结果输入到自注意力层进行加权运算。可以通过计算域名中字符间的相关系数来获得每个字符所对应隐藏的权重,自注意机制可以用以下公式来表示:htetat=mtC=i=1nm其中,ht是Bi-LSTM模型的输出同时也是注意力层的输入,Wa代表训练过程中的加权矩阵,ba代表偏差。at构成了图2中的A,即注意力矩阵,输出C伪造的恶意域名数据。通过以上过程,我们可以利用自注意的Bi-LSTM更充分地提取双向全局特征,实现更有效的字符级全局特征提取[22]。对输入的数据开展三组实验,使用贝叶斯、RandomForest随机森林、决策树J48作为检测模型的分类器。第一组实验作为基准对照组,使用真实的恶意域名数据集与Alexa负样本集,得到的实验数据作为基准数据,后面两组实验所得结果通过与本组实验对比来验证生成数据的有效性;第二组使用生成的恶意域名与Alexa负样本集,目的是为了证明生成数据可以代替真实恶意域名作为检测样本,可以用于将来进一步的实验;最后一组采用生成的恶意域名与真实恶意域名组成的混淆数据集,本组实验意在说明生成数据也基本具备真实恶意域名的特征。通过以上三组实验结果来验证生成数据的可行性、有效性,以及相对于传统CNN生成数据提高的效率。2.实验过程与结果分析2.1配置实验环境本文所涉及实验基于Keras深度学习平台,后期使用TensorFlow平台编写深度学习神经网络模型,使用机器学习算法对生成的域名进行检测,利用混淆矩阵进行实验,比照真实恶意域名与生成恶意域名的差别。环境配置如表1所示。实验平台环境配置操作系统Win10内存8GB处理器IntelCorei5-6300HQCPU@2.30GHz深度学习框架Tensorflow1.14.0机器学习平台Anaconda4.1.12表1实验环境配置2.2准备数据集本文开展实验所用的正常的合法域名和真实的DGA恶意域名数据集可在BambenekConsulting(/feeds/)和360网络安全实验室(/dga/)收集到。用于入侵检测实验的数据集分为三个部分:常见的DGA家族域名如Conficker、Cryptolocker、Ramnit、symmi、suppobox等,共收集数据15万条、生成的恶意域名10万条,通过本文基于CNN改进模型生成的恶意域名5万条与真实恶意域名5万条组成的混淆数据。2.3恶意域名生成实验使用字符串相似度作为考量标准,采用Levenshtein算法进行研究实验。Levenshtein算法即LevenshteinDistance(LD)算法,又称编辑距离算法,它在比较两组字符串相似度上有着准确度高、操作方便、结果清晰等优点[23]。它通过计算一个字符串通过添加、删除、修改等一系列操作后变为另一个字符串的次数来得到两个字符串的相似度(距离)。例如abcde、abcdef这两个字符串,它们的距离为1。不难得出,字符串相似度与LD算法的距离成反比,相似度越高,LD算法距离越短[24]。其算法可以表示为:(1)计算字符串1长度为如果如果2编辑距离矩阵为3LD4LDh(公式为:S=1-Dmax⁡(A其中S代表相似度,D代表距离,A代表字符串1长度,B代表字符串2长度。将改进的CNN生成数据以及传统CNN生成数据进行相似度进行比对,得到图3,其中纵向、横向分别代表数据量和相似度。图3相似度对比实验实验采用50000条改进的CNN生成数据以及50000条传统CNN生成数据,将以上数据分别与真实恶意域名进行比对,可以看出改进CNN的相似度主要集中在60%-90%,而传统CNN相似度主要集中在40%-70%,由此可得改进CNN生成的数据相似度更高,更为接近真实恶意域名,用于恶意域名检测实验有着更加出色的表现。2.4恶意域名检测实验为证实生成恶意域名具有真实恶意域名的特性,能够作为有效数据用于恶意域名检测,本文采用控制变量的方法,设计开展了三组实验进行比对[25]。使用贝叶斯、RandomForest随机森林、决策树J48作为检测模型的分类器[26]:贝叶斯分类器利用贝叶斯公式来通过某对象的先验概率得出其后验概率;随机森林作为机器学习模型的一种,它对多元共线性不是很敏感但是对数据缺失以及非平衡数据来说比较稳健;J48决策树算法也就是决策树C4.5算法[27],它在ID3算法的基础上进行改进,利用信息增益率来选取分类属性,克服了用信息增益选择属性时偏向选择取值多的属性的不足,将决策树的各个分支利用递归的方法进行构造,从而完成对连续属性的离散化处理。将精确度、召回率、F-measure、AUC(受试者工作特征ROC曲线下面积)、正确率、错误率作为考量指标,前后三组实验所得结果如表2、表3、表4所示。准确度通过得到模型正确识别的个体数与识别出来的个体总数之比来反应其正确率;召回率是正确识别的个体总数与测试集中存在的个体总数之比;F-measure值是精确度和召回率的调和平均值;ROC通过预测正例排在负例前面的概率来衡量二分类模型优劣程度。分类器贝叶斯J48随机森林准确率0.9750.9670.981召回率0.9740.9650.977F-measure0.9740.9660.978AUC0.9780.9660.988正确率0.9980.9990.998错误率0.0020.0010.002表2真实恶意域名作为正样本的检测结果分类器贝叶斯J48随机森林准确率0.9760.9650.982召回率0.9770.9630.978F-measure0.9760.9640.980AUC0.9780.9660.987正确率0.9960.9980.995错误率0.0040.0020.005表3生成数据作为正样本的检测结果分类器贝叶斯J48随机森林准确率0.9760.9650.982召回率0.9750.9660.978F-measure0.9750.9650.979AUC0.9770.9660.989正确率0.9980.9980.997错误率0.0020.0020.003表4混淆数据作为正样本的检测结果由表2、表3可以得出在准确率、召回率、F-measure等分类标准下[28],生成数据与真实恶意域名表现相当,生成数据的有效性也因此得以说明。由表3、表4,可以看出生成的恶意域名和混淆数据在实验中表现差异不大,两组数据在准确率、精准率、F1值、ROC、错误率等方面几乎没有区别,因此可以得出结论,通过改进的CNN所生成的数据具有真实恶意域名所具有的特征,可以将数据进一步用于恶意域名检测实验。3结束语目前,学术界通过对主机行为、网络行为等进行统计学分析、机器学习等手段对如何尽早识别出恶意域名进行了多角度的探索。本文将文本生成方法运用到恶意域名生成的过程当中,扩大了训练样本的数据规模,并通过恶意域名检测实验对数据的有效性加以证明。本文通过将并行的CNN结构引入到传统CNN中,引入基于自注意机制的Bi-LSTM,从而得到高特征质量的数据,提升了生成数据的准确性、真实性。并通过字符串相似度实验证实了生成数据与真实数据的高相似度,为进一步开展恶意域名检测实验奠定了良好的基础。今后工作将进一步探讨新型恶意域名检测算法用于测试改进CNN生成数据的表现效果。参考文献:[1]袁辰,钱丽萍,张慧,张婷.基于生成对抗网络的恶意域名训练数据生成[J].计算机应用研究,2019,36(05):1540-1543+1568.[2]YerimaSuleimanY.,AlzaylaeeMohammedK.,ShajanAnnette,PVinod.DeepLearningTechniquesforAndroidBotnetDetection[J].Electronics,2021,10(4).[3]LinShaoqing,ZhongShangping,ChengKaizhi.AMethodwithPre-trainedWordVectorsforDetectingWordlist-basedMaliciousDomainNames[J].JournalofPhysics:ConferenceSeries,2021,1757(1).[4]DucTran,HieuMac,VanTong,HaiAnhTran,LinhGiangNguyen.ALSTMbasedframeworkforhandlingmulticlassimbalanceinDGAbotnetdetection[J].Neurocomputing,2018,275.[5]B.Yu,D.Gray,J.Pan,M.DeCock,andA.Nascimento,“Inlinedgadetectionwithdeepnetworks,”inProceedingsofDataMiningforCyberSecurity(DMCS2017),workshopatICDM2017(IEEEInternationalConferenceonDataMining),2017.[6]Woodbridge,J.,Anderson,H.,Ahuja,A.,&Grant,D.(2016).PredictingDomainGenerationAlgorithmswithLongShort-TermMemoryNetworks.[7]J.Woodbridge,H.S.Anderson,A.Ahuja,andD.Grant,“Predictingdomaingenerationalgorithmswithlongshort-termmemorynetworks,”preprintarXiv:1611.00791,2016.[8]徐国天.基于DGA的恶意程序域名生成算法破解[A].中国计算机学会.第32次全国计算机安全学术交流会论文集[C].中国计算机学会:中国计算机学会计算机安全专业委员会,2017:4.[9]杨路辉,白惠文,刘光杰,戴跃伟.基于可分离卷积的轻量级恶意域名检测模型[J].网络与信息安全学报,2020,6(06):112-120.[10]杨路辉,刘光杰,翟江涛,刘伟伟,白惠文,戴跃伟.一种改进的卷积神经网络恶意域名检测算法[J].西安电子科技大学学报,2020,47(01):37-43.[11]CucchiarelliAlessandro,MorbidoniChristian,SpalazziLuca,BaldiMarco.AlgorithmicallyGeneratedMaliciousDomainNamesDetectionBasedonn-GramsFeatures[J].ExpertSystemswithApplications,2020(prepublish).[12]王媛媛,吴春江,刘启和,谭浩,周世杰.恶意域名检测研究与应用综述[J].计算机应用与软件,2019,36(09):310-316.[13]郑诚,陈杰,董春阳.结合图卷积的深层神经网络用于文本分类[J/OL].计算机工程与应用:1-12[2021-03-31]./kcms/detail/11.2127.TP.20210310.1629.002.html.[14]RiadhHarizi,RimWalha,FadouaDrira,MouradZaied.Convolutionalneuralnetworkwithjointstepwisecharacter/wordmodelingbasedsystemforscenetextrecognition[J].MultimediaToolsandApplications,2021(prepublish).[15]GLUSHKOVAT,ARTEMOVAE.Char-RNNandActiveLearningforHashtagSegmentation[EB/OL]./usercenter/paper/show?paperid=1x3f0at0h42a0gp09m080pb0bn496380&site=xueshu_se,2019-12-31[16]卢昱波,刘德润,蔡奕超,杨庆雨,陈伟,刘太安.基于cw2vec与CNN-BiLSTM注意力模型的中文微博情感分类[J].软件导刊,2021,20(03):51-56.[17]曹正志,叶春明.基于并联CNN-SE-Bi-LSTM的轴承剩余使用寿命预测[J/OL].计算机应用研究:1-6[2021-03-05]./10.19734/j.issn.1001-3695.2020.08.0224.[18]ÖzkayaUmut,ÖztürkŞaban,MelganiFarid,SeyfiLevent.ResidualCNN+Bi-LSTMmodeltoanalyzeGPRBscanimages[J].AutomationinConstruction,2021,123.[19]尹良亮,孙红光,贾慧婷,索朗卓玛,李世鼎.基于双向多维度自注意力机制的文本情感分析方法[J].信息与电脑(理论版),2019(09):45-48.[20]XiangLing,WangPenghe,YangXin,HuAijun,SuHao.Faultdetectionofwindturbine

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论