返回

一系列严重缺陷影响了流行的DNSMasq DNS转发器

发布时间:2023-12-20 14:53:42 1125
dns security

网络安全研究人员发现了Dnsmasq中的多个漏洞。Dnsmasq是一种流行的开源软件,用于缓存域名系统(DNS)响应,因此可能允许对手发起DNS缓存中毒攻击并远程执行恶意代码。

这七个缺陷统称为DNSpooq“由以色列研究公司JSOF提供,与之前披露的DNS体系结构中的弱点相呼应,使Dnsmasq服务器无法抵御一系列攻击。

研究人员在今天发布的一份报告中指出:“我们发现,Dnsmasq容易受到非路径攻击者(即,不观察DNS转发器和DNS服务器之间通信的攻击者)的DNS缓存中毒攻击。”。

“我们的攻击允许同时毒害多个域名,这是发现多个漏洞的结果。攻击可以在几秒钟或几分钟内成功完成,并且没有特殊要求。我们还发现,许多Dnsmasq实例被错误配置为在WAN接口上监听,从而使攻击成为可能。”从互联网上下载。"

Dnsmasq是DNS masquerade的缩写,是一种轻量级软件,具有DNS转发功能,用于本地缓存DNS记录,从而减少上游名称服务器上的负载并提高性能。

JSOF发现,截至2020年9月,约有100万个易受攻击的Dnsmasq实例,其中包括Android智能手机中的软件,以及思科、阿鲁巴、Technicolor、Redhat、西门子、泛素和康卡斯特的数百万路由器和其他网络设备。

重温卡明斯基攻击和SAD DNS

DNS缓存中毒的概念并不新鲜。2008年,安全研究员丹·卡明斯基(Dan Kaminsky)介绍了他发现的一个广泛而严重的DNS漏洞,该漏洞允许攻击者对大多数名称服务器发起缓存中毒攻击。

它利用了DNS中的一个基本设计缺陷—;只有65536个可能的事务ID(TXID)和#8212;向DNS服务器发送伪造的响应,然后缓存并利用这些响应将用户路由到欺诈网站。

事务ID是作为一种机制引入的,它可以阻止权威名称服务器被模拟来制造恶意响应的可能性。在这个新设置中,DNS解析程序将一个16位的ID附加到名称服务器的请求中,然后名称服务器将发送回一个具有相同ID的响应。

DNSMasq DNS Forwarder

但事务ID的限制意味着,每当递归解析程序向权威名称服务器查询给定域(例如www.google.com)时,攻击者可能会向解析程序发送针对大约65000个事务ID中的部分或全部的DNS响应。

如果攻击者具有正确事务ID的恶意应答在权威服务器的响应之前到达,则DNS缓存将被有效毒害,只要DNS响应有效,攻击者就会返回所选的IP地址而不是合法地址。

攻击基于以下事实:整个查找过程未经验证,这意味着无法验证权威服务器的身份,DNS请求和响应使用UDP(用户数据报协议)而不是TCP,因此很容易欺骗回复。

为了解决这个问题,一个随机化的UDP端口与事务ID一起被用作第二个标识符,而不是仅使用端口53进行DNS查找和响应,从而将熵提高了几十亿,使攻击者几乎无法猜测源端口和事务ID的正确组合。

尽管由于上述源端口随机化(SPR)和DNSSEC(域名系统安全扩展)等协议,缓存中毒攻击的有效性受到了打击,去年11月,研究人员发现了一种“新颖”的侧通道,通过使用ICMP速率限制作为侧通道来揭示给定端口是否打开,从而克服了随机性。

袭击—;命名为“SAD DNS”或侧通道攻击DNS—;包括向DNS解析程序发送一组伪造的UDP数据包,每个数据包通过不同的端口发送,然后使用ICMP“端口不可访问”消息(或缺少该消息)作为指示,以识别是否满足速率限制,并最终缩小发出请求的确切源端口。

装载允许设备接管的多阶段攻击

有趣的是,JSOF详述的DNS缓存中毒攻击与SAD DNS有相似之处,因为这三个漏洞(CVE-2020-25684、CVE-2020-25685和CVE-2020-25686)旨在减少接受响应所需的事务ID和源端口的熵。

具体而言,研究人员指出,尽管Dnsmasq支持SPR,但它“在一个端口上多路复用多个TXID,并且不会将每个端口链接到特定的TXID”,用于防止DNS欺骗的CRC32算法可能会被轻易击败,导致出现这样一种情况:“攻击者需要正确地获取任意一个端口,并正确地获取任意一个TXID。”

Dnsmasq版本2.78到2.82都被发现受到这三个缺陷的影响。

DNSMasq DNS Forwarder

JSOF披露的其他四个漏洞是基于堆的缓冲区溢出,这可能会导致在易受攻击的设备上执行远程代码。

研究人员说:“这些漏洞本身的风险是有限的,但变得特别强大,因为它们可以与缓存中毒漏洞结合,产生强大的攻击,允许远程代码执行。”。

更糟糕的是,这些弱点可能与其他网络攻击相关联,比如SAD DNS和NAT滑流,从而对监听端口53的Dnsmasq解析器发起多级攻击。如果恶意代码通过网络浏览器或同一网络上的其他受感染设备传播,即使那些被配置为只监听从内部网络接收到的连接的系统也有风险。

除了使它们容易受到缓存中毒的影响外,这些攻击还可以允许不良行为者控制路由器和网络设备,通过破坏恶意域的流量来发起分布式拒绝服务(DDoS)攻击,甚至阻止用户访问合法站点(反向DDoS)。

研究人员还提出了一种“可攻击性攻击”的可能性,即连接到使用受感染的Dnsmasq服务器的网络的移动设备接收到错误的DNS记录,然后在连接到新网络时被用来感染该网络。

将Dnsmasq更新为2.83

强烈建议供应商将其Dnsmasq软件更新至今天晚些时候发布的最新版本(2.83或更高版本),以降低风险。

作为解决办法,研究人员建议降低允许转发的最大查询数,并依靠HTTPS上的DNS(DoH)或TLS上的DNS(DoT)连接到上游服务器。

“DNS是一种互联网关键协议,其安全性极大地影响互联网用户的安全,”研究人员得出结论。“这些问题使网络设备面临被破坏的风险,并影响到数以百万计的互联网用户,他们可能会遭受缓存中毒攻击。

“这突出了DNS安全的重要性,尤其是DNS转发器的安全性。它还强调了加快部署DNS安全措施的必要性,如DNSSEC、DNS传输安全和DNS cookie。”


特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
精选文章
thumb 中国研究员首次曝光美国国安局顶级后门—“方程式组织”
thumb 俄乌线上战争,网络攻击弥漫着数字硝烟
thumb 从网络安全角度了解俄罗斯入侵乌克兰的相关事件时间线