Dieses Dokument soll mit der Beschreibung der neuen Resource Records eine erste Einführung in das Thema DNSSEC geben.
Neue Resource Records in DNSSEC
DNSKEY mit KSK und ZSK
KSK steht für Key Signing Key und wird ausschließlich für das Signieren von Keys in einer Zone verwendet. Für jede Zone gibt es mindestens ein KSK. Mit dem KSK werden die Zone Signing Keys (ZSK), aber auch neue KSKs signiert. Da der KSK nur wenige Daten signiert, muss er nicht so häufig ausgetauscht werden (Lebensdauer im Bereich von Jahren). Beim KSK muss es sich um einen kryptographisch starken Schlüssel handeln (z.B. 2048bit).
Der ZSK wird verwendet für die Signierung sämtlicher Resource Records (z.B. SOA-, NS-, A-, MX-Record) und zusätzlich auch der Schlüssel. Da sehr viele kryptographische Operationen (hauptsächlich Erstellung und Prüfung von Signaturen) mit diesem Schlüssel von Nameserver und allen DNS-Resolvern durchgeführt werden, ist dieser Schlüssel aus Effizientsgründen kryptographisch schwächer als der KSK (z.B. 1024bit). Daher muss dieser Schlüssel auch wesentlich häufiger als der KSK ausgetauscht werden (Lebensdauer im Bereich von Monaten).
Der öffentliche Teil des KSK- und des ZSK-Schlüsselpaars wird als neuer Resource Record DNSKEY in der Zone zur Verfügung gestellt.
Hier der DNS-Schlüssel der Zone bund.de:
Der kürzere, mit dem Parameter 256 markierte DNSKEY-Eintrag stellt den ZSK und der andere den KSK dar.
RRSIG
Der wichtigste und am häufigsten vorkommende, neue Resource Record in DNSSEC ist RRSIG. Dieser Eintrag enthält die digitale Signatur, die bei der Signierung eines Resource Records mit einem der DNSKEYs entstanden ist. Dabei wird mit dem KSK nur die Schlüssel (DNSKEY-Records) und mit dem ZSK die Schlüssel und alle restlichen Resource Records signiert.

Quelle des Bildes (Seite 21): http://www.slideshare.net/dyninc/introduction-to-dnssec![]()
Die Signierung der Resource Records ist der elementare Bestandteil von DNSSEC. Mit diesen Signaturen kann geprüft werden, ob der Resource Record vom richtigen Schlüssel, also vom richtigen Schlüsselbesitzer sprich dem Zonenbesitzer erstellt wurde und somit gültig und nicht gefälscht ist.
Hier der obige DNS-Abruf über die DNSKEYs mit den dazugehörigen Signaturen:
Mit der Query Option +dnssec werden alle verfügbaren Signaturen des abgefragten Resource Records (in diesem Fall DNSKEY) mit ausgeliefert. Man sieht, dass jeder DNSKEY-Record eine jeweilige Signatur besitzt.
Fragen wir nun den A-Record für www.bund.de ab:
DS
DS steht für Delegation Signer und ist ein weiterer dazu gekommener Resource Record in DNSSEC. Mit diesen Einträgen wird eine Vertrauenskette im DNS-System aufgebaut, die von den Root-Servern bis zum verantwortlichen DNS-Server einer Zone verläuft. Dabei ist in jedem DNS-Server ein DS-Record für die darunter befindliche Zone eingetragen. Ein solche Vertrauenskette kann wie folgt aussehen:
- In den Systemen, die eine Namensauflösung durchführen, den DNS-Resolvern, ist der KSK der Root-DNS-Server fest als vertrauensvoller Schlüssel hinterlegt.
- In den Root-DNS-Servern ist ein DS-Record für die Zone "de" eingetragen. Damit wird dem KSK der Zone "de" vertraut.
- Im "de"-DNS-Server (also den DENIC-Servern) ist ein DS-Record für die Zone "bund.de" eingetragen. Damit wird dem KSK der Zone "bund.de" vertraut.
Hier noch einmal schematisch:

