研究人员发现DNS查询递归漏洞,影响多数DNS服务器,企业应尽快采取修补作业

通过域名服务器(DNS)漏洞发动攻击的手法,可能会导致网络瘫痪。最近有多个以色列大学的安全研究人员联手,披露一种名为NXNSAttack的攻击手法,这是一种存在于DNS的名称服务器(NS)形态漏洞,可让黑客用来发动分布式拒绝服务(DDoS)攻击,如果与其他的DNS攻击手法搭配运用,这项漏洞能放大攻击效果超过1千6百倍。由于这种攻击手法所滥用的漏洞,存在于DNS服务器处理递归查询的方式,这项漏洞也存在于市面上大部分的DNS服务,无论是付费及免费的DNS服务,几乎都暴露于相关的风险。

这项DNS漏洞的披露,是来自Tel Aviv大学的Lior Shafir与Yehuda Afek,以及赫兹利亚跨学科研究中心(Interdisciplinary Center, Herzliya)的Anat Bremler-Barr等3名安全研究员,最近共同发布了一份研究报告来披露他们的发现。根据他们的研究,NXNSAttack这项漏洞,是发生在递归DNS服务器与委派DNS的过程出现,递归DNS服务器的用途,是在DNS系统通过上层的查询时,将域名名称解析后,转换成IP地址。上述的转换过程发生在权威服务器(Authoritative Server),并会留下DNS记录,这种权威服务器具备授权(Delegation)到下层DNS的能力,然而这种授权的权力,黑客能用来放大DDoS攻击。

NXNSAttack攻击手法的途径,主要是黑客先渗透已经授权的名称服务器(NS),然后向递归服务器发动攻击,造成递归服务器大量向目标DNS名称服务器发出请求,进而造成这台服务器瘫痪而无法提供服务。

NXNSAttack攻击滥用的漏洞,便是有关于DNS服务器处理递归查询的方式,3名以色列研究员指出,黑客会滥用已经被攻击的权威服务器,授权给其他的DNS服务器,黑客就能借由将递归DNS服务器的查询导向受害域名,制造大量流量到受害的权威服务器,进行攻击。

研究人员指出,NXNSAttack的潜在威力极大,黑客能借此将简单的DNS查询,资料量放大成2倍至1,620倍不等,导致目标DNS服务器瘫痪。研究人员也将他们的发现,通报给DNS软件开发商、内容传递网络(CDN)供应商,以及DNS服务供应商,让他们能够进行修补工作。

研究人员利用互联网系统协会(Internet Systems Consortium)推出的Bind软件进行测试,依据攻击目标的不同,NXNSAttack有三种形态,其中像是锁定递归服务器的形态a,发送的资料量被放大了163倍,但封包数量却放大更多,达到1,621倍。如果是锁定顶级DNS域名服务器的形态c,也会产生出1,071倍的封包量。相较于物联网僵尸病毒Mirai所运用的“不存在的域名(Non-exist Domain,NXDomain)”攻击手法,资料量和封包数量放大分别仅有2.6倍和2倍,可说是相当鲜明的对比。

研究人员也针对市面上常见的DNS服务进行测试,从封包放大因素(Packet Amplification Factor,PAF)来看,受漏洞影响最严重的是Norton ConnectSafe服务,放大超过500倍,其余的也至少被放大30倍到近500倍不等。

其中,在DNS软件的安全漏洞,这些开发商也已经进行修补或是发出公告。例如,互联网系统协会(Internet Systems Consortium),便为旗下的Bind软件推出9.11.19、9.14.12,以及9.16.3等修正版本,同时将这套软件存在的NXNSAttack漏洞,通报为CVE- 2020-8616。该协会也根据CVSS第3.1版标准,评估这个漏洞的风险程度为8.0分。

其他DNS软件开发者的部分,NLnet Labs针对Unbound,提供更新版本1.10.1,并通报了CVE-2020-12662;Cz.nic则对于Knot Resolver推出5.1.1版,并将漏洞提报为CVE-2020-12667。微软也针对Windows Server提供的DNS服务,加入回应频率上限(Response Rate Limiting)机制,来防堵NXNSAttack攻击。

在上述软件开发者之外,研究人员也通报了提供DNS服务的IT厂商,包含了Amazon、Cloudflare、Google、IBM、Oracle,以及Verisign等。

告诉我们这个漏洞信息的DNS专家黄继民认为,近来的DDoS攻击手法,多半锁定常见的网络通信协议,如DNS、HTTPS,以及NTP等,利用协议或是机制上的漏洞,来放大效果,黑客只要掌握少量可利用的主机,就能快速制造用来攻击的流量。黄继民感慨的说,DNS是重要的网络基础服务,却总是被忽视,尤其近期盼多厂商开始支持DNS over TLS,或者是DNS over HTTPS,特别是微软已经宣布支持后者,他认为会被大量利用在DNS信道穿越攻击(DNS Tunneling),以及C&C中继站的通信上。

黄继民指出,NXNXAttack滥用的漏洞,就是通过DNS递归查询机制发挥DDoS攻击,由于一般用户上网就会用得到DNS,再加上几乎所有的DNS系统都存在这个漏洞,黄继民呼吁,千万不要心存侥幸,企业也不应该停用DNS服务,或是认为将关掉递归机制,就能够解决问题。