针对域名系统(DNS)伺服器的网络威胁
主页 > 
针对域名系统(DNS)伺服器的网络威胁
< 返回

针对域名系统(DNS)伺服器的网络威胁

DNS简介

域名系统(Domain Name System),简称DNS,是在互联网上常用的分级和分散式命名系统的基础规约,负责把人类可读的域名解析为数值的互联网规约(Internet Protocol,简称IP)地址。原本设计的DNS规约(即RFC882和RFC883)由Internet Engineering Task Force(简称IETF)于1983年发布。 DNS包含数据储存库,用于储存域名和其对应的IP地址,就像互联网的目录或电话簿。将域名转换为对应的IP地址的功能称为「域名解析」。DNS用于执行域名解析的规约称为「DNS规约」,但是, DNS规格并没有制定任何机制来保护DNS传输数据的真确性和机密性,可能令DNS数据在传输过程中被拦截和修改。

DNS解析的流程

DNS所采用把划一资源定位址(Uniform Resource Locator,简称URL)转换为可路由IP地址的过程包括六个主要步骤。以下图表将以「https://www.example.com/index.html」为例子来探讨有关过程如何运作:

DNS解析的流程的图像

1.
域名查询
a.
当用户想浏览「https://www.example.com/index.html」,并在网页浏览器的地址栏输入URL,网页浏览器会把URL转置成为完整网域名称(Fully Qualified Domain Name,简称FQDN),即「www.example.com」。
b.
网页浏览器向DNS解析器传送DNS域名查询,以解析FQDN主名称的IP地址,例如「1.2.3.4」。
c.
相比直接向DNS解析器传送DNS域名查询,使用DNS代理伺服器作为中介可在域名解析过程增加透明度和防御控制措施,在威胁发生前阻截潜在的恶意网站。
2.
根域名伺服器查询
DNS解析器把DNS域名查询转达根域名伺服器,该伺服器传回相应顶级域名伺服器的IP地址,即「.com」域名伺服器。
3.
顶级域名伺服器查询
DNS解析器把DNS域名查询传至适当的顶级域名伺服器,该伺服器传回相应企业层域名伺服器的IP地址,即「example.com」域名伺服器。
4.
企业层域名伺服器查询
DNS解析器把DNS域名查询转达企业层域名伺服器,该伺服器传回相应网页伺服器的IP地址,即「www.example.com」。
5.
回应域名查询
DNS解析器把网页伺服器的IP地址传回网页浏览器,并把该该域名查询回应储存在其快取记忆体中。 当下次需要解析该地址时,便会从快取记忆体中取得有关结果,无需重新发送另一个DNS域名查询。
6.
连接至网页伺服器和下载网页内容
网页浏览器连接至网页伺服器,并向用户展示网页,即「https://www.example.com/index.html」。
DNS相关的攻击风险

根据多个网络安全威胁报告, DNS相关的攻击愈趋复杂并且大幅增加,愈来愈多攻击者采用多种不同的攻击技术针对DNS的不同组件,例如递回解析器和权威域名伺服器。此外,通过基于DNS的隐蔽通道发生的数据外泄,在合法的DNS流量中通常不会被发现。由于侦测和缓解攻击越来越困难,令保护DNS基础设施以保持DNS安全和具抗御力更为重要。由于DNS所担当的关键角色,针对DNS的攻击所造成的影响非常严重,未有保护DNS的后果可能会导致资料外泄、服务受阻、违规和机构声誉受损的风险增加。

