当前位置: 首页 > 专利查询>天津大学专利>正文

基于DNS流量特征的僵尸网络检测方法技术

技术编号:13595578 阅读:69 留言:0更新日期:2016-08-26 12:21
一种基于DNS流量特征的僵尸网络检测方法,包括:基于DNS流量特征的Domain‑Flux僵尸网络检测方法:将合法主域名和非法主域名组合起来形成目标集合;处理提取长度大于6的域名作为研究对象;分别计算域名熵值、构词法特征、语音特征和分组特征;放入随机森林分类器得到训练模型。基于Domain‑Flux僵尸网络检测方法的Fast‑Flux僵尸网络检测方法:将DNS服务器的原始数据进行处理;使用前面得到的训练模型对预处理的域名进行评估,获取DGA情况的打分;使用白名单、黑名单和灰名单对域名和IP进行评分;计算IP地址的时间特性;计算IP地址的稳定性;放入随机森林分类器得到训练模型SFF。本发明专利技术实验的准确率较高。

【技术实现步骤摘要】

本专利技术涉及一种DNS域名技术和机器学习系分类算法。特别是涉及一种基于DNS流量特征的僵尸网络检测方法
技术介绍
在目前的域名生成技术中,主要有:(1)Domain-Flux技术:Domain-Flux指不停的改变和分配多个域名到一个或多个IP的行为。(2)Fast-Flux技术:此技术有两种:Single-Flux域名技术和Double-Flux域名技术。Single-Flux域名技术可以类比Tor网络来看,在基于Single-Flux域名技术的僵尸网络中的每一个僵尸主机都是一个重定向节点,这样基于不同僵尸主机的重定向实现最优寻址的过程,一方面避免单一节点对整个僵尸网络的影响,另一方面也使得研究者难以循迹。Double-Flux相比于Single-Flux增加了一个可控的DNS服务层,控制者可以控制域名的修改和发布权限,而不是使用公用的域名提供商的解析服务。解析服务器是Double-Flux架构的一部分,然而解析服务器的地址也是不断变换的。分类算法在很多领域都有较广泛的应用,尤其是在数据挖掘领域,在数据挖掘领域,分类算法一般是通过概率论中的各种统计模型实现。其中常用的分类器有:(1)决策树:决策树算法是常用的分类和预测的方法技术。决策树算法是通过对一组无规则且无序的数据进行推理和演算,从已知实例数据中通过推演得出决策树分类的一些分类规则。(2)随机森林:随机森林实质上是一个包括多个决策树算法的分类器。随机森林通过构建决策树,得到决策树森林。随机森林中的各个决策树之间是没有关系的。一颗完整的决策树森林构建完成后,对于一个输入数据样本,在随机森林中的多个决策树中进行分类和决策,直到到达随机森林的叶子节点,叶子节点所属类别即为该数据样本预测得到的结果。僵尸网络融合了传统的网络蠕虫、木马后门、病毒等技术,并结合新技术,成为现今较为广泛传播和较为隐蔽的一种恶意代码形式。使用者由于某些非法初衷,将僵尸程序大范围扩散,从而形成一个僵尸网络,并进一步通过指令和信道控制实现各种攻击行为。当前的僵尸网络的平台化技术已经很成熟,这也就为了攻击人员带来了更多效益的可能。近年来,国外的研究者针对僵尸网络提出了一种新的技术检测方法——DNS数据流分析检测技术,目前的这些基于DNS数据流的僵尸网络检测方法,大多通过模拟僵尸网络来对方法进行验证,没有在实际的网络流量中测试。此外,这些方法在测试中用到的数据量都比较的小,并不能代表实际网络中流量的真实特征。
技术实现思路
本专利技术所要解决的技术问题是,提供一种基于DNS流量特征的僵尸网络检测方法。能够
通过对域名系统(Domain Name System,DNS)服务器的查询流量提取、分析,找出Domain-Flux和Fast-Flux两种具有明显域名解析特征的僵尸网络控制服务器的查询策略所对应的命令控制(Command&Control,C&C)服务器。本专利技术所采用的技术方案是:一种基于DNS流量特征的Domain-Flux僵尸网络检测方法,包括如下步骤:1)读取域名,包括读取合法域名,并提取合法主域名,以及读取DGA算法生成的非法域名,并抽取非法主域名,将合法主域名和非法主域名组合起来,形成目标集合;2)对获得的目标集合进行处理,提取处理后的每个域名的长度,并抽取长度大于6的域名作为研究对象;3)分别计算域名熵值、构词法特征、语音特征和分组特征,用来识别DGA算法生成的随机域名;4)将得到的域名熵值、构词法特征、语音特征和分组特征分为训练集和测试集,然后放入随机森林分类器得到训练模型mDGA。步骤2)所述的处理包括去除杂数据,并将数据用逗号分为序号部分和域名部分。步骤3)所述的计算域名熵值是采用香农信息熵的方法计算域名熵,如下公式所示:E=-ΣiciLlogciL---(1)]]>其中,E为域名的香农信息熵,即字符串中不同字符出现的离散情况,L是字串的长度,Ci是字母i出现次数,字母i为变量代表的是字符串中出现的字母;所述的计算构词法特征,是采用N-gram的基本模型,用来评估一个句子出现的概率,设定一个域名表示为一个序列S=w1w2w3...wn,则域名的概率p(S),即,构词法特征表示为如下公式:p(S)=Πi=1np(wi|w1w2w3...wi-1)---(2)]]>其中wi表示第i个字母出现的概率,n为序列S的长度,字母i为变量代表的是字符串中出现的字母;所述的语音特征,是选用元音字母的个数和域名总长度的比例作为元音字母的统计特性,即语音特征,如下公式所示:E=-ΣidiLlogdiL---(3)]]>其中di表示元音字母出现的次数,L为字串的长度,E即为元音字母的熵;所述的分组特征,是提取每个域名按照数字和字母分割的部分数目。一种基于所述的基于DNS流量特征的Domain-Flux僵尸网络检测方法的Fast-Flux僵尸网络检测方法,包括如下步骤:1)将DNS服务器的原始数据使用Passivedns工具处理,只保留DNS服务器返回的A记录,并对原始数据进行预处理;2)使用针对Domain-Flux僵尸网络检测方法中通过随机森林分类器得到的训练模型对预处理的域名进行评估,获取DGA情况的打分;3)使用白名单、黑名单和灰名单对域名和IP进行评分,然后再进行交叉评分得到域名的置信度,其中,所述的白名单表示具有安全性的服务器主站的域名和IP,所述的灰名单存放了具有一定可信度的公司提供共有云服务的域名和IP,所述的黑名单中存放了确定被僵尸网络所有者控制的恶意域名和IP;4)计算IP地址的时间特性;5)计算IP地址的稳定性;6)将得到的DGA情况打分、域名置信度、IP地址的时间特性与稳定性分别分为训练集和测试集,然后放入随机森林分类器得到训练模型SFF。步骤1)所述的预处理包括处理域名和IP,并使用maxmind公司的AS信息作为AS号码查询字典,对IP进行AS信息匹配。步骤3)所述的对域名和IP进行评分是,如果域名存在于白名单则置信度加1,存在于黑名单则置信度减1,存在于灰名单则置信度加0.5,将结果记为Pwith,如果IP存在于白名单则置信度加1,存在于黑名单则置信度减1,存在于灰名单则置信度加0.5,并将结果记为Pgeo;如果域名和IP不存在于白名单、黑名单和灰名单的范围内,则置信度为零。步骤3)所述的进行交叉评分是,将对域名和IP的评分综合起来,得到域名的置信度:Pdomain=λPgeo+μPwith (4)Pdomian表示为IP置信度,Pgeo和Pwith分别表示IP是否在三种名单中的结果和域名是否在三种名单中的结果,λ是Pgeo的权值,μ是Pwith的权值。步骤4)所述的处理IP的时间特性是指域名IP的解析次数。步骤4)所述的计算IP地址的统计特性是,包括:使用如下公式分别计算IP地址的数字特征和IP地址对应的自治域的分布特征:σ2=Σi=1N(Xi-α)2N---(5)]]>式中,当计算IP地址的数字特征时,X表示域名对应的IP地址,α表示IP地址的平均值,N表示该域名对应的IP地址数目;当计算IP地址对应的自治域的分布特征时X表示域名对应的自治域,α表示自治域的本文档来自技高网
...

