一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于异质图传播网络的恶意域名检测方法和系统

2022-12-06 22:54:26 来源:中国专利 TAG:


1.本发明属于网络安全技术领域,涉及恶意域名检测,具体涉及一种基于异质图传播网络的恶意域名检测方法和系统。


背景技术:

2.dns(域名系统)是互联网最重要的基础设施之一,能够将易于记忆的域名转化为ip地址,包括由dns服务器组成的分布式数据库,实现定位互联网资源。当用户在网址栏输入查询域名,浏览器调用dns协议,在分布式的dns服务器里查询域名对应的ip地址,最后将ip地址返回到用户。dns分布式服务器主要分为四类:dns解析器、根域名服务器、顶级域名服务器、权威性域名服务器。dns解析器是一类dns服务器,通过web等应用程序接收来自用户的域名查询,跟踪dns查询过程,最终将域名对应的ip地址返回给用户,dns解析器也可以运用dns缓存技术缩短域名查询时间。根域名服务器保存顶级域名服务器的位置信息,是将域名转换为ip地址的第一步,顶级域名是域名的尾部部分,例如www.example.com中的.com,目前,全世界共有13个根域名服务器。顶级域名服务器是解析域名的第二步,每个顶级域名都有一个对应的服务器,用于维护顶级域名下的域名信息,保存权威性域名服务器位置。权威性域名服务器是域名查询的最后一步,拥有并维护dns资源记录,如果权威性域名服务器能够访问请求的记录,就会将域名对应的ip地址返回给dns解析器。当一个域名在被查询、解析时,会产生大量关联信息,这些信息记录为dns流量数据、dns日志、被动dns数据或者其它dns相关数据,攻击者很难完全篡改这些信息。现有的恶意域名检测方法包括基于经验规则的方法、基于统计特征的方法、基于关联关系的方法。
3.(一)基于经验规则的方法。基于规则的方法是最传统、应用最广泛的恶意域名检测方法,该类方法主要依靠专家领域知识来检测恶意域名。sato等经过分析发现,如果两个域名经常被同一个用户请求解析,其中一个域名是恶意域名,那么另外一个域名很有可能也是恶意域名。grill等研究domain-flux技术原理发现,受感染的主机能够在短时间内解析大量域名,却没有访问相应数量的ip,作者建模每个主机发出dns请求与访问ip之间的比率关系,利用fuzz方程并设置阈值识别恶意域名,在测试样本上有很好的表现。该类方法严重依赖专家领域经验,只能针对某一类恶意域名,泛化能力不强。
4.(二)基于统计特征的方法。基于特征的方法,该类方法从dns流量数据、dns日志或者其它dns相关数据中提取域名特征,基于特征建立分类器对域名分类。antonakakis等设计了一个动态、全面的dns评估系统notos,作者提取域名的三类特征:基于网络的特征、基于域的特征、基于证据的特征,notos基于这些特征及历史恶意数据对恶意域名赋予低的信誉分,良性域名给予高的信誉分,实验表明notos能够识别甚至一个月后出现在黑名单上的恶意域名。bilge等提出的在线exposure恶意域名检测系统,能够每天提供新恶意域名列表,作者提取域名四大类的十五个特征,即基于时间、基于dns响应、基于ttl、基于域名文本信息。sch
ü
ppen等设计的fanci系统对dns流量中的nxd,即不可解析为ip地址的域名,分类为恶意域名和良性域名,作者仅从域名本身提取特征,包括三大类的21个特征:域名的结构
特征,域名的语言学特征、域名的统计特征,使用基于机器学习方法svm、rf对域名进行分类,在多个真实网络上都能取得很高的准确率。与上述基于特征的恶意域名检测方法相比,fanci系统只需要域名的文本信息,消耗的训练时间更短。基于特征的恶意域名检测方法由于需要抽取特征信息,因此需要相应的领域知识,并且设计的特征容易被攻击者修改。
5.(三)基于关联关系的方法。基于关系的方法,该类方法利用域名间的关联关系,将恶意域名检测问题转化为图节点分类问题。manadhata等构建主机-域名二部图,用已知的恶意域名及受感染的主机对图节点进行标注,然后用belief propagation算法计算域名是恶意域名的可能性。khalil等认为攻击者倾向于重复使用ip地址资源,建立域名-ip的域名解析图,运用路径推理算法检测恶意域名。由于二部图的局限性,不能充分挖掘dns场景。sun等提出的deepdom恶意域名检测系统,将dns场景建立为异质信息网络,包含主机、域名、ip地址、账户四类节点,设计新颖的图卷积网络shetgcn学习节点嵌入,实现节点分类,在真实的网络cernet2进行实验,结果表明设计的shetgcn优于目前的一些主流异质图嵌入方法,作者进一步实验表明,当shetgcn的层数增加,f1值会逐渐降低,理论上来说,当图神经网络层数趋于无穷,每个节点学习到的节点表示也会趋于相同。
6.目前许多的研究者将dns场景建模为二部图,由于二部图的局限性,无法完全挖掘dns场景复杂的关系,而且目前大多数图神经网络的层数还相对较浅,随着层数的加深,图神经网络的效果会出现大幅度下降,无法捕获高层语义,即出现语义混淆现象。