常见的DNS的攻击
1.
DNS骑劫
DNS骑劫(也称为「DNS Redirection」)这类DNS攻击通过操纵DNS域名查询,把用户转接至恶意网站。DNS骑劫可以藉接管用户的DNS域名查询,从而进行网址嫁接或仿冒诈骗攻击。常见的DNS骑劫攻击有五类:
1.1.
用户端DNS骑劫 — 在用户不知情或未经其批准下,,藉着在用户的系统安装的恶意软件更改用户装置的DNS设定,并把用户转接至恶意网站。
1.2.
路由器DNS骑劫 — 利用路由器的安全漏洞,接管路由器和重写其DNS设定,把所有连接的用户转接至恶意网站。
1.3.
虚假DNS骑劫 — 入侵DNS域名伺服器,并更改其DNS记录,把DNS域名查询转接至恶意网站。
1.4.
中间人(Man-In-The-Middle,简称MITM)DNS骑劫 — 拦截用户与DNS域名伺服器之间的网络通讯,以虚假的IP地址替代,把用户连接至恶意网站。
1.5.
域名帐号骑劫 — 在未经域名持有人批准下更改域名注册,例如使用被盗用的域名帐户登入资料。
2.
DNS快取记忆体中毒
DNS快取记忆体中毒也称为DNS仿冒,是一种DNS快取记忆体攻击,攻击者将虚假数据加入DNS解析器的快取记忆体中。DNS解析器利用快取记忆体储存处理DNS域名查询的结果,以提高接获相同查询时处理的表现。有关虚假数据会把用户转接至恶意网站。
3.
DNS伺服器上的分布式拒绝服务攻击
DNS伺服器上的分布式拒绝服务攻击的图像
分布式拒绝服务(Distributed Denial-of-Service,简称DDoS)攻击利用大量的互联网流量,恶意尝试干扰目标DNS伺服器的正常DNS流量。 在DNS上成功发动DDoS攻击,会妨碍把域名解析为域名和其子域名的IP地址,令其他服务无法接达,甚至造成更灾难性的后果。DDoS攻击有两种主要的攻击技术—放大和反射。两者经常一起使用,以对目标造成最大程度的影响。
有史以来最大规模的DDoS攻击记录为2.3 Tbps,于2020年2月由Amazon Web Services(简称AWS)Shield服务缓解。该攻击使用被骑劫的Connection-less Lightweight Directory Access Protocol(CLDAP)网页伺服器来进行,以达到大规模的DDoS带宽。在2016年,攻击者对DNS服务提供商Dyn发动一系列DDoS攻击,导致欧洲和北美很多用户无法使用主要的互联网平台和服务。
3.1.
DNS洪水攻击
攻击者把大量的DNS域名查询传送至DNS伺服器,尝试耗尽某特定域名空间的DNS基础设施和伺服器资源。DNS洪水攻击通过干扰DNS域名解析功能,破坏网站或线上业务应用程式回应合法旳网络传输流量。DNS洪水攻击与正常的高流量有时很难分别,由于因为该大量的流量通常来自多个不同地点,假装合法的流量查询网域的真正记录。
3.2.
随机子网域(Pseudo-Random Subdomain,简称PRSD)攻击
随机子网域(PRSD)攻击(也称为「水刑攻击」或「NXDOMAIN洪水攻击」)是另一类分布式拒绝服务攻击,攻击者通过传送大量合法域名的随机并且虚构的子网域域名查询,旨在耗尽伺服器资源,瘫痪目标合法网域的权威域名伺服器。
4.
DNS通道穿越攻击(数据外泄)
DNS通道穿越攻击的图像
DNS通道穿越是指控制域名和DNS伺服器,对DNS域名查询和回应内的数据进行编码,与受控/受感染的DNS伺服器和用户电脑进行通讯。DNS通道穿越攻击利用向攻击者的伺服器发出的正常DNS域名查询,为攻击者提供隐蔽的指令和控制通道,并通过指令和控制(Command and Control,简称C&C)方法提供数据外泄的路径。外泄的数据会随着时间被编码到多个DNS主域名查询中,从而逐步外泄敏感资料。
5.
域名抢注
域名抢注是一种DNS威胁,攻击者擅自占用域名把用户转接至恶意网站。机构可能会错过其域名的续期日期,擅自占用者便会利用该等域名,而对到访该等域名的用户带来很高的风险。被抢注的域名常被用作或改变用途进行攻击,例如攻击者可以使用被抢注的域名来分发恶意软件,或进行诈骗或仿冒诈骗等活动。
6.
DNS区域传送(Zone Transfer)攻击
DNS区域传送攻击的图像
DNS区域传送是一种网络机制,把主DNS伺服器的区域档案的内容复制至副DNS伺服器。如果没有正确配置获授权副DNS伺服器的传送,攻击者可以通过DNS区域传送攻击,从已暴露的DNS数据库复制机构的内部IP地址、伺服器和其他资讯(例如私有域记录、SPF TXT记录)。攻击者可以了解机构的网络结构,然后故意利用机构的资讯和基础设施系统。
防御DNS攻击的措施

