DNS 解析
文档目录
    加载中
服务与支持 DNS 解析 DNSSEC 域名系统安全扩展

DNSSEC 域名系统安全扩展

什么是 DNSSEC 域名系统安全扩展

域名系统安全扩展(Domain Name System Security Extensions,简称:DNSSEC)是 Internet 工程任务组 (IETF)的对确保由域名系统 (DNS)中提供的关于互联网协议 (IP)网络使用特定类型的信息规格套件。它是对D NS 提供给 DNS 客户端(解析器)的 DNS 数据来源进行认证,并验证不存在性和校验数据完整性验证,但不提供或机密性和可用性。

为什么使用 DNSSEC

DNS 设计于上世纪 80 年代,当时互联网规模小得多,安全性并非首要设计考虑因素。因此,当递归解析器向权威域名服务器发送查询时,解析器无法验证响应真实性。解析器仅可检查做出响应的 IP 地址与解析器发送初始查询的 IP 地址是否相同。但是,依赖响应对应的源 IP 地址并非强验证机制,因为 DNS 响应数据包的源 IP 地址很容易仿冒或伪造。鉴于最初设计 DNS 时,解析器无法轻易识别某一项查询的仿冒响应。攻击者很容易冒充看似来自权威服务器的响应,继而伪装成解析器最初查询的权威服务器。换言之,攻击者可以悄无声息地将用户重定向至潜在恶意网站。

这个问题对应的解决方案称为 DNSSEC 协议。通过提供身份验证,在 DNS 之上添加了一个信任层。

DNSSEC 运作方式概述

DNSSEC 采用基于公共密钥加密的数字签名,从而增强 DNS 验证强度。DNSSEC 并非对 DNS 查询和响应本身进行加密签名,而是由数据所有者对 DNS 数据自身进行签名。

每一个 DNS 区均包含一个公私密钥对。DNS 区所有者使用该区域的私钥对区域内的 DNS 数据进行签名,为这些数据生成数字签名。顾名思义,"私钥"是指 DNS 区所有者会对这些密钥材料保密。但是,该区域的公钥则在区域内公开发布,供全体用户检索。凡在区域内查找数据的递归解析器,还必需检索区域公钥,从而使用公钥验证 DNS 数据的真实性。解析器确认检索到的 DNS 数据的数字签名是否有效。如果有效,证明 DNS 数据合法,则将 DNS 数据返回给用户。如果签名未通过验证,解析器会假设发生攻击,丢弃数据并向用户返回错误。

最近更新于 2021-01-28 11:41