CN110336789A - 基于混合学习的Domain-flux僵尸网络检测方法 - Google Patents

基于混合学习的Domain-flux僵尸网络检测方法 Download PDF

Info

Publication number
CN110336789A
CN110336789A CN201910449046.4A CN201910449046A CN110336789A CN 110336789 A CN110336789 A CN 110336789A CN 201910449046 A CN201910449046 A CN 201910449046A CN 110336789 A CN110336789 A CN 110336789A
Authority
CN
China
Prior art keywords
domain
cluster
domain name
feature
flux
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910449046.4A
Other languages
English (en)
Inventor
谷勇浩
崔卓群
范渊
郭振洋
李良训
李凯悦
林明峰
刘博�
杨勃
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Posts and Telecommunications
Hangzhou Dbappsecurity Technology Co Ltd
Original Assignee
Beijing University of Posts and Telecommunications
Hangzhou Dbappsecurity Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing University of Posts and Telecommunications, Hangzhou Dbappsecurity Technology Co Ltd filed Critical Beijing University of Posts and Telecommunications
Priority to CN201910449046.4A priority Critical patent/CN110336789A/zh
Publication of CN110336789A publication Critical patent/CN110336789A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic

Landscapes

  • Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及基于混合学习的Domain‑flux僵尸网络检测方法,输入的DNS数据区分训练数据集和检测数据集,分别预处理并将预处理后的训练数据集输入模型,训练得到分类器,将预处理后的检测数据集输入分类器,输出聚类后的域名簇,计算域名簇分值并筛选属于Domain‑flux僵尸网络域名的簇,获得受感染主机IP地址及C&C服务器IP地址。本发明为后续防御措施奠定基础,解析时使用和域名、时间、请求IP、解析IP等多方相关的特征,不容易被绕过;兼顾有监督和无监督学习优势,结合分类和聚类算法,可有效检测与训练集差异较大、表现形式不同的未知僵尸样本,相较其他聚类算法检测速度快。

Description

