保护网站访问安全--阿里云DNS正式支持DNSSEC

近日,云解析DNS正式发布( Name)功能 。功能的发布,意味着云解析DNS在保护网站访问安全的方面,又前进了一大步 。那到底什么是,这项技术的给我们带来了什么好处呢 。接下来我们一一道来 。
DNS的工作原理
在讲这个功能之前,让我们先来看看DNS的工作原理 。我们每个用户,在进行网页浏览的时候,都会输入域名,来打开相应的网页,比如要打开淘宝,我们在浏览器中输入,浏览器就会将淘宝的页面呈到我们的眼前 。当电脑在访问某一个页面的时候,是需要指定IP地址才能进行访问,那么输入域名后,到页面展示中间,发生了一些什么事情呢?首先会去本地DNS服务器去查询,是否存在这个域名的解析记录,如果能查到,那么就直接将结果返回给用户了 。可是如果没有查到怎么办,就需要本地DNS进行递归的流程,依次去根服务器、.com服务器、服务器、服务器上查询,最终获得 的IP地址,从而浏览器可以展示出淘宝页面 。
DNS并非无懈可击 (1)递归链路有被劫持的风险
通过工作原理中的例子我们可以看出,在进行一次递归查询的时候,需要对链路上每一个权威服务器进行请求,接收到应答后再去下一个权威服务器进行查询 。有攻击者利用了其中的漏洞:当本地DNS去请求某一个权威DNS服务器的时候,中间的请求很容易就被攻击者冒充或伪造,返回给本地DNS一个错误的解析结果 。而由于没有验证手段,此时本地DNS就会拿到错误的解析结果去进行后续的解析,从而网站被重定向到可能有潜在危险的恶意网站 。
(2)Local DNS有被投毒的风险
递归解析器可以从权威服务器中接收到DNS数据,并将其进行缓存,当有后续请求时,可以使用缓存数据进行应答,从而加速解析流程 。当缓存数据被攻击者模拟权威DNS响应而被递归解析器接收后,缓存中的数据就会变为攻击者的数据 。那么后续再进行解析的时候,就都是具有危险性的解析结果了 。比如此地址指向了一个钓鱼网站,用户就会在在不知情的情况下丢失了用户密码,给用户和企业带来损失 。
如何来确定解析结果是真正权威的结果呢?技术顺势而生,有效保障了解析结果的正确性 。
什么是? (1)的介绍
DNS安全扩展是工程任务组(IETF)提供的一系列DNS安全认证的机制 。它是DNS提供给DNS客户端的DNS数据来源进行认证,保证Local DNS()和权威之间的数据不被篡改(中间人攻击) 。当解析数据被篡改后,开启功能的域名,会对获取到的解析数据上的签名进行验签,在验签的过程中,如果失败,则说明获取的解析数据是异常的,则不会使用此解析结果,从而保证用户拿到的解析结果一定是真实可信的 。
(2)国内的使用情况
的提议在2009年12月1日宣布,目前正在逐渐普及起来 。根据亚太网络信息中心(APNIC)提供的数据显示,全球验证目前为 24.12% 。如下图白框内所示,在我国目前只有1.03%的域名使用了功能,如今阿里云云解析DNS已支持了功能,可以为广大用户提供更加稳定的域名解析服务 。

保护网站访问安全--阿里云DNS正式支持DNSSEC

文章插图
图1. 我国占比图
(3)的原理介绍
的记录类型
? RRSIG(): RRset的加密签名
? (DNSKey): 公钥,包含KSK(KeyKey)和ZSK(ZoneKey)公钥两种
? DS( ): KSK公钥的摘要
? NSEC/NSEC3(Next ): 用来证明否定应答(no name error, no data error, etc.)
? 和CDS: 子zone用来自动更新在父zone中的DS记录
一个域名,多个相同类型的资源记录的集合成为资源记录集(RRset) ,RRset是DNS传输的基本单元 。我们先了解下RRset(Set)的原理 。