Skip to content

DNSSEC – Domain Name System Security Extensions 🔐

Einführung

DNSSEC (Domain Name System Security Extensions) ist eine Erweiterung des Domain Name Systems (DNS), die der Authentifizierung von DNS-Antworten dient. Ziel ist es, die Integrität und Authentizität der über DNS gelieferten Informationen sicherzustellen – ein kritischer Bestandteil zur Vermeidung von DNS-Spoofing und Cache Poisoning.


Warum DNSSEC? 🤔

Das klassische DNS ist nicht signiert, d.h. jeder DNS-Resolver kann durch manipulierte Antworten fehlgeleitet werden. Ein Angreifer könnte beispielsweise die IP-Adresse einer legitimen Website durch eine eigene ersetzen.

DNSSEC setzt an dieser Schwachstelle an: Antworten werden digital signiert. Ein Client kann so verifizieren, dass die Antwort echt und unverändert ist.


Funktionsweise von DNSSEC ⚙️

1. Signierung der Zonendaten

Jede DNS-Zone, die DNSSEC unterstützt, generiert ein Schlüsselpaar: - ZSK (Zone Signing Key): Signiert die DNS-Daten. - KSK (Key Signing Key): Signiert den öffentlichen ZSK.

Die Signatur erfolgt mit einem privaten Schlüssel. Die öffentlichen Schlüssel werden via DNS veröffentlicht.

2. Chain of Trust 🔗

Die Vertrauenskette beginnt bei der Root-Zone: - Die Root-Zone signiert ihre DNS-Daten. - TLDs (z.B. .ch, .com, .org) haben DS-Einträge (Delegation Signer), die in der übergeordneten Zone gespeichert sind. - So entsteht eine überprüfbare Kette bis zur autoritativen Zone der gewünschten Domain.

3. Validierung beim Resolver

Ein DNS-Resolver mit aktivem DNSSEC prüft: - Ob eine Signatur vorhanden ist (RRSIG-Record), - ob der öffentliche Schlüssel stimmt (DNSKEY-Record), - und ob die Kette zur Root-Zone verifizierbar ist (DS-Record).


Voraussetzungen für den Einsatz von DNSSEC ✅

  • Domain: Muss bei einer Registry registriert sein, die DNSSEC unterstützt.
  • DNS-Provider: Muss DNSSEC unterstützen (z.B. für Signierung und Schlüsselpflege).
  • Nameserver: Müssen in der Lage sein, DNSSEC-Daten zu signieren und auszuliefern.
  • Registrar: Muss das Hochladen des DS-Records ermöglichen.
  • Resolver/Client: Muss DNSSEC-fähig sein, um die Signaturen zu validieren.

DNSSEC-Records 📄

Record-Typ Bedeutung
RRSIG Signatur über einen Datensatz
DNSKEY Öffentlicher Schlüssel
DS Delegation Signer – zeigt auf KSK der Subdomain
NSEC / NSEC3 Existenznachweis für nicht vorhandene Records
CDNSKEY / CDS Für automatische Schlüssel-Rollover an Registrare

Vorteile von DNSSEC ✅

  • Schützt vor DNS-Spoofing und Cache Poisoning
  • Gewährleistet Authentizität und Integrität von DNS-Daten
  • Vertrauenswürdige Grundlage für weitere Sicherheitsmechanismen (z.B. DANE für E-Mail)

Herausforderungen und Risiken ⚠️

  • Höhere Komplexität bei der DNS-Zonenverwaltung
  • Risiko eines Zone-Ausfalls, wenn Signaturen oder Schlüssel falsch gehandhabt werden
  • Zusätzliche Anforderungen an DNS-Resolver
  • Nicht alle Clients und Systeme unterstützen DNSSEC (noch) zuverlässig

mDNS und DNSSEC ❌

Multicast DNS (mDNS) – bekannt z.B. durch Bonjour / zeroconf / .local – unterstützt kein DNSSEC, da es kein hierarchisches Modell gibt und keine zentrale Signierung erfolgt.


Fazit 🧠

DNSSEC ist ein essenzieller Baustein zur Absicherung der DNS-Infrastruktur. Gerade bei sicherheitskritischen Anwendungen oder Domains mit hohem Vertrauen sollte DNSSEC zwingend eingesetzt werden. Dennoch ist der Rollout mit Bedacht zu planen und sollte von erfahrenen Administratoren begleitet werden.