基于混合学习的Domain-flux僵尸网络检测方法
技术领域
本发明涉及数字信息的传输,例如电报通信的技术领域,特别涉及一种基于混合学习的Domain-flux僵尸网络检测方法。
背景技术
随着网络技术的发展,越来越多、各种形式的计算机都接入了互联网,这也给了僵尸网络以更大的可乘之机。僵尸网络由僵尸主机、僵尸程序、状态转换函数和C&C信道四个部分构成,从攻击者角度看,僵尸主机可有多种状态,如不可用、可用、活动中等,这些僵尸主机会在其真正所有者不知情、未授权的情况下做一些有利于僵尸网络控制者的行为,包括DDoS(分布式拒绝服务)攻击、垃圾邮件、点击欺诈、流量窃听和比特币采集等,僵尸程序是攻击者用于操控僵尸主机的工具,状态转换函数表示僵尸主机经过僵尸程序控制导致状态变迁的转换关系,C&C信道包括僵尸主机和控制者通信时所使用的网络拓扑和相关软件资源。僵尸网络造成影响网络正常工作、信息泄露、网络行为伪造、计算资源窃取等后果,严重影响网络和社会的正常运行。
Domain-flux是僵尸网络常用的一个通过躲避检测和信道频繁变更来保证其可用性的技术,其最终目的是找到C&C信道的IP,而途径是产生并访问持续变化的域名,僵尸主机中的程序在不同时间可产生不同的域名进行DNS查询,根据DNS的返回结果进行与C&C的通信,如果C&C的IP被封,僵尸网络控制者只要更改下一次访问域名对应的IP地址即可完成迁移。这使得对僵尸网络及时的防御工作变得非常困难。Domain-flux技术的核心算法是DGA(域名生成算法),通过一个主控端或受控端都可以获得的信息——如时间、某网站内容等——作为种子,通过某一种映射算法产生一个字符串,再拼接上有效的顶级域名,从而产生合法的DNS域名。网络安全人员需要知道种子来源和伪随机算法才能预测出这个DGA可以产生的恶意域名。
现有专利CN105897714A“基于DNS流量特征的僵尸网络检测方法”提出了一种基于DNS流量,通过四个基于域名的特征和随机森林算法检测使用Domain-flux域名,其存在基于域名特征的检测方法对于部分DGA僵尸网络会产生较多漏报、及当待检测的僵尸样本和训练集的区别较大时分类算法随机森林难以有效对待测样本加以区分的缺陷。
论文"A method for detecting DGA botnet based on semantic and clusteranalysis"提出了一种基于DNS流量,通过过滤和K-means算法聚类的手段检测使用Domain-flux域名,同样存在着虽然检测到恶意NXdomain,但不容易得到僵尸网络使用的域名和C&C服务器的地址,不便于后期的对抗,及寻找K的次数过多而使得K-means聚类失去时效性优势的缺陷。
发明内容
本发明解决了现有技术中,普遍存在的包括单独使用域名相关的特征或时间特征而存在易于被绕过的行为、基于阈值或分类算法的检测方法很难达到训练集涵盖所有该检测的情况、基于聚类的检测方法一般时间复杂度较高的问题,提供了一种优化的基于混合学习的Domain-flux僵尸网络检测方法。
本发明所采用的技术方案是,一种基于混合学习的Domain-flux僵尸网络检测方法,所述方法包括以下步骤:
步骤1:将输入的DNS数据分为训练数据集和检测数据集;
步骤2:分别对训练数据集和检测数据集进行预处理;
步骤3:将预处理后的训练数据集输入模型进行训练,得到分类器;
步骤4:将预处理后的检测数据集输入分类器,分类器输出对检测数据的预划分;以该预划分为初始状态,使用改进的Kmeans算法对检测数据进行聚类分析,输出聚类后的域名簇;
步骤5:基于聚类结果对所有域名簇进行分值计算;基于计算结果判断是否存在任一域名簇为属于Domain-flux僵尸网络域名的簇,若存在,则输出符合条件的所有域名簇内的所有域名,进行下一步,若不存在,则等待下一批检测数据集,进行预处理后返回步骤4;
步骤6:基于输出的所有域名分别获得受感染主机的IP地址及由Domain-flux域名解析得到的C&C服务器的IP地址,等待下一批检测数据集,进行预处理后返回步骤4。
优选地,所述步骤1中,DNS数据包括DNS流量和DNS日志。
优选地,所述步骤2中,预处理包括对于训练数据集和检测数据集中不合规或不合法DNS的过滤及对过滤后剩下的DNS提取特征。
优选地,所述特征包括任一DNS数据的域名长度、域名层级、1-gram常见程度、2-gram常见程度、3-gram常见程度、被访问的时间跨度、平均TTL、解析IP总数、解析IP集属于不同网段个数、解析IP变化的次数、有效等价域名总数、源IP总数、源IP查询RRtype种类平均数。
优选地,所述步骤4包括以下步骤:
步骤4.1:获得检测数据集Dtest在分类器中的映射集{λ1,λ2,...,λn},存储于Listidx
步骤4.2:基于检测数据集Dtest和Listidx,计算并赋予K-means算法的初始K值及对应的若干初始中心点Listcenter
步骤4.3:以K和Listcenter为起始状态,对检测数据集Dtest进行K-means聚类分析,收敛后,Listcenter更新,得到聚类结果SL
步骤4.4:根据聚类结果判断是否有簇包含超过λ倍标准差数量的离群样本,若有,则对当前簇进行分裂处理;根据聚类结果判断是否存在任意两个簇的中心距离小于阈值,若有则合并;
步骤4.5:若步骤4.4中进行了分裂处理,则更新K和Listcenter,返回步骤4.3,否则进行下一步;
步骤4.6:输出聚类后的域名簇。
优选地,所述步骤4.4中,分裂处理包括以下步骤:
步骤4.4.1:对于每个样本xi,计算样本到相应簇中心的距离di,设所有di的方差为σd
步骤4.4.2:对于每个簇Cj,统计簇内样本di大于σd的个数nj,设所有nj的方差为σn
步骤4.4.3:对于每个簇Cj,若nj>λσn,则选择距离中心大于σd和小于σd的样本点各一个,以此为中心,进行2-means聚类,否则,不满足分裂条件,其中,λ=max(3,2·log|Cj|)。
优选地,所述步骤4.4中,阈值不大于2。
优选地,所述步骤5中,取各域名簇的聚类中心对应的特征值进行排序;对Domain-flux僵尸网络的特征的值较正常网络小的特征,按照特征值从小到大排序;对Domain-flux僵尸网络的特征的值较正常网络大的特征按照特征值从大到小排序;取Domain-flux僵尸网络的若干强相关特征,将所述若干强相关特征对应的排序的序号进行相加,若相加后的和小于阈值,则为属于Domain-flux僵尸网络域名的可疑簇。
优选地,所述分值的取值范围小于等于C×K,其中,C为彼此独立或弱相关的特征个数,K为域名簇个数。
优选地,每次得到分类器后以时间T为更新周期,若更新周期内存在更新的僵尸网络,则将更新的僵尸网络的DNS数据作为新的训练数据集并进行步骤2的预处理,返回步骤3,否则,时间T后返回步骤1。
本发明提供了一种优化的基于混合学习的Domain-flux僵尸网络检测方法,通过将输入的DNS数据分为训练数据集和检测数据集,分别进行预处理并将预处理后的训练数据集输入模型进行训练,得到分类器,将预处理后的检测数据集输入分类器,由分类器输出聚类后的域名簇,对所有域名簇进行分值计算并对是否存在属于Domain-flux僵尸网络域名的簇进行筛选,若存在则基于输出的所有域名分别获得受感染主机的IP地址及由Domain-flux域名解析得到的C&C服务器的IP地址。
本发明在DNS查询和解析信息中检测出Domain-flux相关的域名,进而关联找到受控主机和C&C服务器,从而为后续的防御措施奠定基础。本发明在解析时使用和域名、时间、请求IP、解析IP等多方面相关的特征,不容易被绕过;同时兼顾了有监督学习和无监督学习的优势,结合分类算法和聚类算法,可以有效检测到与训练集差异较大、表现形式不同的未知僵尸样本,并且相较其他聚类算法可以在较短时间内得到检测结果。
附图说明
图1为本发明的流程图。
具体实施方式
下面结合实施例对本发明做进一步的详细描述,但本发明的保护范围并不限于此。
本发明涉及一种基于混合学习的Domain-flux僵尸网络检测方法,所述方法包括以下步骤。
步骤1:将输入的DNS数据分为训练数据集和检测数据集。
所述步骤1中,DNS数据包括DNS流量和DNS日志。
步骤2:分别对训练数据集和检测数据集进行预处理。
所述步骤2中,预处理包括对于训练数据集和检测数据集中不合规或不合法DNS的过滤及对过滤后剩下的DNS提取特征。
所述特征包括任一DNS数据的域名长度、域名层级、1-gram常见程度、2-gram常见程度、3-gram常见程度、被访问的时间跨度、平均TTL、解析IP总数、解析IP集属于不同网段个数、解析IP变化的次数、有效等价域名总数、源IP总数、源IP查询RRtype种类平均数。
本发明中,为了保证有监督模型的正常运行,要对预处理后的数据集进行标记,即加上恶意或非恶意的标注。
本发明中,过滤包括过滤DNS数据中不属于本方法分析范畴的DNS信息,如反向DNS查询、因服务器未响应导致的查询失败信息等,此为不合规DNS;同时,在实际应用中,预处理还应包括“数据清洗”,包括清除(过滤)由于传输错误等原因导致的不合法DNS记录。
本发明中,过滤后的训练数据集和检测数据集只保留需用于分析的信息。
本发明中,1-gram常见程度、2-gram常见程度、3-gram常见程度是指一个字符串中,长度为1或2或3的子串的集合的常见程度,其被定义为这个集合中的元素在Alexa.com中前100,000的域名对应的n-gram(n为1或2或3)集合中出现的频率的平均值。基于现有掌握的技术判断,大部分基于字符的域名生成算法的1-gram常见程度、2-gram常见程度、3-gram常见程度值均较低。
本发明中,被访问的时间跨度是指域名第一次被访问到最近一次被访问的中间间隔秒数,这个值在Domain-flux僵尸网络较短。
本发明中,平均TTL是指任一DNS数据可能指向的多个IP中,每个RR对应的TTL的平均值。
本发明中,解析IP变化的次数是指任一域名解析出的IP集合较上一次有变化的次数,特别是出现新元素的次数,这个值在Domain-flux僵尸网络中大概率会高于正常值。
本发明中,等价域名是指,域名A和域名B满足一个是另一个的别名,或域名A和域名B均可以有一个A类RR指向同一个IP,或存在任一域名与域名A和域名B均互为等价域名;有效等价域名是指,域名B的DNS解析有至少一个A类记录且A和B互为等价域名,则域名B为域名A的有效等价域名。
本发明中,RRtype是指Resource Record(RR)的type字段,RR的type包括A、MX、PTR等,A类RR返回IPv4类的IP地址,其它的则是DNS的其它服务。
本发明中,特征涵盖了包括DNS查询信息、DNS返回信息、DNS查询行为的群体相似性和一个或一类域名在一段时间内的统计特征,是待检测网络在一段时间内发送的所有DNS查询和返回信息。一个符合这个特点的网络结点就是局域网的本地DNS服务器,因为其使用递归DNS查询方式,所以它可以确保收集到DNS返回信息,同时它承担了一段网络的所有DNS查询服务,可以确保信息的完整性。如果这个网络有备用DNS服务器或多个本地DNS服务器,则需要将它们的信息合并。
本发明中,预处理和标记完成后,将其存储,以便输入后续的检测方法。
步骤3:将预处理后的训练数据集输入模型进行训练,得到分类器。
本发明中,分类器可以是任何树家族的算法,如GBDT,本领域技术人员可以依据需求自行选择,同样可以完成后续聚类的初始化作业。
步骤4:将预处理后的检测数据集输入分类器,分类器输出对检测数据的预划分;以该预划分为初始状态,使用改进的Kmeans算法对检测数据进行聚类分析,输出聚类后的域名簇。
本发明中,步骤4为分类器对聚类模型的初始化,同时涉及聚类算法的改进。
所述步骤4包括以下步骤:
步骤4.1:获得检测数据集Dtest在分类器中的映射集{λ1,λ2,...,λn},存储于Listidx
步骤4.2:基于检测数据集Dtest和Listidx,计算K-means算法的初始K值及对应的若干初始中心点Listcenter
步骤4.3:以K和Listcenter为起始状态,对检测数据集Dtest进行K-means聚类分析,收敛后,Listcenter更新,得到聚类结果SL
步骤4.4:根据聚类结果判断是否有簇包含超过λ倍标准差数量的离群样本,若有,则对当前簇进行分裂处理;根据聚类结果判断是否存在任意两个簇的中心距离小于阈值,若有则合并;
所述步骤4.4中,分裂处理包括以下步骤:
步骤4.4.1:对于每个样本xi,计算样本到相应簇中心的距离di,设所有di的方差为σd
步骤4.4.2:对于每个簇Cj,统计簇内样本di大于σd的个数nj,设所有nj的方差为σn
步骤4.4.3:对于每个簇Cj,若nj>λσn,则选择距离中心大于σd和小于σd的样本点各一个,以此为中心,进行2-means聚类,否则,不满足分裂条件,其中,λ=max(3,2·log|Cj|)。
步骤4.5:若步骤4.4中进行了分裂处理,则更新K和Listcenter,返回步骤4.3,否则进行下一步;
所述步骤4.4中,阈值不大于2。
步骤4.6:输出聚类后的域名簇。
本发明中,结合分类算法和聚类算法,有效检测到与训练集差异较大、表现形式不同的未知僵尸样本,并且相较其他聚类算法可以在较短时间内得到检测结果。
步骤5:基于聚类结果对所有域名簇进行分值计算;基于计算结果判断是否存在任一域名簇为属于Domain-flux僵尸网络域名的簇,若存在,则输出符合条件的所有域名簇内的所有域名,进行下一步,若不存在,则等待下一批检测数据集,进行预处理后返回步骤4。
所述步骤5中,取各域名簇的聚类中心对应的特征值进行排序;对Domain-flux僵尸网络的特征的值较正常网络小的特征,按照特征值从小到大排序;对Domain-flux僵尸网络的特征的值较正常网络大的特征按照特征值从大到小排序;取Domain-flux僵尸网络的若干强相关特征,将所述若干强相关特征对应的排序的序号进行相加,若相加后的和小于阈值,则为属于Domain-flux僵尸网络域名的可疑簇。
所述分值的取值范围小于等于C×K,其中,C为彼此独立或弱相关的特征个数,K为域名簇个数。
本发明中,正常与异常样本有向两级分化趋势的特征,在有些特征维度上,部分样本,如排序时被排序的是簇中心坐标为取值越低越疑似僵尸网络,部分样本是值越高越疑似僵尸网络,还有部分样本是否疑似僵尸网络不能单以值的高低衡量;对于第一种情况,采用从小到大排序;对于第二种情况,采用从大到小排序;对于第三种情况,不采纳排序;最后的分数由这些排序的序号相加得出,这样各维度排名都靠前的簇分数就会很低,即可以检测出。
本发明中,根据聚类结果,主要使用提取特征中的1-gram常见程度、2-gram常见程度、3-gram常见程度和有效等价域名总数进行分值计算,将各聚类簇中心对应的这些特征值进行排序,其中,1-gram常见程度、2-gram常见程度、3-gram常见程度属于相关性比较大的特征,而有效等价域名总数属于值越大则越趋于恶意的特征,这类特征即为强相关特征。
本发明中,以1-gram常见程度、2-gram常见程度、3-gram常见程度和有效等价域名总数做分值计算进行举例,对1-gram常见程度、2-gram常见程度、3-gram常见程度的排名进行相加并求平均值,对有效等价域名总数的排名以域名簇的总个数进行减除,两项相加,得到最终分数,在这种情况下,恶意的域名簇将会得到趋近于0的分数,其中,1-gram常见程度、2-gram常见程度、3-gram常见程度这三个特征彼此是正相关的,为避免过于依赖n-gram常见程度这一类特征,所以取这三个排名的均值;以上表述可以表达为其中,Ci表示第i个簇中心对应的向量,Cij表示向量Ci的第j个值,rank(Cij)表示Cij在{Cxj|Cx∈SC}中序列的排名,rank(Ci3)、rank(Ci4)和rank(Ci5)分别表示1-gram常见程度、2-gram常见程度、3-gram常见程度的排名,rank(Ci11)表示有效等价域名总数的排名,排名自0开始计数,这个的取值范围为[0,C×K],C为彼此相关性较小或没有的特征个数,如取2,K为域名簇的个数。
本发明中,通过进行最终结果的判定可通过阈值或排名的方式,本实施例中设定阈值为7,对于大于7的簇,检测系统会认为这个簇内是正常的域名。反之,对于不大于7的簇,检测系统会认为这个簇是属于Domain-flux僵尸网络域名的簇(可疑簇),输出簇内所有域名。
本发明中,都是僵尸网络的可能性是没有的,而若都不是僵尸网络的话,不会在两个维度上都表现得很异常,也就是说分数并不会太低。
步骤6:基于输出的所有域名分别获得受感染主机的IP地址及由Domain-flux域名解析得到的C&C服务器的IP地址,等待下一批检测数据集,进行预处理后返回步骤4。
本发明中,步骤5的输出为Domain-flux僵尸网络使用的域名,也就是被解析的域名生成算法DGA。
本发明中,可以根据检测出的域名匹配DNS流量包或查询日志来输出受感染主机的IP地址和Domain-flux域名解析出的IP地址。当Domain-flux域名被检测出,则该DNS解析包发送的目的IP是受感染的僵尸,域名解析出的IP地址是C&C服务器的地址。
每次得到分类器后以时间T为更新周期,若更新周期内存在更新的僵尸网络,则将更新的僵尸网络的DNS数据作为新的训练数据集并进行步骤2的预处理,返回步骤3,否则,时间T后返回步骤1。
本发明中,一般情况下,可以在一个新的僵尸家族发现后对分类器进行更新,若没有,则可采用周期性更新,如一周、一个月等,以保证分类器的正常工作、检测效率为准。
本发明通过将输入的DNS数据分为训练数据集和检测数据集,分别进行预处理并将预处理后的训练数据集输入模型进行训练,得到分类器,将预处理后的检测数据集输入分类器,由分类器输出聚类后的域名簇,对所有域名簇进行分值计算并对是否存在属于Domain-flux僵尸网络域名的簇进行筛选,若存在则基于输出的所有域名分别获得受感染主机的IP地址及由Domain-flux域名解析得到的C&C服务器的IP地址。
本发明在DNS查询和解析信息中检测出Domain-flux相关的域名,进而关联找到受控主机和C&C服务器,从而为后续的防御措施奠定基础。本发明在解析时使用和域名、时间、请求IP、解析IP等多方面相关的特征,不容易被绕过;同时兼顾了有监督学习和无监督学习的优势,结合分类算法和聚类算法,可以有效检测到与训练集差异较大、表现形式不同的未知僵尸样本,并且相较其他聚类算法可以在较短时间内得到检测结果。

