CN115297083B - 基于数据量和行为特征的域名系统隧道检测方法和系统 - Google Patents
基于数据量和行为特征的域名系统隧道检测方法和系统 Download PDFInfo
- Publication number
- CN115297083B CN115297083B CN202210926530.3A CN202210926530A CN115297083B CN 115297083 B CN115297083 B CN 115297083B CN 202210926530 A CN202210926530 A CN 202210926530A CN 115297083 B CN115297083 B CN 115297083B
- Authority
- CN
- China
- Prior art keywords
- data
- dns
- domain name
- request
- tunnel
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/2592—Translation of Internet protocol [IP] addresses using tunnelling or encapsulation
Abstract
本申请公开了基于数据量和行为特征的域名系统隧道检测方法和系统,该方法包括:获取域名系统DNS数据;从所述DNS数据中获取源地址和请求域名,并获取所述DNS数据对应的请求结果;根据所述源地址和所述请求域名对应的二级域名进行统计得到统计数据,其中,所述统计数据包括所述源地址对应的数据量以及所述源地址和所述二级域名对应的请求结果的数量;根据所述统计数据判断所述DNS数据是否为DNS隧道数据。通过本申请解决了现有技术中依靠单个数据包长度作为检测DNS隧道的依据所导致的检测准确率的问题,从而基于统计数据来检测DNS隧道,提高了DNS隧道检测的准确率。
Description
技术领域
本申请涉及到网络领域,具体而言,涉及基于数据量和行为特征的域名系统隧道检测方法和系统。
背景技术
域名系统(DomainName System,简称为DNS),是互联网的基础架构系统,互联网使用IP地址(IPv4,IPv6)标识访问对应目标主机。单纯的IPv4或IPv6地址是由数字或十六进制字符组成,晦涩难以记忆,因此互联网上的网站使用较易辨认和记忆的域名作为其标识,并由互联网运营商维护一个域名和IP地址一一映射的分布式数据库,即DNS。通常用户发送目标主机的域名至运营商或其他的DNS服务器,由DNS服务器经过递归/迭代查询,获取域名所对应的IP地址,并将其发送至用户终端。用户终端再根据IP地址访问相应的目标主机,实现正常上网流程。DNS协议通常使用的端口是53端口,进行DNS解析时一般采用UDP协议,而DNS服务器在进行递归/迭代查询时使用TCP协议。
在实际现网中,网络节点会部署防火墙和入侵防御检测设备对网络流量进行检测。防火墙会严格控制内网与外网之间的通讯。攻击者如果想透过防火墙实现一些控制命令,内部数据外传等黑客行为,很难逃过防火墙的监控。但是内网用户如果想访问外网网站服务器,DNS服务则是必不可少的。一般防火墙也不会拦截DNS协议通讯,因此攻击者可以将自己想要传输的数据封装成DNS协议的流量数据,通过53端口进行隧道通讯,逃脱一般监控手段的检测。为了描述方面,将伪装成DNS协议并通过隧道通讯的流量数据称作DNS隐蔽隧道(或简称为DNS隧道),将该流量数据称为DNS隧道数据。
由于DNS隐蔽隧道通讯中的DNS流量和正常的DNS流量差别并不大,因此检测DNS隐蔽隧道比较困难。现有技术在检测DNS隧道通信时,判定数据包内容符合标准DNS协议、且内容长度大于预定字节,则确定该数据包为DNS隧道数据。但是,由于现有方法仅用单个数据包的长度作为判断依据,导致DNS隧道通信的检测准确率较低。
发明内容
本申请实施例提供了基于数据量和行为特征的域名系统隧道检测方法和系统,以至少解决现有技术中依靠单个数据包长度作为检测DNS隧道的依据所导致的检测准确率的问题。
根据本申请的一个方面,提供了一种基于数据量和行为特征的域名系统隧道检测方法,包括:获取域名系统DNS数据;从所述DNS数据中获取源地址和请求域名,并获取所述DNS数据对应的请求结果,其中,所述源地址是所述DNS请求消息来源方的网络协议IP地址,所述请求域名为所述DNS请求查询的域名,所述请求结果为对所述请求域名进行查询后得到的结果,所述结果为所述请求域名对应的IP地址;根据所述源地址和所述请求域名对应的二级域名进行统计得到统计数据,其中,所述统计数据包括所述源地址对应的数据量以及所述源地址和所述二级域名对应的请求结果的数量;根据所述统计数据判断所述DNS数据是否为DNS隧道数据。
进一步地,根据所述源地址和所述请求域名对应的二级域名进行统计得到统计数据包括以下至少之一:对来自于相同源地址并且请求域名对应相同的二级域名的DNS数据进行统计得到第一总数据量,对来源于相同源地址并且请求域名对应不同的多个二级域名的DNS数据进行统计得到第二总数据量;对来源于相同源地址的所有DNS数据进行统计得到第三总数据量;根据所述统计数据判断所述DNS数据是否为DNS隧道数据包括:在所述第一总数据量、所述第二总数量和所述第三总数据量中的任意之一大于预先配置的阈值的情况下,确定所述DNS数据为DNS隧道数据。
进一步地,所述请求域名对应不同的多个二级域名的之间的相似度超过第二阈值。
进一步地,根据所述源地址和所述请求域名对应的二级域名进行统计得到统计数据包括以下至少之一:对来自于相同源地址并且请求域名对应相同的二级域名的DNS数据对应的结果进行统计;根据所述统计数据判断所述DNS数据是否为DNS隧道数据包括:根据所述结果的数量判断所述DNS数据是否为DNS隧道数据。
进一步地,根据所述结果的数量判断所述DNS数据是否为DNS隧道数据包括:判断所述结果的数量是否大于预先设置的第一数量,如果大于预先设置的第一数量,判断所述结果中出现相同IP地址的次数是否超过预先设置的第二数量,如果出现,则根据所述IP地址判断所述DNS数据是否为DNS隧道数据。
进一步地,根据所述IP地址判断所述DNS数据是否为DNS隧道数据包括:根据所述IP地址是否为正常的IP地址来判断所述DNS数据是否为DNS隧道数据,如果所述IP地址为正常的IP地址则所述DNS数据不是DNS隧道数据,否则所述DNS数据是所述DNS隧道数据。
根据本申请的另一个方面,还提供了一种基于数据量和行为特征的域名系统隧道检测系统,包括:第一获取模块,用于获取域名系统DNS数据;第二获取模块,用于从所述DNS数据中获取源地址和请求域名,并获取所述DNS数据对应的请求结果,其中,所述源地址是所述DNS请求消息来源方的网络协议IP地址,所述请求域名为所述DNS请求查询的域名,所述请求结果为对所述请求域名进行查询后得到的结果,所述结果为所述请求域名对应的IP地址;统计模块,用于根据所述源地址和所述请求域名对应的二级域名进行统计得到统计数据,其中,所述统计数据包括所述源地址对应的数据量以及所述源地址和所述二级域名对应的请求结果的数量;判断模块,用于根据所述统计数据判断所述DNS数据是否为DNS隧道数据。
进一步地,所述统计模块用于:对来自于相同源地址并且请求域名对应相同的二级域名的DNS数据进行统计得到第一总数据量,对来源于相同源地址并且请求域名对应不同的多个二级域名的DNS数据进行统计得到第二总数据量;对来源于相同源地址的所有DNS数据进行统计得到第三总数据量;所述判断模块用于:在所述第一总数据量、所述第二总数量和所述第三总数据量中的任意之一大于预先配置的阈值的情况下,确定所述DNS数据为DNS隧道数据。
进一步地,所述统计模块用于:对来自于相同源地址并且请求域名对应相同的二级域名的DNS数据对应的结果进行统计得到统计数据;所述判断模块用于:根据所述结果的数量判断所述DNS数据是否为DNS隧道数据。
进一步地,所述判断模块,用于判断所述结果的数量是否大于预先设置的第一数量,如果大于预先设置的第一数量,判断所述结果中出现相同IP地址的次数是否超过预先设置的第二数量,如果出现,则根据所述IP地址判断所述DNS数据是否为DNS隧道数据;其中,根据所述IP地址是否为正常的IP地址来判断所述DNS数据是否为DNS隧道数据,如果所述IP地址为正常的IP地址则所述DNS数据不是DNS隧道数据,否则所述DNS数据是所述DNS隧道数据。
在本申请实施例中,采用了获取域名系统DNS数据;从所述DNS数据中获取源地址和请求域名,并获取所述DNS数据对应的请求结果,其中,所述源地址是所述DNS请求消息来源方的网络协议IP地址,所述请求域名为所述DNS请求查询的域名,所述请求结果为对所述请求域名进行查询后得到的结果,所述结果为所述请求域名对应的IP地址;根据所述源地址和所述请求域名对应的二级域名进行统计得到统计数据,其中,所述统计数据包括所述源地址对应的数据量以及所述源地址和所述二级域名对应的请求结果的数量;根据所述统计数据判断所述DNS数据是否为DNS隧道数据。通过本申请解决了现有技术中依靠单个数据包长度作为检测DNS隧道的依据所导致的检测准确率的问题,从而基于统计数据来检测DNS隧道,提高了DNS隧道检测的准确率。
附图说明
构成本申请的一部分的附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的基于数据量和行为特征的域名系统隧道检测方法的流程图;
图2是根据本申请实施例的数据量检测方法的流程图;
图3是根据本申请实施例的数据量检测的示意图一;
图4是根据本申请实施例的数据量检测的示意图二;
图5是根据本申请实施例的数据量检测的示意图三;
图6是根据本申请实施例的控制信息的检测方法的流程图;以及,
图7是根据本申请实施例的结合数据量和控制信息的检测方法的流程图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
在本实施例中提供了一种基于数据量和行为特征的域名系统隧道检测方法,图1是根据本申请实施例的基于数据量和行为特征的域名系统隧道检测方法的流程图,如图1所示,下面对图1中包括的步骤进行说明。
步骤S102,获取域名系统DNS数据。
步骤S104,从所述DNS数据中获取源地址和请求域名,并获取所述DNS数据对应的请求结果,其中,所述源地址是所述DNS请求消息来源方的网络协议IP地址,所述请求域名为所述DNS请求查询的域名,所述请求结果为对所述请求域名进行查询后得到的结果,所述结果为所述请求域名对应的IP地址。
步骤S106,根据所述源地址和所述请求域名对应的二级域名进行统计得到统计数据,其中,所述统计数据包括所述源地址对应的数据量以及所述源地址和所述二级域名对应的请求结果的数量。
步骤S108,根据所述统计数据判断所述DNS数据是否为DNS隧道数据。
通过上述步骤解决了现有技术中依靠单个数据包长度作为检测DNS隧道的依据所导致的检测准确率的问题,从而基于统计数据来检测DNS隧道,提高了DNS隧道检测的准确率。
进行数据统计的方式有很多中,例如,根据所述源地址和所述请求域名对应的二级域名进行统计得到统计数据可以包括以下至少之一:对来自于相同源地址并且请求域名对应相同的二级域名的DNS数据进行统计得到第一总数据量,对来源于相同源地址并且请求域名对应不同的多个二级域名的DNS数据进行统计得到第二总数据量;对来源于相同源地址的所有DNS数据进行统计得到第三总数据量;根据所述统计数据判断所述DNS数据是否为DNS隧道数据包括:在所述第一总数据量、所述第二总数量和所述第三总数据量中的任意之一大于预先配置的阈值的情况下,确定所述DNS数据为DNS隧道数据。该可选实施方式可以被称作基于数据量的检测方法。
图2是根据本申请实施例的数据量检测方法的流程图,如图2所示,基于数据量检测方法包括如下步骤:首先根据源地址和请求域名的二级域名获取其统计数据,然后累计相关数据。之后就可以根据得到的统计数据进行判断了。图2考虑到DNS隧道中的数据量远大于普通数据,因此可以根据数据量来进行识别,例如可以认为大于200字节或者350字节或者512字节的DNS数据为DNS隧道数据,该字节值可以根据需要灵活配置。
图3是根据本申请实施例的数据量检测的示意图一,如图3所示,DNS数据如果是单次发送的,则判断单次发送的数据量是否异常,例如,判断单次发送的数据量是否超过阈值350字节,如果超过则确定是DNS隧道数据,并进行检测告警。
图4是根据本申请实施例的数据量检测的示意图二,如图4所示,DNS隧道数据会进伪装,将自己拆分成多个数据,在图4中将自己差分了多个DNS数据,每个数据均是50字节,此时对每个DNS数据进行判断,均会得出不是DNS隧道数据的结论,因此,需要对这些拆分的数据进行统计后再判断,即对来自于相同源地址并且请求域名对应相同的二级域名的DNS数据进行统计得到第一总数据量。
图5是根据本申请实施例的数据量检测的示意图三,如图5所述,DNS隧道数据还会通过不同的二级代理域名发出,例如图5中示出的,hack1.com、hack2.com、hack3.com、hack4.com等。此时进行统计时,还需要统计相似的二级域名的数据,即对来源于相同源地址并且请求域名对应不同的多个二级域名的DNS数据进行统计得到第二总数据量。在该可选实施方式中,所述请求域名对应不同的多个二级域名的之间的相似度超过第二阈值。
当然,还可以统计一个来自同一个源IP的所有的数据量,即对来源于相同源地址的所有DNS数据进行统计得到第三总数据量。上述第一总数据量、第二总数据量、第三总数据量有一个超过预先配置的阈值,则确定对应的DNS数据为DNS隧道数据。需要说明的是,第一总数据量、第二总数据量和第三总数据量对应的阈值可以相同也可以不同。
DSN数据的包括可以采用如下表1进行保存,该表1中的结构为保存在其内存或者数据库中的二维结构,其中,源地址和二级域名为复合主键。
表1:
1)数据总量——首次时间检测到之后的累计数据总量,数据量就是子域名字节数的累加。
2)当日数据量——当日访问的数据总量,每日清零,数据量就是子域名字节数的累加。
3)子域名——访问过的子域名,重复域名只记录一次。
4)查询结果——记录域名返回的IP地址,相同结果只记录一次。
5)结果次数——每种解析结果的次数。
通过上述方式可以有效防止通过拆分数据的方式逃逸检测。同时,这里需要通过一个二级域名有限性的算法,规避爬虫类程序的误报。例如,可以增加子域名判断:在统计数据的过程中,先排除非可疑子域名,主要是通过子域名的内容,判断其是否是一个疑似加密数据。域名为了便于记忆,一般是英文单词或者数字,而加密数据由于算法约束基本上是杂序的字符混合,可以通过正则筛选。
在另一个可选实施方式中,根据所述源地址和所述请求域名对应的二级域名进行统计得到统计数据包括以下至少之一:对来自于相同源地址并且请求域名对应相同的二级域名的DNS数据对应的结果进行统计;根据所述统计数据判断所述DNS数据是否为DNS隧道数据包括:根据所述结果的数量判断所述DNS数据是否为DNS隧道数据。DNS隧道使用UDP协议,是无连接的协议,客户端无法一直链接控制服务器,所以必然需要有一个随时报告其活动状态的信号,因此根据结果也可以作为判断依据。为了描述方便,将该可选实施方式称为DNS控制信息的检测方法。
在该DNS控制信息的检测方法中,可以判断所述结果的数量是否大于预先设置的第一数量,如果大于预先设置的第一数量,判断所述结果中出现相同IP地址的次数是否超过预先设置的第二数量,如果出现,则根据所述IP地址判断所述DNS数据是否为DNS隧道数据。例如,根据所述IP地址是否为正常的IP地址来判断所述DNS数据是否为DNS隧道数据,如果所述IP地址为正常的IP地址则所述DNS数据不是DNS隧道数据,否则所述DNS数据是所述DNS隧道数据。
图6是根据本申请实施例的控制信息的检测方法的流程图,如图6所示,该检测方法可以包括如下步骤:首先根据源地址和请求域名的二级域名获取其统计数据,然后累计相关数据。之后就可以从统计数据中进行判断了,判断是否存在3次(超过第一数量)以上结果,如果存在,则判断某次结构的次数异常高(超过第二数量),如果超过第二数量则DNS数据为DNS隧道数据,如果没有超过第二数量,但是IP地址不是正常IP地址,则DNS数据为DNS隧道数据,在DNS数据为隧道数据的情况下,进行告警并记录相关信息。
控制信号的检测过程中,单纯的检测结果次数异常,会遇到大型网站因内容分发(Content Delivery Network,简称为CDN)技术导致的误报,在检测算法上可以利用CDN技术的负载均衡特性规避。CDN一般会返回延迟最低或者距离最近的服务器IP地址,以确保用户能够访问到最近的节点,对于大多数情况CDN返回的IP地址对于单个源地址请求的情况下主要有两种形态,一种是固定IP,即最近的IP地址,另一种是延迟最低的IP,受到公网波动影响,一般会相对均匀地分布为几个地址。在应对CDN导致的误报时候,可以排除IP地址相对均匀分布的地址。在实际环境中,经过多组数据测试,目前的最佳实践逻辑为:maxct>sumct/2+sumct-maxct,其中maxct表示在所有返回的IP地址中出现次数最高的IP的出现次数,sumct表示所有IP地址一共出现的次数,同时出现的IP地址数量要大于等于3个。
图7是根据本申请实施例的结合数据量和控制信息的检测方法的流程图,如图7所示,该方法包括如下步骤:获取网络数据包并进行拆解,如果不是DNS数据包则继续进行数据包获取拆解的步骤,如果是DNS数据包,则将DNS数据包对应的请求报文放入到缓存中,应答报文寻找缓存记录。如果需要应答,或者应答已经超时,则需要处理DNS数据,从DNS数据中取出源地址、二级域名、请求域名、结果、记录类型等,然后进行报文数据量是否异常的检测,即图3示出的步骤,检测之后在DNS信息记录中记录相关数据,然后进行控制信息特征检测,即图6示出的步骤。还可以根据历史数据进行异常检测,在整体算法中,为了保证历史特征数据能够尽可能小的占用存储空间,采用表一的特征记录数据,在每次检测过程中,只要通过查询表1中统计的数据,即可检测出历史数据量是否异常,这里的优点是可以在检测历史数据信息的时候节省CPU算力,因为在每个新数据包经过的时候,只需要读取表1中的数据判断是否触发了异常即可,从而实现了历史数据异常检测和当前数据包异常检测的同步进行。
在对上述实施例进行验证的过程中,随机使用了几个dns隧道工具(CS,DNSnat等),在没有任何指纹特征检测的基础上,均可检出,因此上述实施例增强了对未知流量的检出能力。上述实施例几乎没有误报,该算法在正常办公网(约200人,混合移动终端、PC和服务器)流量中连续测试几天,只出现个位数的检测结果无法判定是否是攻击流量,混合在其中的攻击流量均被检出。
在本实施例中,提供一种电子装置,包括存储器和处理器,存储器中存储有计算机程序,处理器被设置为运行计算机程序以执行以上实施例中的方法。
上述程序可以运行在处理器中,或者也可以存储在存储器中(或称为计算机可读介质),计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
这些计算机程序也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤,对应与不同的步骤可以通过不同的模块来实现。
该本实施例中就提供了这样的一种装置或系统。该系统被称为基于数据量和行为特征的域名系统隧道检测系统,包括:第一获取模块,用于获取域名系统DNS数据;第二获取模块,用于从所述DNS数据中获取源地址和请求域名,并获取所述DNS数据对应的请求结果,其中,所述源地址是所述DNS请求消息来源方的网络协议IP地址,所述请求域名为所述DNS请求查询的域名,所述请求结果为对所述请求域名进行查询后得到的结果,所述结果为所述请求域名对应的IP地址;统计模块,用于根据所述源地址和所述请求域名对应的二级域名进行统计得到统计数据,其中,所述统计数据包括所述源地址对应的数据量以及所述源地址和所述二级域名对应的请求结果的数量;判断模块,用于根据所述统计数据判断所述DNS数据是否为DNS隧道数据。
该系统或者装置用于实现上述的实施例中的方法的功能,该系统或者装置中的每个模块与方法中的每个步骤相对应,已经在方法中进行过说明的,在此不再赘述。
例如,所述统计模块用于:对来自于相同源地址并且请求域名对应相同的二级域名的DNS数据进行统计得到第一总数据量,对来源于相同源地址并且请求域名对应不同的多个二级域名的DNS数据进行统计得到第二总数据量;对来源于相同源地址的所有DNS数据进行统计得到第三总数据量;所述判断模块用于:在所述第一总数据量、所述第二总数量和所述第三总数据量中的任意之一大于预先配置的阈值的情况下,确定所述DNS数据为DNS隧道数据。
又例如,所述统计模块用于:对来自于相同源地址并且请求域名对应相同的二级域名的DNS数据对应的结果进行统计得到统计数据;所述判断模块用于:根据所述结果的数量判断所述DNS数据是否为DNS隧道数据。
例如,所述判断模块,用于判断所述结果的数量是否大于预先设置的第一数量,如果大于预先设置的第一数量,判断所述结果中出现相同IP地址的次数是否超过预先设置的第二数量,如果出现,则根据所述IP地址判断所述DNS数据是否为DNS隧道数据;其中,根据所述IP地址是否为正常的IP地址来判断所述DNS数据是否为DNS隧道数据,如果所述IP地址为正常的IP地址则所述DNS数据不是DNS隧道数据,否则所述DNS数据是所述DNS隧道数据。
通过上述实施方式,解决了现有技术中依靠单个数据包长度作为检测DNS隧道的依据所导致的检测准确率的问题,从而基于统计数据来检测DNS隧道,提高了DNS隧道检测的准确率。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (4)
1.一种基于数据量和行为特征的域名系统隧道检测方法,其特征在于,包括:
获取域名系统DNS数据;
从所述DNS数据中获取源地址和请求域名,并获取所述DNS数据对应的请求结果,其中,所述源地址是所述DNS请求消息来源方的网络协议IP地址,所述请求域名为所述DNS请求查询的域名,所述请求结果为对所述请求域名进行查询后得到的结果,所述结果为所述请求域名对应的IP地址;
根据所述源地址和所述请求域名对应的二级域名进行统计得到统计数据,其中,所述统计数据包括所述源地址对应的数据量以及所述源地址和所述二级域名对应的请求结果的数量;
根据所述统计数据判断所述DNS数据是否为DNS隧道数据;
其中,根据所述源地址和所述请求域名对应的二级域名进行统计得到统计数据包括:对来自于相同源地址并且请求域名对应相同的二级域名的DNS数据对应的结果进行统计;
其中,根据所述统计数据判断所述DNS数据是否为DNS隧道数据包括:根据所述结果的数量判断所述DNS数据是否为DNS隧道数据;
其中,根据所述结果的数量判断所述DNS数据是否为DNS隧道数据包括:
判断所述结果的数量是否大于预先设置的第一数量,如果大于预先设置的第一数量,判断所述结果中出现相同IP地址的次数是否没有超过预先设置的第二数量,如果出现,则根据所述IP地址判断所述DNS数据是否为DNS隧道数据。
2.根据权利要求1所述的方法,其特征在于,
根据所述源地址和所述请求域名对应的二级域名进行统计得到统计数据包括以下至少之一:对来自于相同源地址并且请求域名对应相同的二级域名的DNS数据进行统计得到第一总数据量,对来源于相同源地址并且请求域名对应不同的多个二级域名的DNS数据进行统计得到第二总数据量;对来源于相同源地址的所有DNS数据进行统计得到第三总数据量;
根据所述统计数据判断所述DNS数据是否为DNS隧道数据包括:在所述第一总数据量、所述第二总数据量和所述第三总数据量中的任意之一大于预先配置的阈值的情况下,确定所述DNS数据为DNS隧道数据。
3.根据权利要求2所述的方法,其特征在于,所述请求域名对应不同的多个二级域名的之间的相似度超过第二阈值。
4.根据权利要求1所述的方法,其特征在于,根据所述IP地址判断所述DNS数据是否为DNS隧道数据包括:
根据所述IP地址是否为正常的IP地址来判断所述DNS数据是否为DNS隧道数据,如果所述IP地址为正常的IP地址则所述DNS数据不是DNS隧道数据,否则所述DNS数据是所述DNS隧道数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210926530.3A CN115297083B (zh) | 2022-08-03 | 2022-08-03 | 基于数据量和行为特征的域名系统隧道检测方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210926530.3A CN115297083B (zh) | 2022-08-03 | 2022-08-03 | 基于数据量和行为特征的域名系统隧道检测方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115297083A CN115297083A (zh) | 2022-11-04 |
CN115297083B true CN115297083B (zh) | 2023-09-12 |
Family
ID=83826701
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210926530.3A Active CN115297083B (zh) | 2022-08-03 | 2022-08-03 | 基于数据量和行为特征的域名系统隧道检测方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115297083B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104754071A (zh) * | 2013-12-31 | 2015-07-01 | 金琥 | 基于dns协议标准检测dns隧道数据的方法 |
CN107547488A (zh) * | 2016-06-29 | 2018-01-05 | 华为技术有限公司 | 一种dns隧道检测方法以及dns隧道检测装置 |
CN109474575A (zh) * | 2018-09-11 | 2019-03-15 | 北京奇安信科技有限公司 | 一种dns隧道的检测方法及装置 |
CN111953673A (zh) * | 2020-08-10 | 2020-11-17 | 深圳市联软科技股份有限公司 | 一种dns隐蔽隧道检测方法及系统 |
CN113660275A (zh) * | 2021-08-18 | 2021-11-16 | 中国电信股份有限公司 | 域名系统请求的处理方法、装置、电子设备和存储介质 |
CN113839948A (zh) * | 2021-09-26 | 2021-12-24 | 新华三信息安全技术有限公司 | 一种dns隧道流量检测方法、装置、电子设备和存储介质 |
CN114448846A (zh) * | 2021-12-27 | 2022-05-06 | 奇安信科技集团股份有限公司 | 一种dns隧道通信检测方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10412107B2 (en) * | 2017-03-22 | 2019-09-10 | Microsoft Technology Licensing, Llc | Detecting domain name system (DNS) tunneling based on DNS logs and network data |
US10432651B2 (en) * | 2017-08-17 | 2019-10-01 | Zscaler, Inc. | Systems and methods to detect and monitor DNS tunneling |
-
2022
- 2022-08-03 CN CN202210926530.3A patent/CN115297083B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104754071A (zh) * | 2013-12-31 | 2015-07-01 | 金琥 | 基于dns协议标准检测dns隧道数据的方法 |
CN107547488A (zh) * | 2016-06-29 | 2018-01-05 | 华为技术有限公司 | 一种dns隧道检测方法以及dns隧道检测装置 |
CN109474575A (zh) * | 2018-09-11 | 2019-03-15 | 北京奇安信科技有限公司 | 一种dns隧道的检测方法及装置 |
CN111953673A (zh) * | 2020-08-10 | 2020-11-17 | 深圳市联软科技股份有限公司 | 一种dns隐蔽隧道检测方法及系统 |
CN113660275A (zh) * | 2021-08-18 | 2021-11-16 | 中国电信股份有限公司 | 域名系统请求的处理方法、装置、电子设备和存储介质 |
CN113839948A (zh) * | 2021-09-26 | 2021-12-24 | 新华三信息安全技术有限公司 | 一种dns隧道流量检测方法、装置、电子设备和存储介质 |
CN114448846A (zh) * | 2021-12-27 | 2022-05-06 | 奇安信科技集团股份有限公司 | 一种dns隧道通信检测方法及系统 |
Non-Patent Citations (1)
Title |
---|
一种多粒度DNS隧道攻击检测方法;陈治昊;《现代计算机》;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN115297083A (zh) | 2022-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10740363B2 (en) | Domain classification based on domain name system (DNS) traffic | |
US10938851B2 (en) | Techniques for defense against domain name system (DNS) cyber-attacks | |
CN109474575B (zh) | 一种dns隧道的检测方法及装置 | |
US9026676B1 (en) | Systems and methods for prepending nonce labels to DNS queries to enhance security | |
KR101544322B1 (ko) | 시각화를 이용한 악성 코드 탐지 시스템과 방법 | |
CN107124434B (zh) | 一种dns恶意攻击流量的发现方法及系统 | |
CN113301012B (zh) | 一种网络威胁的检测方法、装置、电子设备及存储介质 | |
CN108616544B (zh) | 用于检测对域名系统记录系统的更新的方法、系统和介质 | |
CN112751862A (zh) | 一种端口扫描攻击检测方法、装置及电子设备 | |
Hao et al. | {End-Users} get maneuvered: Empirical analysis of redirection hijacking in content delivery networks | |
CN110808879A (zh) | 一种协议识别方法、装置、设备及可读存储介质 | |
US11777960B2 (en) | Detection of DNS (domain name system) tunneling and exfiltration through DNS query analysis | |
Guerid et al. | Privacy-preserving domain-flux botnet detection in a large scale network | |
CN111131126A (zh) | 攻击检测方法和装置 | |
CN112583827B (zh) | 一种数据泄露检测方法及装置 | |
US20230362207A1 (en) | System and method for dns misuse detection | |
CN115297083B (zh) | 基于数据量和行为特征的域名系统隧道检测方法和系统 | |
CN110266684B (zh) | 一种域名系统安全防护方法及装置 | |
CN113726775B (zh) | 一种攻击检测方法、装置、设备及存储介质 | |
CN113872931B (zh) | 一种端口扫描行为的检测方法及系统、服务器、代理节点 | |
US10015179B2 (en) | Interrogating malware | |
CN111371917B (zh) | 一种域名检测方法及系统 | |
US20210392159A1 (en) | Harvesting fully qualified domain names from malicious data packets | |
CN113904843A (zh) | 一种终端异常dns行为的分析方法和装置 | |
CN115296891B (zh) | 数据探测系统和数据探测方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |