一种dns拒绝服务攻击的防御方法及装置的制作方法

文档序号:7890652阅读:163来源:国知局
专利名称:一种dns拒绝服务攻击的防御方法及装置的制作方法
技术领域
本发明涉及拒绝服务攻击的防御领域,尤其涉及一种DNS拒绝服务攻击的防御方法及装置。
背景技术
DNS(Domain Name System)是一个用于管理主机名字和地址信息映射的分布式数据库系统,它将便于记忆的域名与IP地址对应起来,使人们能够方便地访问互联网,为众多网络应用提供根本性支撑。DNS服务的稳定可靠是互联网正常运转的保证,而针对DNS服务器的攻击会影响正常的域名解析,从而对整个互联网造成严重的影响。针对DNS服务器的攻击主要有拒绝服务攻击,这类攻击通常具有伪造源IP地址、随机化IP数据包TTL (Time-to-1 ive)、随机化请求域名的特点。其中随机化请求域名对DNS服务器的威胁尤为显著。当DNS服务器接受到域名查询请求,其查询域名或查询类型在该服务器的缓存中不存在时,该服务器将域名请求发送至授权服务器以获得所需的资源记录。而拒绝服务攻击产生的大量随机域名,将使得DNS服务器的递归解析器资源耗尽,从而使正常的域名请求无法得到递归解析。如何为DNS服务器提供有效的拒绝服务攻击的防御,成为全世界DNS系统面临的技术难题。

发明内容
有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是提供一种在DNS服务器受到拒绝服务攻击时能提高常用域名的解析成功率,降低拒绝服务攻击对DNS服务器正常解析的影响,增强DNS服务的可靠性的DNS拒绝服务攻击的防御方法和装置。为实现上述目的,本发明提供了一种DNS拒绝服务攻击的防御方法,其包括如下步骤步骤1,检测DNS服务器是否处于受到拒绝服务攻击的状态,若检测到所述DNS服务器处于受到拒绝服务攻击的状态,则发送启动拒绝服务攻击防御的信号给所述DNS服务器;若检测到所述DNS服务器不是处于受到拒绝服务攻击的状态,则发送关闭所述拒绝服务攻击防御的信号给所述DNS服务器;步骤2,所述DNS服务器接收到所述启动或者关闭拒绝服务攻击防御的信号后,启动或者关闭所述拒绝服务攻击防御步骤来防御或者停止防御所述拒绝服务攻击。进一步地,所述步骤I中的所述检测DNS服务器是否处于受到拒绝服务攻击状态是通过DNS服务器接收到的DNS查询请求量、网络带宽的使用情况和DNS服务器CPU处理器使用情况,或者通过DNS服务器接收到的DNS查询请求量和DNS服务器递归解析器的使用情况来进行拒绝服务攻击检测的。进一步地,所述启动拒绝服务攻击防御步骤是通过激活所述DNS服务器中的缓存固化功能实现的,所述缓存固化功能是通过在所述DNS服务器的缓存中的资源记录的TTL过期时不将所述资源记录从缓存中删除,而继续将所述资源记录保留在缓存中来实现的。
进ー步地,所述关闭拒绝服务攻击防御步骤是通过关闭所述DNS服务器中的缓存固化功能实现的,关闭所述缓存固化功能是通过在所述DNS服务器的缓存中的资源记录的TTL过期时将所述资源记录从缓存中删除来实现的。 为实现上述目的,本发明还提供了ー种DNS拒绝服务攻击的防御装置,包括相互连接的用于检测DNS服务器是否处于受到拒绝服务攻击的状态的拒绝服务攻击检测模块和用于防御所述拒绝服务攻击的拒绝服务攻击防御模块,其中拒绝服务攻击防御模块还连接于所述DNS服务器的缓存,以对所述DNS服务器的缓存中存储的资源记录进行控制从而实现对拒绝服务攻击的防御。进ー步地,所述拒绝服务攻击检测模块是通过DNS服务器接收到的DNS查询请求量、网络带宽的使用情况和CPU处理器使用情況,或者通过DNS服务器接收到的DNS查询请求量和DNS服务器递归解析器的使用情况来进行拒绝服务攻击检测的。进ー步地,所述拒绝服务攻击防御模块是通过激活缓存固化功能来实现对所述DNS服务器的缓存中所存储的资源记录的控制从而进行拒绝服务攻击防御的,所述缓存固化功能通过在所述DNS服务器的缓存中的资源记录的TTL过期时不将所述资源记录从缓存中删除,而继续使用该资源记录来实现的。进ー步地,所述拒绝服务攻击防御模块是通过关闭所述缓存固化功能来释放对所述DNS服务器的缓存中所存储的资源记录的控制从而停止对拒绝服务攻击防御的,关闭所述缓存固化功能是通过在所述DNS服务器的缓存中的资源记录的TTL过期时将所述资源记录从缓存中删除来实现的。可选地,所述拒绝服务攻击检测模块内置于所述DNS服务器中。可选地,所述拒绝服务攻击检测模块设置于所述DNS服务器的外部。本发明的有益效果在干通过对DNS服务器的DNS查询请求量、网络带宽的使用情况和CPU处理器的使用情況,或者通过DNS服务器接收到的DNS查询请求量和DNS服务器递归解析器的使用情况的检测来判断DNS服务器是否受到拒绝服务攻击,并在DNS服务器受到拒绝服务攻击时通过控制DNS服务器的缓存,对缓存中的资源记录在其TTL过期时不将其从DNS服务器的缓存中删除来进行拒绝服务攻击的防御。利用本发明的DNS拒绝服务攻击的防御方法和装置,在DNS服务器受到拒绝服务攻击时,常用域名的资源记录在其TTL过期时不从DNS服务器的缓存删除而继续用于常用域名的解析,从而避免了对这些常用域名的请求无法从DNS服务器的缓存中获取而必须与大量的拒绝服务攻击的伪请求竞争有限的递归解析器资源,大幅度地提高常用域名的解析成功率,降低拒绝服务攻击对DNS服务器正常解析的影响,增强DNS服务的可靠性。以下将结合附图对本发明的构思、具体结构及产生的技术效果作进ー步说明,以充分地了解本发明的目的、特征和效果。