Claims (10)

1.一种基于混合学习的Domain-flux僵尸网络检测方法,其特征在于:所述方法包括以下步骤:
步骤1:将输入的DNS数据分为训练数据集和检测数据集;
步骤2:分别对训练数据集和检测数据集进行预处理;
步骤3:将预处理后的训练数据集输入模型进行训练,得到分类器;
步骤4:将预处理后的检测数据集输入分类器,分类器输出对检测数据的预划分;以该预划分为初始状态,使用改进的Kmeans算法对检测数据进行聚类分析,输出聚类后的域名簇;
步骤5:基于聚类结果对所有域名簇进行分值计算;基于计算结果判断是否存在任一域名簇为属于Domain-flux僵尸网络域名的簇,若存在,则输出符合条件的所有域名簇内的所有域名,进行下一步,若不存在,则等待下一批检测数据集,进行预处理后返回步骤4;
步骤6:基于输出的所有域名分别获得受感染主机的IP地址及由Domain-flux域名解析得到的C&C服务器的IP地址,等待下一批检测数据集,进行预处理后返回步骤4。
2.根据权利要求1所述的一种基于混合学习的Domain-flux僵尸网络检测方法,其特征在于:所述步骤1中,DNS数据包括DNS流量和DNS日志。
3.根据权利要求1所述的一种基于混合学习的Domain-flux僵尸网络检测方法,其特征在于:所述步骤2中,预处理包括对于训练数据集和检测数据集中不合规或不合法DNS的过滤及对过滤后剩下的DNS提取特征。
4.根据权利要求3所述的一种基于混合学习的Domain-flux僵尸网络检测方法,其特征在于:所述特征包括任一DNS数据的域名长度、域名层级、1-gram常见程度、2-gram常见程度、3-gram常见程度、被访问的时间跨度、平均TTL、解析IP总数、解析IP集属于不同网段个数、解析IP变化的次数、有效等价域名总数、源IP总数、源IP查询RRtype种类平均数。
5.根据权利要求1所述的一种基于混合学习的Domain-flux僵尸网络检测方法,其特征在于:所述步骤4包括以下步骤:
步骤4.1:获得检测数据集Dtest在分类器中的映射集{λ12,…,λn},存储于Listidx
步骤4.2:基于检测数据集Dtest和Listidx,计算并赋予K-means算法的初始K值及对应的若干初始中心点Listcenter
步骤4.3:以K和Listcenter为起始状态,对检测数据集Dtest进行K-means聚类分析,收敛后,Listcenter更新,得到聚类结果SL
步骤4.4:根据聚类结果判断是否有簇包含超过λ倍标准差数量的离群样本,若有,则对当前簇进行分裂处理;根据聚类结果判断是否存在任意两个簇的中心距离小于阈值,若有则合并;
步骤4.5:若步骤4.4中进行了分裂处理,则更新K和Listcenter,返回步骤4.3,否则进行下一步;
步骤4.6:输出聚类后的域名簇。
6.根据权利要求5所述的一种基于混合学习的Domain-flux僵尸网络检测方法,其特征在于:所述步骤4.4中,分裂处理包括以下步骤:
步骤4.4.1:对于每个样本xi,计算样本到相应簇中心的距离di,设所有di的方差为σd
步骤4.4.2:对于每个簇Cj,统计簇内样本di大于σd的个数nj,设所有nj的方差为σn
步骤4.4.3:对于每个簇Cj,若nj>λσn,则选择距离中心大于σd和小于σd的样本点各一个,以此为中心,进行2-means聚类,否则,不满足分裂条件,其中,λ=max(3,2·log|Cj|)。
7.根据权利要求5所述的一种基于混合学习的Domain-flux僵尸网络检测方法,其特征在于:所述步骤4.4中,阈值不大于2。
8.根据权利要求3所述的一种基于混合学习的Domain-flux僵尸网络检测方法,其特征在于:所述步骤5中,取各域名簇的聚类中心对应的特征值进行排序;对Domain-flux僵尸网络的特征的值较正常网络小的特征,按照特征值从小到大排序;对Domain-flux僵尸网络的特征的值较正常网络大的特征按照特征值从大到小排序;取Domain-flux僵尸网络的若干强相关特征,将所述若干强相关特征对应的排序的序号进行相加,若相加后的和小于阈值,则为属于Domain-flux僵尸网络域名的可疑簇。
9.根据权利要求8所述的一种基于混合学习的Domain-flux僵尸网络检测方法,其特征在于:所述分值的取值范围小于等于C×K,其中,C为彼此独立或弱相关的特征个数,K为域名簇个数。
10.根据权利要求1所述的一种基于混合学习的Domain-flux僵尸网络检测方法,其特征在于:每次得到分类器后以时间T为更新周期,若更新周期内存在更新的僵尸网络,则将更新的僵尸网络的DNS数据作为新的训练数据集并进行步骤2的预处理,返回步骤3,否则,时间T后返回步骤1。
CN201910449046.4A 2019-05-28 2019-05-28 基于混合学习的Domain-flux僵尸网络检测方法 Pending CN110336789A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910449046.4A CN110336789A (zh) 2019-05-28 2019-05-28 基于混合学习的Domain-flux僵尸网络检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910449046.4A CN110336789A (zh) 2019-05-28 2019-05-28 基于混合学习的Domain-flux僵尸网络检测方法

