domain-name-system – 提供DNSSEC暴露的哪些安全漏洞?

前端之家收集整理的这篇文章主要介绍了domain-name-system – 提供DNSSEC暴露的哪些安全漏洞?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我打算用DNSSEC签署我的DNS区域.我的区域,注册商和我的DNS服务器(BIND9)都支持DNSSEC.唯一不支持DNSSEC的是我的辅助名称服务提供商(即 buddyns.com).

On their website,他们对DNSSEC说明了这一点:

BuddyNS does not support DNSSEC because it exposes to some
vulnerabilities unsuited to a high-volume DNS service.

好吧,我认为DNSSEC的使用目前在某种程度上是有问题的,因为大多数解析器都不会检查记录是否正确签名.我不知道的是 – 根据他们的陈述 – 似乎提供它会暴露某种安全漏洞.

那些“漏洞”是什么?

解决方法

DNSSEC存在一些风险,但它们与反射或放大没有直接关系.在这种情况下,EDNS0消息大小扩展是红色鲱鱼.让我解释.

任何不依赖于先前身份证明的数据包的交换都会受到DDoS攻击者的滥用,他们可以使用该未经身份验证的数据包交换作为反射器,也可能作为放大器.例如,ICMP(“ping”背后的协议)可以以这种方式被滥用.正如TCP SYN数据包一样,即使SYN被欺骗来请求最多40个SYN-ACK数据包来自一些不想要那些SYN-ACK数据包的受害者.当然,所有UDP服务都容易受到这种攻击,包括NTP,SSDP,uPNP,以及其他响应,包括DNS.

大多数入侵检测,入侵防护和负载均衡器设备都是瓶颈,无法跟上“线路速率”流量.此外,许多路由器无法以线速运行,有些交换机也无法运行.这些瓶颈是“在路径中”最小的东西,并且比链路本身小,是基于拥塞的DDoS攻击的实际目标.如果您可以让某人的防火墙忙于攻击流量,那么即使链接未满,也无法通过良好的流量.减慢防火墙的速度不是每秒的总位数(可以通过使用更大的消息来增加,而EDNS0和DNSSEC会这样做),而是每秒的总包数.

有很多关于DNSSEC因为DNSSEC更大的消息大小而使DDoS变得更糟的城市传奇,虽然这具有直观意义并且“听起来不错”,但这简直是错误的.但如果这个传说中有一丝真理,真正的答案仍然在其他地方 – [因为DNSSEC总是使用EDNS0,但EDNS0可以在没有DNSSEC的情况下使用],并且许多正常的非DNSSEC响应与DNSSEC一样大回应将是.考虑用于表示SPF策略或DKIM密钥的TXT记录.或者只是任何大的地址或MX记录.简而言之,没有攻击需要DNSSEC,因此任何关注DNSSEC作为DDoS风险都是错误的能量.

DNSSEC确实存在风险!它很难使用,也很难正确使用.通常,它需要新的工作流程来进行区域数据更改,注册商管理,安装新服务器实例.所有这些都必须进行测试和记录,并且每当出现与DNS相关的问题时,必须调查DNSSEC技术作为可能的原因.如果你做的一切正确,最终的结果将是,作为区域签名者,你自己的在线内容和系统对你的客户来说将更加脆弱.作为一个远端服务器操作符,结果将是,其他人的内容和系统对您来说将更加脆弱.这些风险通常被认为超过了收益,因为唯一的好处是保护DNS数据免受飞行中的修改或替换.这种攻击非常罕见,不值得所有这些努力.我们都希望有一天DNSSEC无处不在,因为它将启用新的应用程序.但事实是,今天,DNSSEC既有成本,也没有任何好处,而且风险很高.

因此,如果您不想使用DNSSEC,这是您的特权,但不要让任何人混淆DNSSEC的问题是它作为DDoS放大器的角色. DNSSEC没有作为DDoS放大器的必要角色;还有其他更便宜的更好的方法来使用DNS作为DDoS放大器.如果你不想使用DNSSEC,那就让因为你还没有喝过Kool Aid而你想成为最后一个推动者(后来)而不是先行者(现在).

必须防止DNS内容服务器(有时称为“授权服务器”)被滥用为DNS反射放大器,因为DNS使用UDP,并且因为UDP可被欺骗源数据包滥用.保护DNS内容服务器免受此类滥用的方法不是阻止UDP,也不强制TCP(使用TC = 1技巧),也不阻止任何查询,也不选择退出DNSSEC.这些都不会对你有所帮助.您需要DNS Response Rate Limiting(DNS RRL),这是一种完全免费的技术,现在存在于几个开源名称服务器中,包括BIND,Knot和NSD.您无法修复防火墙的DNS反射问题,因为只有内容感知的中间件(如DNS服务器本身(添加了RRL))才能充分了解该请求,以便能够准确猜出什么是攻击,什么不是.我想再次强调:DNS RRL是免费的,每个权限服务器都应该运行它.

最后,我想揭露我的偏见.我写了大部分BIND8,我发明了EDNS0,我共同发明了DNS RRL.自1988年以来,我一直在研究DNS作为一个20多岁的东西,现在我现在变得脾气暴躁了50多岁,对于误解问题的半生不熟的解决方案越来越不耐烦了.如果这个消息听起来太像“嘿,你的孩子,离开我的草坪!”,请接受我的道歉.

猜你在找的HTML相关文章