导航菜单
首页 >  沐鸣开户测速 >  » 正文

沐鸣开户测速DNS缓存中毒,2008年的互联网攻击,死而复生


2008年,研究人员丹·卡明斯基(Dan Kaminsky)揭露了有史以来最严重的互联网安全威胁之一:域名系统的一个弱点,使得攻击者有可能将大量用户发送到冒名冒名的网站,而不是真正属于谷歌、美国银行(Bank of America)或其他任何人的网站。在整个行业的协调下,世界各地成千上万的DNS提供商安装了一个解决方案,避免了这种末日场景。

现在,Kaminsky的DNS缓存中毒攻击又回来了。周三,研究人员提出了一种新技术,沐鸣开户测速可以再次导致DNS解析器返回恶意欺骗的IP地址,而不是正确对应于域名的站点。

运营1.1.1.1 DNS服务的内容分发网络Cloudflare的研究主管尼克•沙利文(Nick Sullivan)表示:“这是一个相当大的进步,对于某些解析器来说,这与卡明斯基的攻击类似,具体取决于它们实际运行的方式。”“这是自卡明斯基攻击以来我们见过的最有效的DNS缓存中毒攻击。这是如果你运行DNS解析器,你应该认真对待的事情。”

DNS底漆

当人们在互联网上发送电子邮件、浏览网站或做任何其他事情时,他们的设备需要一种方法来将域名转换为数字IP地址服务器,用于定位其他服务器。设备首先要看的是DNS解析器,它是一个服务器或一组服务器,通常属于用户所连接的ISP、公司或大型组织。

如果ISP或组织的另一个用户最近与相同的域进行了交互,那么解析器将已经缓存相应的IP地址并返回结果。如果没有,解析器将查询特定域的专用权威服务器。然后权威服务器将返回一个响应,该解析器将向用户提供该响应,并将其临时存储在缓存中,以便在不久的将来可能需要它的任何其他用户。

整个过程是未经身份验证的,这意味着权威服务器不使用密码或其他凭据来证明它实际上是权威的。DNS查找也使用UDP数据包发生,它只在一个方向发送。结果是UDP数据包通常是微不足道的欺骗,这意味着有人可以使UDP流量看起来来自其他地方,而不是它真正的起源。

DNS缓存中毒:概要

当互联网架构师首次设计DNS时,他们意识到有人可以冒充权威服务器,并使用DNS将恶意结果返回解析器。为了防止这种可能性,架构师设计了查找事务号。解析器将这些16位数字附加到发送给权威服务器的每个请求。解析器只会接受包含相同ID的响应。

Kaminsky意识到只有65,536个可能的交易id。攻击者可以利用这一限制,方法是向DNS解析器注入恶意IP,使其能够访问稍微有变化的域(例如,1.google.com、2.google.com等),并为每个响应包含不同的事务ID。最终,攻击者会重新生成正确的数字,并将恶意的IP反馈给所有依赖该解析器的用户。这种攻击被称为DNS缓存中毒,因为它污染了解析器的查找存储。

DNS生态系统通过指数级增加接受响应所需的熵量解决了这个问题。以前,沐鸣开户测速查找和响应只在端口53上传输,而新系统随机化了所使用的端口号查找请求。对于要接受IP地址的DNS解析器,响应还必须包含相同的端口号。结合交易号,熵以数十亿计,这使得攻击者在数学上不可能找到正确的组合。

缓存中毒回来的

周三,来自清华大学和加州大学河滨分校的研究人员展示了一项技术,再次使缓存中毒成为可能。他们的方法利用一个侧通道来识别查找请求中使用的端口号。一旦攻击者知道了这个数字,他们再次有很高的机会成功猜测事务ID。

在这种情况下,侧信道是ICMP的速率限制,ICMP是Internet控制消息协议的缩写。为了节省带宽和计算资源,服务器将只响应来自其他服务器的一定数量的请求。在此之后,服务器将根本不提供响应。直到最近,Linux一直将这个限制设置为每秒1000次。

为了利用这一侧通道,新的欺骗干扰技术向DNS解析器注入大量被欺骗的响应,使它们看起来像是来自它们想要模拟的域的名称服务器。每个响应都通过不同的端口发送。

当攻击者通过错误的端口发送响应时,服务器将发送一个该端口不可达的响应,这会消耗全局速率限制1。当攻击者通过正确的端口发送请求时,服务器将根本不提供响应,这不会改变速率限制计数器。如果攻击者在一秒内用欺骗的响应探测1000个不同的端口,并且所有端口都关闭,那么整个速率限制将完全耗尽。另一方面,如果1000个港口中有一个开放,那么这个限制将被耗尽到999个。

随后,攻击者可以使用自己的非欺骗IP地址来测量剩余的速率限制。如果服务器只响应一条ICMP消息,攻击者就知道之前探测的1,000个端口中有一个必须打开,并可以进一步缩小到确切的端口号。

“我们怎么知道?”

加州大学河滨分校教授钱志云告诉我:“我们试图间接推断解析器向权威服务器发送了一个ICMP无法到达的消息。”“我们怎么知道?”因为解析器在一秒钟内只能发送固定数量的此类ICMP消息,这意味着攻击者也可以尝试向自己征集此类ICMP包。”

研究人员的论文,DNS缓存中毒攻击Reloaded:革命与侧通道,提供了更详细和技术描述的攻击。他们称这种攻击为SAD DNS,是侧信道被攻击DNS的简称。

研究人员私下向DNS提供商和软件开发商提供了他们的发现。作为回应,Linux内核开发人员引入了一项更改,使速率限制在每秒500到2000之间随机波动。钱学森教授表示,这种修复方法阻碍了新技术的工作。Cloudflare推出了自己的修复方案。在某些情况下,它的DNS服务将回落到TCP,这是更难以欺骗。

这项研究是在2020年ACM计算机和通信安全会议上提出的,今年由于COVID-19大流行而通过视频举行了该会议。研究人员在这里提供了额外的信息,加州大学河滨分校的新闻稿在这里。