域名系统安全扩展

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

概述

编辑

域名系统(DNS)的原始设计不包含任何安全细节;相反的,它被设计成一个可扩增的分布式系统(Distributed system)。域名系统安全扩展(DNSSEC)尝试在其中添加安全性,同时仍保持向后兼容性。 RFC 3833记录了DNS的一些已知威胁以及DNSSEC如何应对这些威胁。

DNSSEC旨在保护应用程序(以及服务这些应用程序的缓存解析器)免受伪造或不当操纵的DNS数据所造成的影响(例如域名服务器缓存污染的数据)。来自DNSSEC保护区的所有答案都经过数字签名。通过检验数字签名,DNS解析器可以核查信息是否与区域所有者发布的信息相同(未修改和完整),并确系实际负责的DNS服务器所提供。虽然保护IP地址的正确性是许多用户关注DNSSEC的直接课题,DNSSEC还可以保护DNS中发布的其他任何数据:包括文本记录(TXT)和邮件交换记录(MX),并可用于引导发布引用存储在DNS中的加密证书的其他安全系统:例如证书记录(CERT记录,RFC 4398),SSH指纹(SSHFP,RFC 4255),IPSec公钥(IPSECKEY,RFC 4025)和TLS信任锚英语Trust anchor(TLSA,RFC 6698)。

DNSSEC 新增的资源记录

编辑

DNSSEC新增的记录如下[2]

即资源记录签名(英语:Resource Record Signature),资源记录除了A和AAAA之外,也包括DNSKEY、DS、NSEC等记录,RRSIG用于存放各个资源记录的签名,包括

  • 算法类型
  • 标签 (泛解析中原先 RRSIG 记录的名称)
  • 原 TTL 大小
  • 签名失效时间
  • 签名签署时间
  • Key 标签 (用来迅速判断应该用那个 DNSKEY 记录来验证的一个数值)
  • 签名名称 (用于验证该签名的 DNSKEY 名称)
  • 签名

DNSKEY

编辑

该记录用于存放用于检查 RRSIG 的公钥。其包括

  • 标识符 (Zone Key (DNSSEC密钥集) 以及 Secure Entry Point (KSK和简单密钥集))
  • 协议 (固定值3 向下兼容)
  • 算法类型
  • 公钥内容

即委派签名者(英语:Deligated Signer),该记录用于存放 DNSKEY 中公钥的散列值 ,包括

  • Key 标签:用来判断应该用哪个 DNSKEY 记录进行验证的一个数值
  • 算法类型:常见的有RSASHA1、RSASHA256、ECDSAP256SHA256,具体可参考附录“算法类型列表”
  • 摘要类型:创建摘要值的加密散列算法,主要使用SHA256,具体可参考附录“摘要类型列表”
  • 摘要内容: 一串散列数据,由DNSKEY经由摘要类型算法得出

NSEC和NSEC3

编辑

即下一个安全(英语:Next Secure)记录,用于明确表示特定域名的记录不存在。

CDNSKEY和CDS

编辑

用于请求对父区域中的 DS 记录进行更新的子区域。

部署

编辑

2010年7月18日,根域名服务器(root-servers.net)已经完成DNSSEC签名[3]

目前已部署在.com.net.org.int.edu.mil.gov等顶级域(gTLD),以及部分国家和地区顶级域(ccTLD[4]

参见

编辑

外部链接

编辑
  1. ^ DNSSEC安全技術簡介. [2013-08-15]. (原始内容存档于2012-12-20). 
  2. ^ DNSSEC 如何运作. www.cloudflare.com. [2021-10-24]. (原始内容存档于2022-03-25) (中文(中国大陆)). 
  3. ^ available from IANA. [2013-07-19]. (原始内容存档于2017-08-10). 
  4. ^ DNSSEC部署情形参见维基英文版List_of_Internet_top-level_domains(此英文条目对应之中文版本无此内容)

组织和网站

编辑

标准文档

编辑
  • RFC 2535 Domain Name System Security Extensions
  • RFC 3833 A Threat Analysis of the Domain Name System
  • RFC 4033 DNS Security Introduction and Requirements (DNSSEC-bis)
  • RFC 4034 Resource Records for the DNS Security Extensions (DNSSEC-bis)
  • RFC 4035 Protocol Modifications for the DNS Security Extensions (DNSSEC-bis)
  • RFC 4398 Storing Certificates in the Domain Name System (DNS)
  • RFC 4470 Minimally Covering NSEC Records and DNSSEC On-line Signing
  • RFC 4509 Use of SHA-256 in DNSSEC Delegation Signer (DS) Resource Records (RRs)
  • RFC 5155 DNSSEC Hashed Authenticated Denial of Existence
  • RFC 6781 DNSSEC Operational Practices, Version 2

其他文档

编辑