root.comexample.comA recordchain of trust verified by signatures

DNSSEC

11 Min. gelesenKryptographie

DNS, das System, das Namen wie example.com in IP-Adressen übersetzt, wurde 1983 ohne Authentifizierung entwickelt. Jede Antwort, die angeblich vom autorisierenden Server einer Domäne stammte, wurde akzeptiert. DNSSEC behebt dieses Problem, indem an jeden DNS-Eintrag kryptografische Signaturen angehängt werden, sodass Clients überprüfen können, ob die Antwort nicht manipuliert wurde. Die Akzeptanz verlief langsam, aber dort, wo es eingesetzt wird, funktioniert es.

Der vollständige Artikeltext ist unten in englischer Sprache aufgeführt.

DNSSEC (Domain Name System Security Extensions) fügt DNS-Einträgen kryptografische Signaturen hinzu, sodass Clients die Authentizität und Integrität von DNS-Antworten überprüfen können. Ohne DNSSEC kann ein Netzwerkangreifer DNS-Antworten fälschen und den Datenverkehr auf vom Angreifer kontrollierte Server umleiten – die Grundlage für DNS-Hijacking. Mit DNSSEC bestehen gefälschte Antworten die Signaturüberprüfung nicht und werden abgelehnt.

XPLZ6 Jeder signierte Datensatz verfügt über einen entsprechenden RRSIG.
  • DNSKEY – der öffentliche Schlüssel, der zur Überprüfung von RRSIG-Signaturen für eine Zone verwendet wird. Stellt die Vertrauenskette her.
  • NSEC/NSEC3 – beweist, dass in der Zone KEIN Name vorhanden ist. Notwendig, da „Dieser Name existiert nicht“ auch eine Antwort ist, die authentifiziert werden muss.
  • XPLZ28 Ruft die IP plus eine RRSIG-Signatur ab.
  • Resolver fragt example.com nach seinem DNSKEY (dem Zonensignaturschlüssel, ZSK) ab example.com.
  • Der DS-Eintrag enthält einen Hash des DNSKEYs von example.com, signiert mit den Schlüsseln von .com.
  • Dies führt eine Rekursion bis zum Stamm durch, dessen öffentlicher Schlüssel in Resolvern fest codiert ist.
  • Das Endergebnis: eine verifizierte Kette vom Stamm über .com bis zu example.com, die beim ursprünglichen A-Eintrag endet. Jede Manipulation bei jedem Schritt wird erkannt.

    XPLZ48 Wird häufig gewechselt (von Monaten bis zu einem Jahr), da er häufig verwendet wird.
  • Schlüsselsignaturschlüssel (KSK). Signiert den ZSK. Wird selten gedreht, da es sich um den Ankerpunkt handelt, auf den die übergeordnete Zone verweist. Für die Rotation ist eine Abstimmung mit dem Registrar erforderlich, um den DS-Eintrag zu aktualisieren.
  • Der Root-KSK wird etwa alle fünf Jahre rotiert. Die Rotation im Jahr 2017 war die erste überhaupt und erforderte jahrelange Vorbereitung, um sicherzustellen, dass Resolver weltweit über den neuen öffentlichen Schlüssel verfügten. .com, .org, .net, .gov, die meisten Ländercodes.

  • XPLZ74 8.8.8.8, 9.9.9.9) validieren DNSSEC. Die meisten ISP-Resolver tun dies auch. Diejenigen, die nicht einfach alles zurückgeben, was sie erhalten, ohne Überprüfung. Sie prüfen die Unterschriften nicht selbst. Einige Anwendungen und DNS-über-HTTPS-Implementierungen führen eine clientseitige Validierung durch.
  • XPLZ86 Eine Fehlkonfiguration zerstört die Domäne vollständig (jeder Resolver gibt SERVFAIL zurück).
  • Größere DNS-Antworten. Signierte Antworten sind um ein Vielfaches größer als nicht signierte. Die alte DNS-Infrastruktur ging davon aus, dass Antworten in einzelne UDP-Pakete passen würden; Bei signierten Antworten ist dies häufig nicht der Fall, sodass ein TCP-Fallback erforderlich ist. Die meisten Benutzer bemerken nicht, wann DNSSEC vorhanden ist oder nicht.
  • Bessere Alternativen für einige Anwendungsfälle. XPLZ105 DNS

    Die beiden lösen überlappende, aber unterschiedliche Probleme:

    • DNSSEC beweist, dass die Antwort authentisch und unverfälscht ist. Die Abfrage selbst ist weiterhin für das Netzwerk sichtbar.
    • XPLZ5 Blenden Sie die Abfrage während der Übertragung aus und überprüfen Sie die Antwort kryptografisch. Cloudflare 1.1.1.1 und Google 8.8.8.8 über DoH bieten heute beides. DANE veröffentlicht Fingerabdrücke von TLS-Zertifikaten im DNS, gesichert durch DNSSEC. Ein Browser kann das Zertifikat einer Website überprüfen, indem er DNS abfragt, anstatt sich ausschließlich auf Zertifizierungsstellen zu verlassen. Die Akzeptanz ist begrenzt (wird aufgrund der Browser-Implementierungspolitik hauptsächlich für SMTP und nicht für HTTPS verwendet). Online-Tools wie DNSSEC-Analyzer (Verisign Labs) zeigen die gesamte Vertrauenskette visuell an. Browsererweiterungen können den DNSSEC-Validierungsstatus pro Seite kennzeichnen.

  • Häufig gestellte Fragen

    Benötigt meine Domain DNSSEC?
    Nicht unbedingt. Der Schutz, den es bietet, ist sinnvoll, aber nur teilweise. Bei den meisten persönlichen Websites überwiegen die Betriebskosten für die Ausführung von DNSSEC den Nutzen. Für Websites, die Finanztransaktionen, Regierungsdienste oder hochwertige Ziele abwickeln, fügt DNSSEC plus DANE eine lohnende Verteidigungsebene hinzu.
    Wird DNSSEC alle DNS-Angriffe verhindern?
    Nein. DNSSEC verhindert die Manipulation von DNS-Antworten auf der Leitung, verhindert jedoch nicht: einen böswilligen autorisierenden Server mit gültigen Signaturen, die Übernahme des Registrarkontos (der Angreifer veröffentlicht neue Schlüssel) oder Angriffe gegen die Ziel-IP nach einer legitimen DNS-Auflösung. Es ist eine Schicht, keine vollständige Lösung.
    Warum prüft mein Browser DNSSEC nicht?
    Browser delegieren die DNSSEC-Validierung an den konfigurierten Resolver. Wenn der Resolver fehlerhafte Antworten validiert und ablehnt, sieht der Browser sie nie. Es gab Vorschläge für eine browserseitige Validierung, die jedoch keine Akzeptanz fanden. Verwenden Sie einen validierenden Resolver (1.1.1.1, 9.9.9.9) und Sie profitieren von den Vorteilen von DNSSEC.
    Was passiert, wenn bei einer DNSSEC-signierten Domain ein Problem auftritt?
    Die Validierung schlägt fehl und die meisten Resolver geben SERVFAIL zurück. Die Domain scheint nicht erreichbar zu sein. Dies ist in der Produktion passiert (der Ausfall von HBO Max im Jahr 2021 war eine DNSSEC-Fehlkonfiguration). Der Kompromiss: Wenn DNSSEC funktioniert, ist es sicher; Wenn es kaputt geht, bricht es laut.
    Ist DNSSEC dasselbe wie DNS über HTTPS?
    Nein. DNSSEC fügt DNS-Antworten Signaturen hinzu, um die Authentizität zu überprüfen. DNS über HTTPS (DoH) verschlüsselt DNS-Abfragen während der Übertragung. Sie ergänzen sich und werden am besten zusammen verwendet.
    DNSSEC erklärt: Hinzufügen kryptografischer Signaturen zu DNS-Suchen