域名系統安全擴展

域名系統安全擴展(英語: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]

RRSIG

即資源記錄簽名(英語:Resource Record Signature),資源記錄除了A和AAAA之外,也包括DNSKEY、DS、NSEC等記錄,RRSIG用於存放各個資源記錄的簽名,包括

  • 算法類型
  • 標籤 (泛解析中原先 RRSIG 記錄的名稱)
  • 原 TTL 大小
  • 簽名失效時間
  • 簽名簽署時間
  • Key 標籤 (用來迅速判斷應該用那個 DNSKEY 記錄來驗證的一個數值)
  • 簽名名稱 (用於驗證該簽名的 DNSKEY 名稱)
  • 簽名

DNSKEY

該記錄用於存放用於檢查 RRSIG 的公鑰。其包括

  • 標識符 (Zone Key (DNSSEC密鑰集) 以及 Secure Entry Point (KSK和簡單密鑰集))
  • 協議 (固定值3 向下兼容)
  • 算法類型
  • 公鑰內容

DS

即委派簽名者(英語: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

其他文檔