图I是本发明的DNS拒绝服务攻击的防御方法的流程图;图2是通常状况下的DNS服务器对其缓存中所存储的资源记录的处理流程图;图3是本发明的DNS拒绝服务攻击的防御方法中DNS服务器对其缓存中所存储的资源记录的处理流程图。
图4是本发明的DNS拒绝服务攻击的防御装置的第一实施例的结构示意图;图5是本发明的DNS拒绝服务攻击的防御装置的第二实施例的结构示意图;
具体实施例方式下面结合附图来具体说明本发明的实施例。如图I所示,一种DNS拒绝服务攻击的防御方法,包括服务器拒绝服务攻击检测步骤和拒绝服务攻击防御步骤。首先,启动拒绝服务攻击检测步骤,检测DNS服务器是否处于受到拒绝服务攻击的状态,若检测到所述DNS服务器处于受到拒绝服务攻击的状态,则发送启动拒绝服务攻击防御的信号给所述DNS服务器,若检测到所述DNS服务器不是处于受到拒绝服务攻击的状态,则发送关闭拒绝服务攻击防御的信号给所述DNS服务器。所述DNS服务器接收到所述启动或者关闭拒绝服务攻击防御的信号后,激活或者关闭缓存固化功能来防御或者停止防御所述拒绝服务攻击。在上述的拒绝服务攻击检测步骤中,检测DNS服务器是否处于受到拒绝服务攻击状态是通过DNS服务器接收到的DNS查询请求量、网络带宽的使用情况和DNS服务器CPU处理器使用情况,或者通过DNS服务器接收到的DNS查询请求量和DNS服务器递归解析器的使用情况来进行检测的。因为通常针对DNS服务器的拒绝服务攻击会发送大量的伪造DNS域名查询请求到DNS服务器,造成DNS查询请求量的异常增多,并占据异常的网络带宽,并且造成DNS服务器的CPU处理器的使用资源耗尽或者递归解析器的资源耗尽,所以通过检测DNS查询请求量、网络带宽的使用情况和DNS服务器的CPU处理器的资源使用情况或者通过检测DNS查询请求量和DNS服务器递归解析器的使用情况就可以在拒绝服务攻击发生时及时检测到并通知DNS服务器,以便启动拒绝服务攻击防御步骤。在上述的拒绝服务攻击防御步骤中采用的缓存固化功能是拒绝服务攻击防御步骤中的关键,DNS服务器通过缓存固化功能控制其缓存中的资源记录,使得在缓存固化功能激活的情况下,DNS服务器的缓存中存储的TTL过期的资源记录不被从缓存中删除,还可以被继续使用于DNS域名查询请求的解析,而在缓存固化功能没有激活也就是关闭的情况下,DNS服务器的缓存中存储的TTL过期的资源记录被从缓存中删除。图2表示了通常状况下DNS服务器对于缓存中的资源记录的处理流程,从图中可以看出,随着DNS服务器的缓存计数器的计数,DNS服务器缓存中的资源记录的TTL值递减,当一条资源记录的TTL递减到O的时候说明该资源记录已经过期,TTL过期的资源记录被DNS服务器从缓存中删除。而使用本发明的拒绝服务攻击防御方法后,DNS服务器中使用作为本发明的拒绝服务攻击防御步骤中的关键点的缓存固化功能,如图3所示的DNS服务器对于缓存中的资源记录的处理流程,当一条资源记录的TTL过期时,首先判断缓存固化功能是否被激活,如果缓存固化功能激活,则不从缓存中删除TTL过期的资源记录,仍然将该资源记录用于DNS域名请求的解析;如果缓存固化功能没有激活,则将TTL过期的资源记录从DNS服务器的缓存中删除,当DNS服务器再接收到该资源记录相关的DNS域名查询请求时,由于缓存中不存在相关的资源记录,因此DNS服务器将通过递归解析器获取该DNS域名查询请求所需要的域名信息。本发明的DNS拒绝服务攻击的防御方法,在检测到DNS服务器受到拒绝服务攻击时,发送启动拒绝服务攻击防御的信号至DNS服务器,DNS服务器接收到启动拒绝服务攻击防御的信号后,启动拒绝服务攻击防御步骤,在该拒绝服务攻击防御步骤中,通过激活DNS服务器中的缓存固化功能,使得DNS服务器的缓存中TTL过期的资源记录不被从DNS服务器的缓存中删除,而继续用于DNS域名请求的解析。因为DNS服务器的缓存中存储的资源记录为请求频繁的资源记录,通常状况下,针对这些域名的域名查询请求因为其资源记录在DNS服务器的缓存中已经存在,所以直接从缓存获取,无须利用递归解析器资源,但是当一条资源记录的TTL过期吋,DNS服务器会从其缓存中删除该资源记录。而在拒绝服务攻击发生的情况下,由于大量的伪造域名请求发送到DNS服务器,此时将DNS服务器缓存中的TTL过期的资源记录继续保留而不从缓 存中删除,可以防止这些请求频繁的常用域名的域名请求因为其资源记录的TTL过期而不能直接从缓存中获取其域名信息,从而需要和大量伪造的域名请求竞争有限的递归解析器资源,因此本发明的拒绝服务攻击防御方法在DNS服务器受到拒绝服务攻击时大幅度地降低了 DNS服务器的递归解析器的资源消耗,提高了常用域名的解析成功率。图4和图5所示的是本发明的DNS拒绝服务攻击的防御装置,包括相互连接的用于检测DNS服务器是否处于受到拒绝服务攻击状态的拒绝服务攻击检测模块和用于防御所述拒绝服务攻击的拒绝服务攻击防御模块,其中拒绝服务攻击防御模块还连接于DNS服务器的缓存以控制缓存中所存储的资源记录。图4所示为本发明的DNS拒绝服务攻击防御装置的第一实施例的结构示意图,从图中可以看出,该DNS拒绝服务攻击防御装置的拒绝服务攻击检测模块设置于DNS服务器的外部,拒绝服务攻击检测模块连接于拒绝服务攻击防御模块,还连接于DNS服务器的网络接ロ以检测拒绝服务攻击,而拒绝服务攻击防御模块连接于拒绝服务攻击检测模块,还连接于DNS服务器的缓存以控制缓存中所存储的资源记录。该装置的工作原理如下拒绝服务攻击检测模块分析DNS服务器接收的DNS域名请求查询量、网络带宽使用情况和CPU处理器使用情況,判断DNS服务器是否受到拒绝服务攻击,井根据拒绝服务攻击检测结果发送启动或者关闭拒绝服务攻击防御的信号到DNS服务器。DNS服务器接收到拒绝服务攻击检测模块发送的启动拒绝服务攻击防御信号后,激活拒绝服务攻击防御模块中的缓存固化功能,通过缓存固化功能控制DNS服务器的缓存中存储的资源记录,使得TTL过期的资源记录不被从缓存中删除而继续保留在缓存中,用于相关的域名查询请求的域名解析;DNS服务器接收到拒绝服务检测模块发送的关闭拒绝服务攻击防御信号后,关闭拒绝服务攻击防御模块中的缓存固化功能,释放对DNS服务器的缓存中存储的资源记录的控制,即恢复到正常状况下的删除TTL过期的资源记录。其中缓存固化功能控制DNS服务器的缓存中存储的资源记录的流程參见图3。图5所示为本发明的DNS拒绝服务攻击防御装置的第二实施例,在该DNS拒绝服务攻击防御装置中,拒绝服务攻击检测模块内置于DNS服务器的内部,连接于拒绝服务攻击防御模块,拒绝服务攻击防御模块连接于拒绝服务攻击检测模块以接收拒绝服务攻击检测模块发送的拒绝服务攻击检测结果,还连接于DNS服务器的缓存以控制缓存中所存储的资源记录。该装置的工作原理如下拒绝服务攻击检测模块分析DNS服务器接收的DNS域名请求查询量和DNS服务器的递归解析器的使用情況,判断DNS服务器是否受到拒绝服务攻击,井根据拒绝服务攻击检测结果发送启动或者关闭拒绝服务攻击防御信号到DNS服务器。DNS服务器接收到拒绝服务攻击检测模块发送的启动拒绝服务攻击防御信号后,激活拒绝服务攻击防御模块中的缓存固化功能,通过缓存固化功能控制DNS服务器的缓存中存储的资源记录,使得TTL过期的资源记录不被从缓存中删除而继续保留在缓存中,用于相关的域名请求的域名解析;而在DNS服务器接收到拒绝服务攻击检测模块发送的关闭拒绝服务攻击防御信号后,关闭拒绝服务攻击防御模块中的缓存固化功能,释放对DNS服务器的缓存中存储的资源记录的控制,即恢复到正常状况下的删除TTL过期的资源记录。其中缓存固化功能控制DNS服务器的缓存中存储的资源记录的流程参见图3。 利用本发明的DNS拒绝服务攻击的防御装置,在拒绝服务攻击发生的情况下,由于大量的伪造域名请求发送到DNS服务器,此时将DNS服务器缓存中的TTL过期的资源记录继续保留而不从缓存中删除,可以防止这些请求频繁的常用域名的域名请求因为其资源记录的TTL过期而不能直接从缓存中获取其域名信息,从而需要和大量伪造的域名请求竞争有限的递归解析器资源,因此本发明的DNS拒绝服务攻击防御装置在DNS服务器受到拒绝服务攻击时大幅度地降低了 DNS服务器的递归解析器的资源消耗,提高了常用域名的解析成功率。以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思做出诸多修改和变化。因此,凡本技术领域的技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。
权利要求
1.一种DNS拒绝服务攻击的防御方法,其特征在于,包括如下步骤 步骤1,检测DNS服务器是否处于受到拒绝服务攻击的状态,若检测到所述DNS服务器处于受到拒绝服务攻击的状态,则发送启动拒绝服务攻击防御的信号给所述DNS服务器;若检测到所述DNS服务器不是处于受到拒绝服务攻击的状态,则发送关闭拒绝服务攻击防御的信号给所述DNS服务器; 步骤2,所述DNS服务器接收到所述启动或者关闭拒绝服务攻击防御的信号后,启动或者关闭拒绝服务攻击防御步骤来防御或者停止防御所述拒绝服务攻击。
2.如权利要求I所述的DNS拒绝服务攻击的防御方法,其中,所述步骤I中所述检测DNS服务器是否处于受到拒绝服务攻击的状态是通过所述DNS服务器接收到的 DNS查询请求量、网络带宽的使用情况和DNS服务器CPU处理器的使用情况,或者通过所述DNS服务器接收到的DNS查询请求量和DNS服务器递归解析器的使用情况来进行拒绝服务攻击检测的。
3.如权利要求2所述的DNS拒绝服务攻击的防御方法,其中,所述启动拒绝服务攻击防御步骤进一步是通过激活所述DNS服务器中的缓存固化功能实现的,所述缓存固化功能是通过在所述DNS服务器的缓存中的资源记录的TTL过期时不将所述资源记录从缓存中删除,而继续将所述资源记录保留在缓存中来实现的。
4.如权利要求3所述的DNS拒绝服务攻击的防御方法,其中,所述关闭拒绝服务攻击防御步骤进一步是通过关闭所述DNS服务器中的缓存固化功能实现的,关闭所述缓存固化功能是通过在所述DNS服务器的缓存中的资源记录的TTL过期时将所述资源记录从缓存中删除来实现的。
5.一种DNS拒绝服务攻击的防御装置,其特征在于,包括相互连接的用于检测DNS服务器是否处于受到拒绝服务攻击的状态的拒绝服务攻击检测模块和用于防御拒绝服务攻击的拒绝服务攻击防御模块,其中拒绝服务攻击防御模块还连接于所述DNS服务器的缓存,以对所述DNS服务器的缓存中存储的资源记录进行控制从而实现对拒绝服务攻击的防御。
6.如权利要求5所述的DNS拒绝服务攻击的防御装置,其中,所述拒绝服务攻击检测模块是通过DNS服务器接收到的DNS查询请求量、网络带宽的使用情况和DNS服务器CPU处理器使用情况,或者通过所述DNS服务器接收到的DNS查询请求量和DNS服务器递归解析器的使用情况来进行拒绝服务攻击检测的。
7.如权利要求6所述的DNS拒绝服务攻击的防御装置,其中,所述拒绝服务攻击防御模块是通过激活缓存固化功能来实现对所述DNS服务器的缓存中所存储的资源记录的控制从而进行拒绝服务攻击防御的,所述缓存固化功能是通过在所述DNS服务器的缓存中的资源记录的TTL过期时不将所述资源记录从缓存中删除,而继续使用该资源记录来实现的。
8.如权利要求7所述的DNS拒绝服务攻击的防御装置,其中,所述拒绝服务攻击防御模块是通过关闭所述缓存固化功能来释放对所述DNS服务器的缓存中所存储的资源记录的控制从而停止对拒绝服务攻击防御的,关闭所述缓存固化功能是通过在所述DNS服务器的缓存中的资源记录的TTL过期时将所述资源记录从缓存中删除来实现的。
9.如权利要求8所述的DNS拒绝服务攻击的防御装置,其中,所述拒绝服务攻击检测模块内置于所述DNS服务器中。
10.如权利要求8所述的DNS拒绝服务攻击的防御装置,其中,所述拒绝服务攻击检测模块设置于所述DNS服务器的外部。
全文摘要
本发明公开了一种DNS拒绝服务攻击的防御方法及装置,该DNS拒绝服务攻击的防御方法包括检测DNS服务器是否处于受到拒绝服务攻击状态的拒绝服务攻击检测步骤和拒绝服务攻击防御步骤,其中拒绝服务攻击防御步骤是通过缓存固化功能来实现对拒绝服务攻击的防御的,该DNS拒绝服务攻击防御装置包括用于检测DNS服务器是否处于受到拒绝服务攻击状态的拒绝服务攻击检测模块和用于防御拒绝服务攻击的拒绝服务攻击防御模块,其中拒绝服务攻击防御模块是通过激活其内部的缓存固化功能来实现对拒绝服务攻击的防御的。本发明的DNS拒绝服务攻击的防御方法及装置,在DNS服务器受到拒绝服务攻击时大幅度地降低了DNS服务器的递归解析器的资源消耗,提高了常用域名的解析成功率。
文档编号H04L29/06GK102624716SQ201210051749
公开日2012年8月1日 申请日期2012年3月1日 优先权日2012年3月1日
发明者李建华, 王鲁华, 章思宇, 邹福泰 申请人:上海交通大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1