机构可以实施以下防御措施来防范DNS的威胁和攻击:

1.
一般措施
保持DNS装置的作业系统和软件为最新版本,并在装置上安装端点保安软件。
适当地配置DNS伺服器,例如:
为每项功能设定专用域名伺服器场合,如权威域名伺服器和递回解析器。
建立以网络为本的权威域名伺服器分散版本,提高对故障的承受能力。
分拆DNS为内部和外部网络设置独立的DNS伺服器,作为保安和私隐管理的方法。
定期备份DNS伺服器,包括伺服器的配置和区域档案。
2.
DNS注册人和伺服器管理员应采取的措施
采用多重认证接达域名注册商系统和DNS伺服器。
避免使用个人电邮地址作为机构域名的联络资料或注册服务商的登入账号。
启用域名锁定功能,以防止未获授权或非应邀的情况下被转移至其他注册服务商。
紧记已注册域名的到期日期,并在有效期届满前为域名注册续期,避免域名被攻击者或其他人接管。
确保所有域名的联络资料(包括注册者、技术人员、管理人员和帐单联络资料)为最新、完整和正确,对任何来自域名注册服务商的不寻常帐号更改警报保持警惕。
限制DNS区域送只适用于从主权威域名伺服器至特定的辅助域名伺服器,并拒绝所有其他的DNS域名查询。
监测和阻止可疑的DNS活动,例如大量的子域名查询请求、大型的域名查询封包、很长的子域名和不常见的查询类型(如TXT记录)。
在可行的情况下,在主域名和任何副域名启用域名系统安全扩展(Domain Name System Security Extensions,简称DNSSEC),以确保DNS数据的真确性。
委聘专业DNS服务供应商以提供防护和缓解服务,减低DNS洪水攻击的风险。
使用「checkzone」、「checkconf」或类似的设施来检测DNS服务配置错误。
在边界网络(Demilitarised Zones,简称DMZs)内运行权威域名伺服器。
采用DDoS缓解服务以抵御阻断服务攻击。
订购任播服务,把网络流量分流至副DNS伺服器(Anycast节点)。
在权威域名伺服器和副伺服器上启用回应速率限制(Response Rate Limits,简称RRL)。
实施回应政策区域(Response Policy Zone,简称RPZ),以控制可利用递回DNS伺服器进行的域名查询。
DNS攻击的事故应变和复原

当DNS被攻击时,机构应考虑采取以下行动,以便有效地应对和控制事故:

1.
评估事故的范围、可能造成的损坏和影响。
2.
检查域名查询是否仍可以由辅助副DNS解析器进行域名解析。
3.
预计恢复服务所需要的时间。
4.
立即向相关人士(例如资讯科技管理员)报告,以便调查和清理有关事故。如果涉及犯罪活动和个人资料外泄,应向相关的执法或监管机构(如香港警务处和个人资料私隐专员公署)通报。如有需要,可向香港电脑保安事故协调中心(Hong Kong Computer Emergency Response Team Coordination Centre,简称HKCERT)征询有关事故应变和复原的意见。
5.
确定DNS攻击事故的源头,并袓截接达相关的恶意伺服器。
6.
如果管理员帐户遭到入侵,应重新设定管理员的登入凭证。
7.
中断受感染设备的网络连接,并对相关装置进行完整的扫描,以核实是否被安装了恶意软件。
8.
检视域名的注册记录(例如域名伺服器、联络资料),以确认注册资料没有任何未获授权的更改。
9.
检视审计记录,以查看伺服器配置或区域档案有没有任何未获授权的更改。如果怀疑相关配置或档案已被窜改,应从备份中进行复原。
10.
在受影响的主机进行安全漏洞扫描,以修补任何已知的漏洞。
11.
调查攻击事故的根本原因,不论是由于人为错误还是电脑系统中存在的安全漏洞等,并实施缓解措施以应对攻击。
12.
进行保安审计以确保已妥为实施建议的缓解风措施。
13.
向域名注册管理机构(Registry)和域名注册服务商(Registrars)通报在互联网上涉及域名的仿冒诈骗、垃圾邮件和其他恶意攻击行为。
其他DNS保安功能
1.
域名系统安全扩展(DNSSEC)
域名系统安全扩展(DNSSEC)在搜寻IP地址时验证域名的DNS数据,从而提高安全水平。DNSSEC利用加密签署技术确认所收到的DNS数据是真确的。DNSSEC有助确保数据的完整性,以及认证DNS数据的源头,从而可在DNS层面防止攻击者把用户转接至伪冒网站。不过,要注意有关域名需要启用DNSSEC和DNS解析器需支援DNSSEC,以提供有关保护。