【技术保护点】
一种基于DNS流量特征的Domain‑Flux僵尸网络检测方法,其特征在于,包括如下步骤:1)读取域名,包括读取合法域名,并提取合法主域名,以及读取DGA算法生成的非法域名,并抽取非法主域名,将合法主域名和非法主域名组合起来,形成目标集合;2)对获得的目标集合进行处理,提取处理后的每个域名的长度,并抽取长度大于6的域名作为研究对象;3)分别计算域名熵值、构词法特征、语音特征和分组特征,用来识别DGA算法生成的随机域名;4)将得到的域名熵值、构词法特征、语音特征和分组特征分为训练集和测试集,然后放入随机森林分类器得到训练模型mDGA。

【技术特征摘要】
1.一种基于DNS流量特征的Domain-Flux僵尸网络检测方法,其特征在于,包括如下步骤:1)读取域名,包括读取合法域名,并提取合法主域名,以及读取DGA算法生成的非法域名,并抽取非法主域名,将合法主域名和非法主域名组合起来,形成目标集合;2)对获得的目标集合进行处理,提取处理后的每个域名的长度,并抽取长度大于6的域名作为研究对象;3)分别计算域名熵值、构词法特征、语音特征和分组特征,用来识别DGA算法生成的随机域名;4)将得到的域名熵值、构词法特征、语音特征和分组特征分为训练集和测试集,然后放入随机森林分类器得到训练模型mDGA。2.根据权利要求1所述的基于DNS流量特征的僵尸网络检测方法,其特征在于,步骤2)所述的处理包括去除杂数据,并将数据用逗号分为序号部分和域名部分。3.根据权利要求1所述的基于DNS流量特征的僵尸网络检测方法,其特征在于,步骤3)所述的计算域名熵值是采用香农信息熵的方法计算域名熵,如下公式所示:E=-ΣiciLlogciL---(1)]]>其中,E为域名的香农信息熵,即字符串中不同字符出现的离散情况,L是字串的长度,Ci是字母i出现次数,字母i为变量代表的是字符串中出现的字母;所述的计算构词法特征,是采用N-gram的基本模型,用来评估一个句子出现的概率,设定一个域名表示为一个序列S=w1w2w3...wn,则域名的概率p(S),即,构词法特征表示为如下公式:p(S)=Πi=1np(wi|w1w2w3...wi-1)---(2)]]>其中wi表示第i个字母出现的概率,n为序列S的长度,字母i为变量代表的是字符串中出现的字母;所述的语音特征,是选用元音字母的个数和域名总长度的比例作为元音字母的统计特性,即语音特征,如下公式所示:E=-ΣidiLlogdiL---(3)]]>其中di表示元音字母出现的次数,L为字串的长度,E即为元音字母的熵;所述的分组特征,是提取每个域名按照数字和字母分割的部分数目。4.一种基于要求1所述的基于DNS流量特征的Domain-Flux僵尸网络检测方法的Fast-Flux僵尸网络检测方法,其特征在于,包括如下步骤:1)将DNS服务器的原始数据使用Passivedns工具处理,只保留DNS服务器返回的A记录,并对原始数据进行预处理;2)使用针对Domain-Flux僵尸网络检测方法中通过随机森林分类器得到的训练模型对预处理的域名进行评估,获取DGA情况的打分;3)使用白名单、黑名单和灰名单对域名和IP进行评分,然后再进行交叉评分得到域名的置信度,其中,所述的白名单表示具有安全性的服务器主站的域名和IP,所述...

【专利技术属性】
技术研发人员:喻梅李鑫于健王建荣赵越雷霆
申请(专利权)人:天津大学
类型:发明
国别省市:天津;12

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

1