Paper 2014/582 Original: eprint.iacr.org/2014/582 ↗

NSEC5: Provably Preventing DNSSEC Zone Enumeration

Sharon Goldberg
Moni Naor
Dimitrios Papadopoulos
Leonid Reyzin
Sachin Vasant
Asaf Ziv
Abstract

We use cryptographic techniques to study zone enumeration in DNSSEC. DNSSEC is designed to prevent attackers from tampering with domain name system (DNS) messages. The cryptographic machinery used in DNSSEC, however, also creates a new vulnerability, zone enumeration, enabling an adversary to use a small number of online DNSSEC queries combined with offline dictionary attacks to learn which domain names are present or absent in a DNS zone. We prove that the current DNSSEC standard, with NSEC and NSEC3 records, inherently suffers from zone enumeration: specifically, we show that security against (1) attackers that tamper with DNS messages and (2) privacy against zone enumeration cannot be satisfied simultaneously, unless the DNSSEC nameserver performs online public-key cryptographic operations. We then propose a new construction that uses online public-key cryptography to solve the problem of DNSSEC zone enumeration. NSEC5 can be thought of as a variant of NSEC3, in which the unkeyed hash function is replaced with a deterministic RSA-based keyed hashing scheme. With NSEC5, a zone remains protected against network attackers and compromised nameservers even if the secret NSEC5-hashing key is compromised; leaking the NSEC5-hashing key only harms privacy against zone enumeration, effectively downgrading the security of NSEC5 back to that of the current DNSSEC standard (with NSEC3).

Metadata
Available format(s)
PDF
Category
Cryptographic protocols
Publication info
Preprint.
History
2014-12-06: last updated
2014-07-30: published
Short URL
https://ia.cr/2014/582
License
https://creativecommons.org/licenses/by/4.0/

BibTeX

@misc{cryptoeprint:2014/582,
      author = {Sharon Goldberg and Moni Naor and Dimitrios Papadopoulos and Leonid Reyzin and Sachin Vasant and Asaf Ziv},
      title = {NSEC5: Provably Preventing DNSSEC Zone Enumeration},
      howpublished = {Cryptology {ePrint} Archive, Paper 2014/582},
      year = {2014},
      url = {https://eprint.iacr.org/2014/582}
}
Note: In order to protect the privacy of readers, this archive does not use cookies or embedded third party content.