已启用DNSSEC的域名解析工作流程
已启用DNSSEC的域名解析工作流程的图像

1.
当用户尝试浏览一个已启用DNSSEC的域名时,支援DNSSEC的DNS解析器会把域名查询转发至权威域名伺服器。
2.
权威域名伺服器继而会把有关IP地址连同数码签署一并传回。
3.
DNS解析器会验证有关数码签署,以确保DNS数据没有被窜改。
4.
当遇上攻击者拦截回复,并传送虚假DNS回复至DNS解析器,DNS解析器会未能验证有关数据,并把虚假资料丢弃。
2.
DNS过滤
DNS过滤是一种可以封锁接达特定网站、网页和IP地址的技术。通过DNS过滤方案过滤已知的恶意域名╱IP地址,当用户尝试接达恶意网站时,可以减低感染风险。这项技术采用DNS黑名单(DNS Blacklist)和DNS沉洞(DNS Sinkhole)来进行。DNS黑名单根据恶意IP地址的名单为域名查询提供自动和实时的检查服务。DNS沉洞是通过对已知的恶意域名(根据DNS黑名单)的域名查询伪造回应,将之解析为可界定但的的IP地址给客户。如果客户试图接达该虚假的IP地址,而当中设有保安规则,便可阻截对该恶意网域的接达。
3.
WHOIS隐私保护
WHOIS是一项有关域名查询和回应的规约,提供曾被数据库拦截的域名和IP地址的资料,并以人类可读的格式储存和交付数据库的内容。Internet Corporation for Assigned Names and Numbers(简称ICANN)目前要求所有域名域名登记的拥有者和管理员的电子邮件地址、电话号码甚至邮寄地址都必须公开。
为了保障在WHOIS的目录上被要求公开的域名注册者和管理员的资料,域名注册服务商提供了域名私隐保障服务,主要为隐藏有关域名注册的联络资料,以保障域名登记者的私隐。
延伸阅读
1.
Internet Corporation for Assigned Names and Numbers (ICANN) - DNSSEC
2.
Asia-Pacific Network Information Centre (APNIC) - DNSSEC(只提供英文版)
3.
National Institute of Standards and Technology (NIST) - Secure Domain Name System (DNS) Deployment Guide(只提供英文版)
4.
Open Web Application Security Project (OWASP) - Anatomy of a DNS Cache Poisoning Attack(只提供英文版)
5.
Franco Palau, Carlos Catania, Jorge Guerra, Sebastian Garcia, and Maria Rigaki - DNS Tunneling: A Deep Learning based Lexicographical Detection Approach(只提供英文版)
6.
香港电脑保安事故协调中心(HKCERT) - 保安建议:加强DNS基建保安
7.
Australian Cyber Security Centre (ACSC) - How to Combat Fake Emails(只提供英文版)
8.
香港互联网注册管理有限公司(HKIRC) - 技术常见问题(只提供英文版)
9.
香港互联网注册管理有限公司(HKIRC) - DNSSEC

免责声明:用户亦应留意本网站的免责声明。在下载和使用保安软件和工具前,应细阅相关的用户协议和私隐政策。