Quelle des Bildes (Seite 25): http://www.slideshare.net/dyninc/introduction-to-dnssec![]()
Der DS-Record enthält einen kryptographischen, digitalen Fingerabdruck (Fingerprint) des KSKs der darunter befindlichen Zone und stellt somit die Gültigkeit des KSKs an dieser Stelle in der Vertrauenskette sicher. Da in den DNS-Servern der Top-Level-Domains für sämtliche Domains DS-Records für die jeweilig verantwortlichen DNS-Server eingetragen sein müssen, wurde bei den DS-Records statt mit weiteren langen Signaturen zu arbeiten die kürzeren Fingerprints verwendet.
DNSSEC ist bisher noch in nur wenigen TLD-DNS-Servern produktiv. Schweden war Vorreiter und hat schon sehr früh auf DNSSEC umgestellt. Die schwedische Webseite iis.se soll daher als erstes Beispiel für DS-Records verwendet werden:
DNSSEC ist in Deutschland noch nicht produktiv. Die DENIC hat aber eine spezielle Testumgebung für DNSSEC etabliert. Verwendet man die Hostnamen der DENIC-DNSSEC-Server
direkt, können auch jetzt schon DNSSEC-Tests durchgeführt werden. Hier die Abfrage des DS-Records für bund.de:
NSEC und NSEC3
Um auch das Nicht-Vorhandensein von DNS-Einträgen gegen Manipulationen zu sichern, wurde ein weiterer Resource Record namens NSEC eingeführt. Mit Hilfe diesem werden alle vorhandenen Einträge einer Zone alphabetisch geordnet ringförmig verkettet und mit RRSIG Records signiert, wobei der letzte Eintrag wieder auf den ersten zeigt. Beispielhafte Einträge im Zonenfile:
Wird nun delta.domain.de abgefragt, kann der DNS-Server mit einem vom ZSK signierten NSEC Eintrag beweisen, dass zwischen bravo und zulu kein weiterer Eintrag existiert.
Live-Demo mit einer nicht exisitierenden Schweden-Domain (NSEC):
Mit der korrekt signierten Antwort "techstil.se. 7200 IN NSEC techstrat.se. NS RRSIG NSEC" wird belegt, dass zwischen techstil.se und techstrat.se keine Domain existiert.
Ein Nachteil von NSEC ist, dass durch iteratives Abfragen der NSEC-Einträge alle Einträge einer DNS-Zone ermittelt werden kann. Daher wurde DNSSEC u.a. in diesem Punkt überarbeitet und NSEC3 eingeführt. NSEC3 arbeitet prinzipiell nach dem selben Verfahren mit dem Unterschied, dass die DNS-Einträge nicht im Klartext sondern als Hashes zurückgeliefert werden. Somit kann nur noch bestimmt werden, dass der angefragte Eintrag nicht existiert und nicht mehr welche Einträge als nächstes in der Zone definiert sind.
Live-Demo mit einer nicht existierenden uk-Domain (NSEC3):
Weitere Informationen
- Weitere Videos
von OpenDNSSEC
- Einführung in das Thema DNSSEC
von Heise - DNSSec Bereich
der DeNIC
Aktueller Stand
Die DNS-Root-Server wurden zwar schon auf DNSSEC umgestellt, jedoch sind die DNSKEYs noch nicht veröffentlicht (siehe Ausgabe):
UPDATE (16.07.2010):
Die Root-Server liefern jetzt gültige Schlüssel aus (siehe auch entsprechende Heise News
).
Viele DS-Records für Top-Level-Domains fehlen noch in den Root-DNS-Server:
Ausnahme bei .ORG:
Für die Domain pir.org lässt sich so schon die komplette DNSSEC-Vertrauenskette prüfen:
Schweden war mit einer der Vorreiter beim Ausrollen von DNSSEC. Sie haben aktuell 2 KSKs eingetragen:
Schweden verwendet noch NSEC, so dass man alle Zonen der TLD ".se" ermitteln kann:
Auch bei iis.se lassen sich alle Subdomains ermitteln:
Neben Schweden ist auch schon bei den TLDs ".org" und ".uk" DNSSEC ausgerollt. Beide verwenden das sichere NSEC3: