首页>>通知公告

互联网域名系统安全管理的现状及研究进展

来源: 作者: 点击量: 时间:2013-06-03

互联网域名系统DNS(Domain Name System)在诞生后的十几年中,一直为全球互联网的正确运行提供了关键性的基础服务,其重要性也与日俱增。各种基于域名的Web网站访问、电子邮件系统、文件共享系统等都依靠DNS的支持而得以正常开展。因此,对互联网核心基础设施DNS的安全管理研究对于确保全球互联网稳定、提高互联网性能具有十分重要的意义。

  一、互联网域名系统概述

  DNS由3个主要部分组成:(1)域名空间和资源记录RR(Resource Record),它提供了树形结构的名字空间和与其关联的数据的规范,目前共有58种RR。(2)名字服务器(name servers),它提供该树形结构的名字空间中的部分信息。如果该服务器拥有某区域的完整信息,则成为授权服务器。授权信息组织成“区域”(zones),存储在区域文件中。(3)解析器(Resolvers),负责接收客户端请求并查询域名服务器。解析器通常位于系统级,可以被用户的应用程序直接调用。

  DNS资源记录数据被存储在一个树形结构的分布式数据库中。每个授权域名服务器负责域名空间层次树中的一部分。域名解析过程一般由客户端应用程序向本地域名服务器发起的查询(query)开始,如果查询失败,则向根服务器查询直至得到所要查询的域名的IP地址为止。为了提高域名服务器的响应速度和性能,树形结构中的每级域名服务器均应缓存已经解析获得的域名与IP地址的对应信息(根服务器和.com等顶级域名服务器除外)。

  二、研究现状

  对DNS系统的有效管理是建立稳定高效的DNS系统的前提和基础。然而,DNS现有的管理、配置和规划机制,以及保护自己免受各种攻击的安全机制都非常有限,甚至还很初级。例如目前,全球DNS系统主要依赖多点镜像、负载均衡等方法来应对流量突发访问,以及遭受DDOS攻击时保持正常运行。对DNS的管理、配置和规划则主要依赖管理者的实际经验,缺乏统一的模型与科学方法,另一方面,随着各种新技术如IPv6、多语种域名和DNSSEC等在DNS系统中的逐步部署,对DNS系统的管理、配置和规划提出了更高的要求。

  相关研究人员已经做了不少探索,例如,DNS技术创始人、美国计算机学会ACM终身成就奖获得者Paul Mockapetris领导的Nominum公司研发了一种新的DNS系统“Foundation”。但该系统主要是为了解决目前普遍使用的开放源码的DNS服务器软件BIND在处理查询能力和安全性能不高方面的问题,并没有提供专业化的管理帮助系统。其他类似的研究还包括利用本地DNS和远程DNS协同提高解析效率的CoDNS、基于P2P结构的DDNS等,这些研究主要围绕DNS系统本身的不足进行的,不涉及现有DNS系统的管理规划问题。Pappas等人则针对DNS全球分布式的特点,提出了一种分布式的解决方案,用以识别DNS配置错误。另外的多数DNS帮助软件包主要用于帮助域名空间中的区域管理、进行区域文件扫描(zonefile scanning),找出区域配置错误等,在提供一定的用户使用接口的同时,提供一些简单的网络故障诊断工具,如检查网络联通性的Ping、Traceroute,检查DNS服务器解析功能的dig、nslookup等。在惠普公司和IBM公司开发的网管系统OpenView、Tivoli中也附带了一些诊断DNS错误的功能,但都十分有限。

  与此同时,不少研究人员对DNS的运行性能进行了大量的测量与分析研究,试图为有效管理DNS系统提供有价值的参考数据。例如,有人分析了本地和授权DNS服务器的负载分布、可用性和部署模式。Pappas通过长达半年时间的测量,详细研究了DNS运行错误对其鲁棒性的负面影响。Jung等在美国麻省理工学院和韩国KAIST (Korea Advanced Institute of Science and Technology)的本地DNS服务器测量了DNS性能,并评价了DNS缓存的有效性。通过详细分析收集到的DNS跟踪文件(trace file),测量了客户端观察到的DNS性能。基于跟踪文件的仿真,发现降低类型A纪录的TTL值到几百秒对缓存命中率影响很小,而缓存NS纪录和保护单个服务器不过载,对于DNS的可扩展性至关重要。与收集客户端数据不同的是,Liston比较了不同站点的DNS测量数据,调查了不同站点间DNS性能的差异,发现测量结果在整个研究过程中相对一致,并且与站点高度相关。Wessles基于实验室测试和实际Internet测量,发现已存DNS缓存在负载均衡方面采用了不同的解决方案,并建议对流行的站点加大TTL值,以减少全球DNS的查询负担。还有的研究者则通过扩展DNS动态更新协议,提出了新的缓存更新机制,增强了DNS缓存的一致性。

  三、面临的主要安全管理问题

  由于DNS系统本身的复杂性和全球化分布的特点,以及与DNS相关的各种新技术的研究和逐步部署,DNS系统的管理问题正面临着越来越大的挑战。

  第一,由配置错误造成的DNS可用性(availability)对DNS管理带来很大挑战。大量的DNS配置错误没有得到及时纠正和有效管理。一些研究表明,全球商业站点(例如.COM站点)中70%的DNS服务器中有配置错误。有学者通过测量一个根DNS服务器和3个普通DNS服务器,发现DNS软件实现中存在大量缺陷(Bug),这些缺陷和错误配置占据了DNS流量的主要部分。Brownlee等收集并分析了13个根DNS服务器中的F根服务器(f.root- servers.net),发现这些缺陷仍然存在,并且60%~85%的查询来自同一主机。超过14%的查询不符合DNS规范。Broido等通过观察顶级DNS服务器中大量的异常DNS更新报文,发现绝大多数是由微软的DHCP/DNS服务器的缺省配置造成的。按照日本互联网信息中心JPNIC在文献发布的报告,在JP zones(日本国家域名区域) 内没有正确配置的DNS服务器占总数的37.9%。目前,使用带缺陷的DNS软件版本,不正确的动态更新和DNS转发、“跛脚”服务器(即Lame server,指不能确信其是否具有某域名区域授权的DNS服务器) 的大量存在等一系列问题已经对Internet的稳定运行造成了严重威胁。

  第二,由缺陷软件带来的安全性问题(security)也对DNS管理带来极大困扰。带缺陷的软件版本会导致严重的安全问题。例如转发攻击和域名劫持(DNS- spoofing)。域名劫持是指黑客利用DNS服务器使用的软件的漏洞,通过攻击和劫持大量DNS服务器,可以在不直接入侵的情况下,远程篡改DNS服务器中的服务数据,导致用户访问带有窃密木马的仿冒页面,从而造成严重的安全问题。如果域名劫持发生在运营商提供的公共DNS上,其危害更加严重。据国家计算机网络应急技术处理协调中心报告,2007年11月就曾发生过一起针对某公司网站的域名劫持事件,涉及多台运营商提供的公共DNS,受影响用户范围十分广泛。目前不少常用的DNS服务器系统软件版本都存在着域名劫持的安全漏洞。例如,针对Bind 9的漏洞有CVE- 2007- 2926、CVE- 2007- 2930、CVE- 2007- 2228; 针对Bind 8 的漏洞有CVE- 2007- 2926、CVE- 2007- 2930;针对Windows DNS服务器的漏洞有CVE- 2007- 2228等。

  第三,随着DNS应用场景和范围不断扩大,迫切需要更加合理的规划,这对DNS的管理提出了更高的要求。传统的DNS服务器部署相对简单,由于只负责IP地址与域名的转换以及向上一级DNS系统的查询,往往采用单台服务器或一主一备两台标准DNS服务器即可。随着DNS应用的场景和范围不断扩大,同时也为了提高响应时间和均衡负载,许多站点的DNS系统结构已经变得越来越复杂。除了一些标准服务器外,还有大量的缓存服务器以及由多台服务器组成的服务器群。这就要求在设计和部署新的DNS系统时综合考虑应用的场景和范围,按照性能价格比、安全性等多种因素进行合理的规划和管理,以确定相应的资源配置和管理策略。同时,随着私有网络、Ad hoc网络、传感器网络等多种形式的边缘网络的出现,这些边缘网络的名字空间与互联网的名字空间并不完全一致,在一定程度上破坏了互联网原有的域名空间结构,给DNS的管理带来了困难。

  第四,DNS功能的可扩展性(scalability)对DNS管理提出了新的挑战。近年来,围绕DNS的各种新技术和新应用的研究发展迅速,DNS功能得到不断扩展。一些新技术,如下一代互联网核心协议IPv6、支持中文、日文等非英语国家语言的多语种域名、IETF的DNS安全协议DNSSEC等在DNS系统中开始逐步部署。为了支持这些新技术,DNS功能在原来基础上进行了扩充。为了支持IPv6,需要增加新的资源记录RR(Resource Record)类型“AAAA”。目前,主流的DNS服务器系统软件已经支持IPv6,越来越多的IPv6地址被部署到实际运行的DNS服务器中。2008年2月,管理Internet地址与号码分配机构ICANN宣布,负责整个Internet根域名系统的13个根DNS(root DNS)中有6个开始正式部署IPv6。同时,DNS应用范围也得到了新的拓展,例如,利用DNS中域名与多个IP地址的映射关系实现服务器的负载均衡、利用DNS动态更新技术及其增强版实现主机与用户的移动性,利用DNS区域文件(zone file)中注册信息应对垃圾邮件、利用DNS中TXT资源记录实施发送方策略框架SPF(Sender Policy Framework) 验证发送电子邮件地址真实性等。这些新技术和新应用的不断发展,对DNS系统的管理提出了重要而迫切的新问题。例如在IPv4和IPv6共存及多语种域名环境下的DNS管理配置问题、由标准规范定义的DNS核心功能与本地自定义的DNS扩展功能的互操作管理等问题。

  四、结束语

  由于DNS系统本身的复杂性和全球化分布的特点,以及与DNS相关的各种新技术的研究和逐步部署,DNS系统的管理问题正面临着越来越大的挑战。如何应对这些挑战,是摆在我们面前的重要问题。(来源:《数据通信》)

友情链接

FriendLink