Publications (1)

Publication Number Publication Date
CN110336789A true CN110336789A (zh) 2019-10-15

Family

ID=68140145

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910449046.4A Pending CN110336789A (zh) 2019-05-28 2019-05-28 基于混合学习的Domain-flux僵尸网络检测方法

Country Status (1)

Country Link
CN (1) CN110336789A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110784483A (zh) * 2019-11-04 2020-02-11 北京航空航天大学 一种基于dga异常域名的事件检测系统及方法
CN110830505A (zh) * 2019-11-29 2020-02-21 北京工业大学 一种针对dns查询的异常检测方法
CN111818073A (zh) * 2020-07-16 2020-10-23 深信服科技股份有限公司 一种失陷主机检测方法、装置、设备及介质
CN112261004A (zh) * 2020-09-27 2021-01-22 新华三信息安全技术有限公司 一种Domain Flux数据流的检测方法及装置
CN113014582A (zh) * 2021-02-25 2021-06-22 浙江乾冠信息安全研究院有限公司 分布式dns流量监控方法、系统、电子设备及介质
CN113179260A (zh) * 2021-04-21 2021-07-27 国家计算机网络与信息安全管理中心河北分中心 僵尸网络的检测方法、装置、设备及介质
CN113556308A (zh) * 2020-04-23 2021-10-26 深信服科技股份有限公司 一种流量安全性检测方法、系统、设备及计算机存储介质
CN114363060A (zh) * 2021-12-31 2022-04-15 深信服科技股份有限公司 一种域名检测方法、系统、设备及计算机可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106973057A (zh) * 2017-03-31 2017-07-21 浙江大学 一种适用于入侵检测的分类方法
CN107592312A (zh) * 2017-09-18 2018-01-16 济南互信软件有限公司 一种基于网络流量的恶意软件检测方法
CN107819698A (zh) * 2017-11-10 2018-03-20 北京邮电大学 一种基于半监督学习的网络流量分类方法、计算机设备
CN107846326A (zh) * 2017-11-10 2018-03-27 北京邮电大学 一种自适应的半监督网络流量分类方法、系统及设备
CN109768985A (zh) * 2019-01-30 2019-05-17 电子科技大学 一种基于流量可视化与机器学习算法的入侵检测方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106973057A (zh) * 2017-03-31 2017-07-21 浙江大学 一种适用于入侵检测的分类方法
CN107592312A (zh) * 2017-09-18 2018-01-16 济南互信软件有限公司 一种基于网络流量的恶意软件检测方法
CN107819698A (zh) * 2017-11-10 2018-03-20 北京邮电大学 一种基于半监督学习的网络流量分类方法、计算机设备
CN107846326A (zh) * 2017-11-10 2018-03-27 北京邮电大学 一种自适应的半监督网络流量分类方法、系统及设备
CN109768985A (zh) * 2019-01-30 2019-05-17 电子科技大学 一种基于流量可视化与机器学习算法的入侵检测方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
崔卓群,吴伟明: "一种基于GBDT的Domainflux僵尸网络检测方法的设计与分析", 《中国科技论文在线 论文研究》 *
崔卓群: "基于数据挖掘的僵尸主机检测的研究与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110784483A (zh) * 2019-11-04 2020-02-11 北京航空航天大学 一种基于dga异常域名的事件检测系统及方法
CN110830505A (zh) * 2019-11-29 2020-02-21 北京工业大学 一种针对dns查询的异常检测方法
CN113556308A (zh) * 2020-04-23 2021-10-26 深信服科技股份有限公司 一种流量安全性检测方法、系统、设备及计算机存储介质
CN111818073A (zh) * 2020-07-16 2020-10-23 深信服科技股份有限公司 一种失陷主机检测方法、装置、设备及介质
CN111818073B (zh) * 2020-07-16 2022-08-09 深信服科技股份有限公司 一种失陷主机检测方法、装置、设备及介质
CN112261004A (zh) * 2020-09-27 2021-01-22 新华三信息安全技术有限公司 一种Domain Flux数据流的检测方法及装置
CN112261004B (zh) * 2020-09-27 2022-05-27 新华三信息安全技术有限公司 一种Domain Flux数据流的检测方法及装置
CN113014582A (zh) * 2021-02-25 2021-06-22 浙江乾冠信息安全研究院有限公司 分布式dns流量监控方法、系统、电子设备及介质
CN113014582B (zh) * 2021-02-25 2023-04-07 浙江乾冠信息安全研究院有限公司 分布式dns流量监控方法、系统、电子设备及介质
CN113179260A (zh) * 2021-04-21 2021-07-27 国家计算机网络与信息安全管理中心河北分中心 僵尸网络的检测方法、装置、设备及介质
CN114363060A (zh) * 2021-12-31 2022-04-15 深信服科技股份有限公司 一种域名检测方法、系统、设备及计算机可读存储介质

