一种应对DNS服务器反射放大攻击的解决方法技术

技术编号:13160683 阅读:53 留言:0更新日期:2016-05-10 08:30
本发明专利技术属于DNS安全防范技术领域,尤其涉及一种应对DNS服务器反射放大攻击的解决方法,在EDNS0的伪资源记录中加入cookie的字段;用户在发送请求时会生成随机cookie,递归服务器收到请求后检查是否有cookie,如否,则返回truncate要求用户使用TCP进行重传;如是则检查是否附带Server Cookie,如果否,则将其与Client Cookie返回,如是,则检查用户的与自己是否一致,如果是,则返回给用户,如否,则返回truncate要求用户使用TCP重传;用户核对Client Cookie是否与随机cookie相同,如是,则接收此数据,如否,则丢弃。

【技术实现步骤摘要】

本专利技术属于DNS安全防范
,尤其涉及一种应对DNS服务器反射放大攻击的解决方法
技术介绍
DNS提供了互联网上的一个重要的服务。其本质是建立了人的名字世界和底层的二进制协议地址世界的桥梁。每次,当我们通过互联网开始任何的事务之前,一个DNS的查询过程首先要完成。所以一个轻量级的、快速响应的DNS协议是非常必要的,这样DNS查询过程可以对用户而言透明地完成。DNS解析框架使用UDP作为传输协议,并通过地理分布的具有缓存功能的递归解析器来实现。同时在互联网发展过程中,传统的DNS协议也凸显了一些问题。随着互联网的发展,DNS记录的类型和数目逐渐增多,DNS协议逐渐变成了一个非对称的协议,DNS的应答包可能远远大于DNS请求包。这给予了恶意者通过递归解析器对受害者进行DNS放大攻击的机会。使用any类型的查询,攻击者可以通过伪造源地址,将一个DNS查询包经由递归解析器放大,造成受害者网络瘫痪。随着DNSSEC的部署,DNS应答包进一步变大,使得放大攻击的问题变得更为严重。经测试,这种放大攻击最大可以将攻击流放大32倍。现有解析器一般有两种应对DNS放大攻击的方式。一种为手动限制解析器答复速率使得攻击者无法在短时间内造成极大的攻击流量以减缓DNS放大攻击。这种方式存在着只能减缓,无法阻止攻击的问题。另一种方式为向任何查询返回truncate使得递归解析器可以只给与真正的用户而非攻击者伪造的用户应答。这种方式的问题在于返回truncate要求用户回退至TCP进行请求,会影响用户正常进行DNS解析的效率。此外这两种方法还存在一个共同问题,只能在运营者发现被攻击时被动的启用防御,无法主动的提前预防攻击。另一种能够主动预防DNS放大攻击的方案为DNScookie。其主要手段为使用cookie使得递归服务器可以区分攻击者和用户。具体方案为递归服务器发布一个公用的64位数字作为初始cookie。用户在第一次查询时附带初始cookie,随后的每次查询用户和服务器均随机生成一个64位数字的cookie并在报文内同时携带双方cookie。递归服务器通过校验cookie来识别真实用户。然而该方法存在着部署性差的问题,该方法未被全部部署时,如何处理不支持cookie的用户成为一个难题。如果正常应答,那么攻击者仍可以进行放大攻击。如果不应答,那么不支持cookie的用户将无法接受DNS解析服务。
技术实现思路
为了防止DDOS放大攻击、保证用户的网络使用安全,同时不影响不支持cookie用户的DNS访问,本专利技术提出了一种应对DNS服务器反射放大攻击的解决方法,该方法基于TCP回退的DNScookie,对不支持cookie的用户访问返回DNStruncate使得真实用户可以通过TCP协议进行DNS访问而攻击者无法利用递归服务器进行放大攻击。本方法具体包括:步骤1、在EDNS0的伪资源记录中加入cookie的字段,包括:为识别伪资源记录为DNScookie的唯一编号标识OPTION-CODE、为伪资源记录的长度OPTION-LENGTH、由客户端通过自己的IP生成的ClientCookie、由递归服务器通过ClientCookie和自己的IP生成的ServerCookie,ServerCookie在初始阶段缺省;步骤2、支持DNScookie的用户在发送每个递归服务器请求时会根据自己的IP生成一个8位的随机cookie,作为伪资源记录附加在DNS请求中;步骤3、递归服务器收到用户DNS请求后首先检查用户DNS请求是否附带着cookie,如果不附带cookie,则返回truncate要求用户使用TCP进行重传;如果附带cookie则执行步骤4;步骤4、递归服务器检查用户发送的DNS请求是否附带ServerCookie,如果不附带,则递归服务器将应答信息附加上用ClientCookie和自己的IP共同生成的ServerCookie以及ClientCookie返回给客户;如果已经附带了ServerCookie,则检查用户的ServerCookie是否与自己生成的一致,如果是,则将应答信息附上ClientCookie和ServerCookie返回给用户,如否,则返回truncate要求用户使用TCP重传;步骤5、当收到递归服务器应答时,用户会核对递归服务器应答的伪资源记录中的ClientCookie是否与自己发送的随机cookie相同,如果相同,则接收此数据,如果不同,则丢弃此数据;步骤6、当用户发送下个请求时,用户除附上自己生成的ClientCookie之外,也将收到的应答中的ServerCookie加入到伪资源记录中;如果上次收到的应答因cookie错误被丢弃,则沿用之前的ServerCookie,如果不存在ServerCookie的缓存,则ServerCookie缺省;步骤7、不支持DNScookie的用户发送DNS请求时,会收到truncate回复,随后通过TCP进行DNS协议的服务。本专利技术的有益效果在于:采用本方法的递归服务器可以完全避免自己成为放大攻击的放大器,通过本方法,递归服务器可以将会对cookie不正确的用户或不携带cookie的用户返回truncate要求用户使用TCP进行重传。由于truncate应答的大小于DNS请求包的大小相似,使得攻击者无法通过递归侧进行放大攻击。相比传统的手动限速和返回truncate,本方法的优势在于不需要运营者发现递归服务器收到攻击而临时修改配置。启用本方法后,递归服务器可以默认的主动防御放大攻击。与传统的DNScookie相比,本方法通过对truncate的利用,解决了部署的问题,使得就算没有部署的DNScookie的用户也可以访问递归服务器获得DNS解析服务。附图说明图1为正常情况下本专利技术中用户与递归服务器交互流程;图2为异常(用户不支持cookie、cookie错误)时本方法中用户与递归服务器的交互流程;图3为未采用本方法时收到攻击者攻击的模式;图4为采用本方法时中防止攻击的模式。具体实施方式下面结合附图,对实施例作详细说明。本方法能够有效地防止攻击者利用采用了本方法的递归服务器成为放大攻击的放大器,用时通过TCP回退,保证了未支持cookie的用户对DNS服务的访问。关于实现本方法的技术细节,这里说明一下DDOS攻击,放大攻击,DNScookie和TCP回退等。DDOS(分布式拒绝服务)攻击本文档来自技高网
...
一种应对DNS服务器反射放大攻击的解决方法