技术实现要素:

7.本发明使用一种基于异质图传播网络的方法来解决上述问题。本发明使用异质图传播网络进行恶意域名分类问题时,将dns场景建模为包含主机、域名、ip地址的异质信息网络,该异质信息网络包含三种关系,能够很好的模拟真实dns场景。使用的异质图传播网络模型,包含了语义传播机制和语义融合机制,语义传播机制能够在聚合邻居节点特征时强调节点自身特征,即使增加语义传播机制的层数,学习到的节点特征依然可以相互区分,缓解语义混淆现象。
8.本发明采用的技术方案如下:
9.一种基于异质图传播网络的恶意域名检测方法,包括以下步骤:
10.基于真实的dns流量数据将dns场景建模为异质图;
11.根据异质图提取能够反映域名之间关系的元路径;
12.以异质图及元路径为输入,利用异质图传播网络模型得到每个节点的分类结果,即节点类别为恶意域名或者良性域名。
13.进一步地,所述异质图包含域名、ip地址、客户端三种不同类型的节点,并包含三种不同类型的边,即客户端与域名的请求关系、域名解析为ip地址的解析关系、域名与域名之间的cname关系。
14.进一步地,所述元路径有三种:元路径p1表示两个不同的域名属于同一个cname字段;元路径p2表示客户端和域名间的单向查询关系;元路径p3表明域名与ip地址之间的映射关系。
15.进一步地,所述利用异质图传播网络模型得到每个节点的分类结果,包括:异质图传播网络模型找到每个节点基于元路径的邻居节点,聚合邻居节点的特征信息,更新每个
节点的节点特征,最终区分节点是恶意域名还是良性域名。
16.进一步地,所述异质图传播网络模型,其包含语义传播机制和语义融合机制;所述语义传播机制在聚合邻居节点特征时强调节点自身特征,以缓解语义混淆现象;所述语义融合机制学习每个元路径的重要性,赋予每个元路径用于恶意域名检测的最佳权重。
17.一种基于异质图传播网络的恶意域名检测系统,其包括:
18.异质图构建模块,用于基于真实的dns流量数据将dns场景建模为异质图;
19.元路径提取模块,用于根据异质图提取能够反映域名之间关系的元路径;
20.节点分类模块,用于异质图及元路径为输入,利用异质图传播网络模型得到每个节点的分类结果,即节点类别为恶意域名或者良性域名。
21.本发明的关键点包括:
22.1、本发明以dns流量为主,构建dns异质信息网络,通过该建模方式可以完整的表现真实dns场景。
23.2、异质图传播网络包含了语义传播机制和语义融合机制。语义传播机制能够在聚合邻居节点特征时强调节点自身特征,即使增加语义传播机制的层数,学习到的节点特征依然可以相互区分,缓解语义混淆现象。语义融合机制能够在恶意域名检测任务下,学习到每个语义的重要性,加权融合各个语义。
24.本发明研究基于异质图传播网络的恶意域名检测技术,将dns场景建模为异质信息网络,考虑更多的节点种类和边种类,另外,本发明提出异质图传播网络,该模型能够很好的解决传统图神经网络随着层数的加深,效果变差的情况,能够让节点学到更具代表性的节点特征,捕获高层语义。本发明的技术优点主要包括以下几个方面:
25.1.为了更好的模拟真实dns场景,聚合更多信息,本发明基于真实dns流量数据,将dns场景建模为异质信息网络,即异质图。该异质图包含域名、ip地址、客户端三种不同类型的节点和三种不同类型的边,即客户端与域名的请求关系、域名解析为ip地址的解析关系、域名与域名之间的cname关系。通过该建模方式可以完整的表现真实dns场景。
26.2.考虑目前图神经网络迭代层数过多,每个节点学习到的特征相互很难区分,出现语义混淆现象,导致模型效果大幅度下降,本发明提出异质图传播网络模型,其包含了语义传播机制和语义融合机制。语义传播机制能够在聚合邻居节点特征时强调节点自身特征,即使增加语义传播机制的层数,学习到的节点特征依然可以相互区分,缓解语义混淆现象。语义融合机制能够在恶意域名检测任务下,学习到每个语义的重要性,加权融合各个语义。
附图说明
27.图1是本发明总体架构示意图。
28.图2是本发明构建的异质信息网络示意图。
29.图3是本发明提取的元路径示意图。
30.图4是k_layer与f1 score之间的关系示意图。
31.图5是k_layer与runtime之间的关系示意图。
具体实施方式
32.为使本发明的上述目的、特征和优点能够更加明显易懂,下面通过具体实施例和附图,对本发明做进一步详细说明。
33.本发明提供了一种判断恶意域名的方法,包含四个部分:数据收集、异质图构建及图剪枝、元路径抽取、异质图传播网络。本发明首先收集真实的dns流量数据,对数据进行清洗整合,将dns场景建模为异质图,包含三种不同类型的节点和三种不同类型的边,将一些噪音节点进行剪枝,减少图的复杂性,然后提取三种能够反映域名之间关系的元路径,异质图传播网络在聚合过程中,找到每个节点基于元路径的邻居节点,聚合邻居节点特征信息,更新每个节点的节点特征,最终区分节点是恶意域名还是良性域名。
34.本发明的总体框架如图1所示,包括以下内容:
35.1)从主机发出域名解析请求,到dns协议将ip地址返回到主机的过程中,会产生很多数据,例如dns服务器缓存的dns日志、迭代查询产生的被动dns数据、dns流量数据等,为了反映真实的dns场景,获取更具代表性的dns数据,本发明从一所高校局域网里,提取两周的dns流量数据,包含客户端(或称主机)、域名、ip地址三类节点,作为本发明的实验数据。
36.2)在实际生活中,可以将大多数的场景建模为图,例如电商图、社交图、交通图等,由于同质图的局限性,越来越多的研究者将实际生活场景建模为异质图,异质图包含多种类型的对象与多种类型的关系,维持实际场景中对象的多样性。如图2,本发明将dns场景建模为异质图,包含域名、ip地址、客户端三种不同类型的节点,客户端与域名的请求关系、域名解析为ip地址的解析关系、域名与域名之间的cname关系,三种不同类型的关系,能够完整的反映真实dns场景。本发明收集的真实dns数据建立的异质图,包括三种节点类型:主机、域名、ip地址及三种关系:1)查询,主机查询域名,2)解析,域名解析为ip地址,3)cname,域名a是域名b的规范名称。对于域名节点的特征,本发明参考fanci处理域名特征的方法,对每个域名设计结构类、语言类、统计类共计21个特征。
37.3)元路径是异质图语义挖掘的方法之一,每一条元路径都代表一个特定的语义。本发明提取的元路径如图3,元路径p1表示两个不同的域名属于同一个cname字段,据相关事实证明,如果域名a是恶意域名,域名a的规范域名,即域名b,有很大概率是恶意域名,如果域名a是良性域名,那么域名b极大概率也是良性域名,即相同cname字段的域名,类别更倾向于一致。元路径p2表示主机和域名间的单向查询关系,本发明认为两台被相同攻击者攻击的主机,查询的恶意域名集合会有重叠部分,正常的主机去查询相同的恶意域名概率较低。元路径p3表明域名与ip地址之间的映射关系,由于ip地址数量在互联网中相对稳定,在一段时间里,被解析为相同ip地址的域名倾向于拥有相同的类别。
38.4)本发明设计用于恶意域名检测的异质图传播网络模型,将上述构建的异质图做为输入,输出为每个节点的分类结果,即节点类别为恶意域名或者良性域名。异质图传播网络模型包含语义传播机制和语义融合机制,该模型在节点层面的语义传播机制强调节点自身的特征,可以缓解han在节点层面呈现的语义混淆现象,在语义层面的语义融合机制可以学习每个元路径的重要性,赋予每个元路径用于恶意域名检测的最佳权重。
39.语义传播机制:给定一个异质图g=(v,ε),其中v表示节点集合,ε表示边集合,对于异质图里每个元路径φ,语义传播机制ρ
φ
首先利用语义投影函数f
φ
将节点投影到语义空间,之后通过语义聚合函数g
φ
,聚合基于元路径的邻居节点特征,学到特定语义的节点表
示:z
φ
=ρ
φ
(x)=g
φ
(f
φ
(x))。其中x表示初始特征矩阵。
40.语义融合机制:一个异质图一般有多条元路径,每条元路径代表一个特定的语义信息,特定语义的节点表示只能从一个角度反映节点信息,为了更加全面的描述节点特征,语义融合机制融合了多条元路径来抓取异质图上的丰富的语义信息,并将其反映到节点表示上。一组元路径{φ1,φ2,...,φ
p
}能够得到p组特定语义的节点表示使用语义融合机制f聚合p组特定语义的节点表示用于恶意域名检测,利用语义传播机制学习到的p组特定语义的节点表示做为输入,学习到的最终节点表示z作为输出:语义融合机制能够学习到每个节点的注意力权重,并将它们加权融合。为了学习每个元路径的权重,语义融合机制首先将特定语义下的节点表示投影到相同的空间,然后利用语义融合向量q学习元路径φ
p
的权重的权重
41.其中,w表示权重矩阵,表示节点i在元路径φ
p
下的embedding,b表示偏置向量,表示元路径φ
p
的权重。
42.下面对发明内容中的具体步骤进行深入阐述。首先介绍实验使用的数据集及评价指标,之后将异质图传播网络与目前主流的图表示学习方法进行对比,并研究不同元路径对于恶意域名检测的影响,进一步实验探究异质图传播网络每个部分的贡献度及异质图传播网络对于超参数的敏感度,设置最佳超参数,最后将本发明提出的基于异质图传播网络的恶意域名检测系统与其它恶意域名检测系统进行比较,验证检测恶意域名的有效性。
43.1)从一所大学局域网收集2020.8.31到2020.9.13两周的真实dns流量日志,作为实验所用的真实dns数据,解析该dns流量数据集可以获得详细的域名信息,例如域名长度、域名元辅音字符比例、域名子域名个数等。
44.2)建立黑白名单:通过较权威的途径构建黑白名单,包括知名安全网站、安全企业,或受广泛认可的互联网公开黑白名单。这里采用了alexa网站流量世界排名榜单top 50000构建白名单,因为在网站流量世界排名足够高的情况下,可以视为该网站进行恶意行为的可能性很小。采用了互联网公开的malwaredomains.com、zeus、phishtank、openphish、urlhaus、cybercrime、360dga等公开数据集构建黑名单,这些公开黑名单除了malwaredomains和zeus已经停更但有很多公开备份外,其余公开黑名单均处于始终更新状态。
45.黑白名单准备完毕后,将其中所有域名反转构建trie树。该trie树的作用是快速查找某个域名是否是良性域名或恶意域名,而无需再消耗大量时间一一比对。在查询过程中,若截止到某一级域名为止,该域名是良性/恶意,则直接将该域名定为良性/恶意。
46.3)获取良性/恶意域名流量:将1)中得到的真实dns流量,使用2)中得到的黑白名单进行过滤,最终获得已知的良性/恶意域名流量信息。这里使用了2)中trie树对真实dns流量进行过滤,筛选出已知良性/恶意域名所属流量,同时只取“qr=1”的流量,因为该条件代表域名服务器的响应而非请求。
47.4)特征提取:提取域名的域名长度,子域数量,子域平均长度,是否有“www”前缀,
顶级域名是否有效,是否有单个字符构成的子域,是否是某个字符串重复多次构成的域名,是否有顶级域名作子域,数字子域的比例,十六进制数字子域的比例,下划线字符比例,是否包括ip地址。是否包括数字,元音字符比例,数字字符比例,字母种类数,重复字符的比例,连续辅音的比例,连续数字的比例,域名级数,最长有意义子串长度特征。最终选择20000良性域名和20000恶意域名。随机划分60%的数据作为训练集,20%的数据作为验证集,20%的数据作为测试集。
48.5)选取一些图表示学习模型作为基线模型,验证异质图传播网络模型hgpn的表示能力,包括同质图神经网络ppnp、gat,异质图嵌入方法metapath2vec、herec,异质图神经网络hgt。对使用的异质图传播网络模型,先随机初始化参数,然后使用adam优化器优化模型,对于超参数,设置学习率为0.05,隐藏层维度设置为64,节点特征维度设置为32,重启概率λ设置为0.1,语义传播机制的层数k_layer设置为2,如果在验证集上分类效果超过100轮都没有提升时,训练提前停止,epoch设置为500。对于ppnp、gat在验证集上优化模型参数。对于metapath2vec、herec单一元路径方法,在每一条元路径上测试模型性能,记录最佳结果。本步骤直接将同质图神经网络ppnp、gat应用到异质图上,不区分节点种类和边的种类。对于所有的图神经网络模型,设置不同的层数,记录最佳结果,因为随着模型深度的增加,一些图神经网络模型的表现逐渐下降。对于随机游走模型metapath2vec、herec,设置窗口大小为5,步长设置为100,每个节点步长设置为40,负样本数设置为5。为了更公平的进行比较,对于所有的算法均设置32维的节点特征。表1展示了图表示学习方法的对比结果,hgpn模型的f1 score和precision比其它所有模型都要高,gat模型的recall略微高出hgpn模型0.13%,总体来说,异质图传播网络模型hgpn的效果比其它所有图表示模型都要优越。图神经网络模型同时考虑图的结构和特征信息,要比只考虑特征信息的图嵌入方法metapath2vec、herec更优越,基于注意力的模型gat能够学到每个节点的权重,表现要比ppnp更好,hgt与hgpn都是基于异质图的神经网络模型,hgpn的表现更加优越,hgpn能够考虑节点局部语义,学习到更高阶的节点语义。
49.表1 图表示学习的对比
50.模型f1 score(%)precision(%)recall(%)metapath2vec52.9355.5750.52herec52.3556.4948.47gat92.3389.7095.13ppnp85.5887.2583.97hgt88.9988.0889.92hgpn95.3895.7795.00
51.6)进一步研究不同元路径对恶意域名检测的影响,表2表示了在异质图传播网络语义融合机制赋予每个元路径的权重,不难发现元路径p1拥有最高的注意力权重,这与事实相符,即同一个cname字段的域名倾向于拥有相同的类别,元路径p2与元路径p3的注意力权重相似,都比较低,可能因为网络中dhcp协议的存在,使主机ip地址不固定,域名解析的ip地址由于domain-flux,fast-flux等技术动态变化的缘故。
52.表2 不同元路径注意力权重
53.元路径注意力权重
p10.7704p30.1159p20.1137
54.7)为了更好的理解异质图传播网络模型hgpn每个部分的贡献,本步骤进行模型的消融实验,单独地去掉异质图传播网络模型的语义传播机制和语义融合机制,观察模型性能的变化。单独去掉语义传播机制时,采用将模型的重启概率λ设置为0的方法,让模型不考虑节点的局部语义。表3表示了当删除语义传播机制时,模型的f1 score下降了9.24%,并且模型提前结束训练,出现过拟合现象,说明语义传播机制部分对于模型是必不可少的。单独去掉语义融合机制是在聚合节点不同语义特征时,对所有元路径进行简单平均,不赋予每个元路径权重。表3表示了当去除语义融合机制时,模型的f1 score下降了2.47%,表示了语义融合机制对于模型是至关重要的。
55.表3 异质图传播网络各个部分的影响
[0056] f1 score(%)precision(%)recall(%)(-)语义传播机制86.14(-9.24)83.57(-12.2)88.88(-6.12)(-)语义融合机制92.91(-2.47)93.27(-2.5)92.55(-2.45)
[0057]
基于上述方案设计,在此说明本发明所提出恶意域名检测系统产生的积极效果。为了体现本发明的积极效果,为了验证基于异质图传播网络的恶意域名检测系统hgpndom的有效性,选用fanci系统和deepdom系统进行对比。
[0058]
1)恶意域名检测总体性能
[0059]
表4表示本发明提出的恶意域名检测系统hgpndom要优于fanci和deepdom,fanci系统对每一个域名单独处理没有考虑域名之间的关系,会造成一些信息损失,导致泛化能力不佳;deepdom系统使用的shetgcn模型没能解决图神经网络的语义混淆现象,检测效果略低于hgpndom系统,hgpndom系统使用的hgpn模型能够在节点聚合层面缓解语义混淆现象,增加更多的中间层,学习更高阶的节点语义表示。
[0060]
表4 恶意域名检测系统的对比
[0061]
恶意域名检测系统f1(%)召回率(%)精确率(%)fanci78.3781.2175.73deepdom94.3294.7893.87hgpndom95.3895.7795.00
[0062]
2)不同语义传播机制的层数对算法检测效果的影响
[0063]
图4表示了语义传播机制的层数k_layer对异质图传播网络f1 score的影响,随着语义传播机制的层数k_layer的增加,模型的f1 score一直在92%~96%之间波动,说明了语义传播机制能够有效的缓解语义混淆现象,当k_layer值为2,4,6时取得较好的结果。图5表示了语义传播机制的层数k_layer与运行时间runtime的关系,随着k_layer的增加,运行时间也随着上升,当k_layer大于2时,运行时间急速增长,考虑到模型效果及运行效率,最终将k_layer设置为2。
[0064]
基于同一发明构思,本发明的另一实施例提供一种基于异质图传播网络的恶意域名检测系统,其包括:
[0065]
异质图构建模块,用于基于真实的dns流量数据将dns场景建模为异质图;
[0066]
元路径提取模块,用于根据异质图提取能够反映域名之间关系的元路径;
[0067]
节点分类模块,用于异质图及元路径为输入,利用异质图传播网络模型得到每个节点的分类结果,即节点类别为恶意域名或者良性域名。
[0068]
其中各模块的具体实施过程参见前文对本发明方法的描述。
[0069]
基于同一发明构思,本发明的另一实施例提供一种电子装置(计算机、服务器、智能手机等),其包括存储器和处理器,所述存储器存储计算机程序,所述计算机程序被配置为由所述处理器执行,所述计算机程序包括用于执行本发明方法中各步骤的指令。
[0070]
基于同一发明构思,本发明的另一实施例提供一种计算机可读存储介质(如rom/ram、磁盘、光盘),所述计算机可读存储介质存储计算机程序,所述计算机程序被计算机执行时,实现本发明方法的各个步骤。
[0071]
以上公开的本发明的具体实施例,其目的在于帮助理解本发明的内容并据以实施,本领域的普通技术人员可以理解,在不脱离本发明的精神和范围内,各种替换、变化和修改都是可能的。本发明不应局限于本说明书的实施例所公开的内容,本发明的保护范围以权利要求书界定的范围为准。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献