Similar Documents

Publication Publication Date Title
CN110336789A (zh) 基于混合学习的Domain-flux僵尸网络检测方法
CN112104677B (zh) 一种基于知识图谱的受控主机检测方法和装置
Xing et al. Survey on botnet detection techniques: Classification, methods, and evaluation
Najafimehr et al. A hybrid machine learning approach for detecting unprecedented DDoS attacks
CN112910929B (zh) 基于异质图表示学习的恶意域名检测方法及装置
Cui et al. Malicious URL detection with feature extraction based on machine learning
CN112866023B (zh) 网络检测、模型训练方法、装置、设备及存储介质
CN109450842A (zh) 一种基于神经网络的网络恶意行为识别方法
CN110830490B (zh) 基于带对抗训练深度网络的恶意域名检测方法及系统
CN110177123B (zh) 基于dns映射关联图的僵尸网络检测方法
Elitzur et al. Attack hypothesis generation
Alenazi et al. Holistic model for http botnet detection based on dns traffic analysis
Silva et al. A statistical analysis of intrinsic bias of network security datasets for training machine learning mechanisms
He et al. Malicious domain detection via domain relationship and graph models
CN112204930B (zh) 恶意域名检测设备、系统和方法
Xu et al. [Retracted] DDoS Detection Using a Cloud‐Edge Collaboration Method Based on Entropy‐Measuring SOM and KD‐Tree in SDN
Lagraa et al. Deep mining port scans from darknet
Peng et al. MalShoot: shooting malicious domains through graph embedding on passive DNS data
Yang et al. Naruto: DNS covert channels detection based on stacking model
Yang et al. Detecting DNS covert channels using stacking model
Qu et al. Direct batch growth hierarchical self-organizing mapping based on statistics for efficient network intrusion detection
Yan et al. Detecting internet-scale NATs for IoT devices based on Tri-net
Tian et al. Network intrusion detection method based on radial basic function neural network
Kruczkowski et al. FP-tree and SVM for malicious web campaign detection
Kadam et al. Real-time intrusion detection with genetic, fuzzy, pattern matching algorithm

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20191015