【技术保护点】
一种应对DNS服务器反射放大攻击的解决方法,其特征在于,包括:步骤1、在EDNS0的伪资源记录中加入cookie的字段,包括:为识别伪资源记录为DNS cookie的唯一编号标识OPTION‑CODE、为伪资源记录的长度OPTION‑LENGTH、由客户端通过自己的IP生成的Client Cookie、由递归服务器通过Client Cookie和自己的IP生成的Server Cookie,Server Cookie在初始阶段缺省;步骤2、支持DNS cookie的用户在发送每个递归服务器请求时会根据自己的IP生成一个8位的随机cookie,作为伪资源记录附加在DNS请求中;步骤3、递归服务器收到用户DNS请求后首先检查用户DNS请求是否附带着cookie,如果不附带cookie,则返回truncate要求用户使用TCP进行重传;如果附带cookie则执行步骤4;步骤4、递归服务器检查用户发送的DNS请求是否附带Server Cookie,如果不附带,则递归服务器将应答信息附加上用Client Cookie和自己的IP共同生成的Server Cookie以及Client Cookie返回给客户;如果已经附带了Server Cookie,则检查用户的Server Cookie是否与自己生成的一致,如果是,则将应答信息附上Client Cookie和Server Cookie返回给用户,如否,则返回truncate要求用户使用TCP重传;步骤5、当收到递归服务器应答时,用户会核对递归服务器应答的伪资源记录中的Client Cookie是否与自己发送的随机cookie相同,如果相同,则接收此数据,如果不同,则丢弃此数据;步骤6、当用户发送下个请求时,用户除附上自己生成的Client Cookie之外,也将收到的应答中的Server Cookie加入到伪资源记录中;如果上次收到的应答因cookie错误被丢弃,则沿用之前的Server Cookie,如果不存在Server Cookie的缓存,则Server Cookie缺省;步骤7、不支持DNS cookie的用户发送DNS请求时,会收到truncate回复,随后通过TCP进行DNS协议的服务。...

【技术特征摘要】
1.一种应对DNS服务器反射放大攻击的解决方法,其特征在于,包括:
步骤1、在EDNS0的伪资源记录中加入cookie的字段,包括:为识别伪资
源记录为DNScookie的唯一编号标识OPTION-CODE、为伪资源记录的长度
OPTION-LENGTH、由客户端通过自己的IP生成的ClientCookie、由递归服务
器通过ClientCookie和自己的IP生成的ServerCookie,ServerCookie在初始阶
段缺省;
步骤2、支持DNScookie的用户在发送每个递归服务器请求时会根据自己
的IP生成一个8位的随机cookie,作为伪资源记录附加在DNS请求中;
步骤3、递归服务器收到用户DNS请求后首先检查用户DNS请求是否附带
着cookie,如果不附带cookie,则返回truncate要求用户使用TCP进行重传;如
果附带cookie则执行步骤4;
步骤4、递归服务器检查用户发送的DNS请求是否附带ServerCookie,如
果不附带,则递归服务器将应答信息附加上用ClientCookie和自己的IP共同生

【专利技术属性】
技术研发人员:万润夏宋林健刘东余冬王爱民李凤民李震潘居臣龚道彪
申请(专利权)人:北京天地互连信息技术有限公司中国石油天然气股份有限公司华北油田分公司
类型:发明
国别省市:北京;11

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

1