Zone walking

from Wikipedia, the free encyclopedia

Zone walking (also DNSSEC walking or zone enumeration ) is a procedure with which attackers can read out the complete content of DNSSEC signed DNS zones . This allows confidential data (e.g. customer lists) and security-relevant information (e.g. IP addresses of servers) to be disclosed.

functionality

When a zone is signed, DNSSEC automatically chains all labels in a ring in alphabetical order using NSEC Resource Records . Example zone example.de:

    example.de. NSEC name1
    name1       NSEC name2
    name2       NSEC name5
    name5       NSEC example.de.

On the left is the label (canonical name) and on the right is a reference to the next lexigraphic label.

This can be used to prove the absence of names. For example, if a client asks for the non- existing name name3 , the name server replies with the NSEC entry name2 NSEC name5, indicating that there is no further entry between name2 and name5 .

An attacker makes use of this concatenation by starting with the first name of a zone (this is always the name of the zone itself) going through the chain with successive queries. With this technically quite simple process, he can read out the entire zone content within a few seconds.

Defense

NSEC3

In order to make zone walking more difficult, an alternative to NSEC was introduced with NSEC3 , which does not display names in plain text, but as a cryptographic hash value . NSEC3 makes zone walking more difficult, but cannot completely prevent zone walking by attacking the hash function.

Minimal coverage with online signing

Another method is the use of NSEC records with minimal coverage, as proposed in RFC 4470 , which are dynamically generated. Instead of referring to names that actually exist, the NSEC records point to entries that do not exist. This procedure requires online signing, i.e. the generation of DNSSEC signatures at the time of the response. This has considerable disadvantages, since it significantly increases the computing load on the server and requires the constant presence of the private zone key with which the dynamically generated NSEC records are signed. In contrast to NSEC3, however, it has the advantage that, when used correctly, it prevents zone walking.

The principle of minimum coverage is also possible with NSEC3 and is known as NSEC3 White Lies ( English white lie , harmless lie ). It offers the same advantages and disadvantages as its counterpart with dynamically generated NSEC records.

NSEC5

Another method has been proposed under the name NSEC5 . Instead of a hash function as with NSEC3, NSEC5 uses an asymmetric cryptosystem . This corresponds to the use of online signing with the associated performance disadvantages. However, NSEC5 uses its own key pair for this purpose, so that the private zone key does not have to be kept on the DNS server. As with online signing with NSEC or NSEC3, zone walking is completely prevented.

Individual evidence

  1. Matthäus Wander, Lorenz Schwittmann, Christopher Boelmann, Torben Weis: GPU-based NSEC3 Hash Breaking . In: 2014 IEEE 13th International Symposium on Network Computing and Applications (NCA) . IEEE, 2014, ISBN 978-1-4799-5393-6 , doi: 10.1109 / NCA.2014.27 . Lecture: Slides .
  2. R. Gieben, W. Mekking: RFC 7129 Appendix B - Online Signing: NSEC3 White Lies . IETF. February 2014. Retrieved January 11, 2020.
  3. Sharon Goldberg, Moni Naor, Dimitrios Papadopoulos, Leonid Reyzin, Sachin Vasant, Asaf Ziv: NSEC5: Provably Preventing DNSSEC Zone Enumeration . In: NDSS Symposium 2015 . Internet Society, 2015, doi: 10.14722 / ndss.2015.23211 . Lecture: Slides .