DNS-Zonentransfer-Schwachstelle

14 Jul 2020
14 Jul 2020

Was ist DNS-Zonentransfer?

DNS-Zonentransfer, auch bekannt als DNS-Abfragetyp AXFR, ist ein Prozess, bei dem ein DNS-Server eine Kopie eines Teils seiner Datenbank an einen anderen DNS-Server weitergibt. Der Teil der Datenbank, der repliziert wird, wird als Zone bezeichnet.

Ein Zonentransfer verwendet das Transmission Control Protocol (TCP) und hat die Form einer Client-Server-Transaktion.

Der Client, der einen Zonentransfer anfordert, kann ein Slave-Server oder ein sekundärer Server sein, der Daten von einem Master-Server oder einem primären Server anfordert.

Wann findet ein DNS-Zonentransfer in der Regel statt?

Ein Zonentransfer findet in der Regel statt, wenn Sie einen neuen DNS-Server als sekundären DNS-Server einrichten.

Ein vollständiger Transfer aller Zoneninformationen findet statt, um die bereits vorhandenen Einträge für diese Zone zu replizieren. Dies ist ein zeit- und ressourcenaufwändiger Prozess. Daher wurden inkrementelle DNS-Übertragungen entwickelt.

Bei der inkrementellen Übertragung ruft der Server nur die Ressourcendatensätze ab, die sich innerhalb einer Zone geändert haben, so dass er mit dem primären DNS-Server synchronisiert bleibt.

Bei der inkrementellen Übertragung wird der SOA-Datensatz verglichen, um festzustellen, ob Änderungen vorgenommen worden sind. Wenn der primäre Nameserver eine höhere SOA-Versionsnummer hat als der sekundäre Nameserver, wird ein Zonentransfer eingeleitet.

Wenn die Versionsnummer der SOA-Datensätze gleich ist, wird kein Zonentransfer eingeleitet.

Wenn Änderungen an der Zonendatei auf dem primären Nameserver vorgenommen wurden und eine DNS-Benachrichtigungsliste vorhanden ist, benachrichtigt der primäre Nameserver sofort den sekundären Nameserver, dass die Zonendatei geändert wurde. Er weist ihn dann an, einen Zonentransfer einzuleiten, ohne den Ablauf des Aktualisierungsintervalls abzuwarten.

Die Notify-Liste ist eine Liste von IP-Adressen, die angibt, welche sekundären Nameserver zum Zweck des Zonentransfers auf Zoneninformationen auf dem primären Nameserver zugreifen dürfen.

Das folgende Beispiel zeigt, wie ein DNS-Zonentransfer mit dig durchgeführt wird:

Befehl:

 dig axfr @nsztm1.digi.ninja zonetransfer.me 

Hier ist nsztm1.digi.ninja der Nameserver und zonetransfer.me ist der Domainname.

Diese DNS-Einträge werden im Folgenden näher erläutert.

SOA-Eintrag

Informationen, die in einer DNS-Zone gespeichert sind, beginnen mit einem SOA-Eintrag (Start Of Authority).

Dieser Datensatz enthält Informationen über:

  1. den Namen des Servers

  2. den Namen des Administrators der Zone

  3. die aktuelle Version des SOA-Records

  4. die Anzahl der Sekunden, die ein sekundärer Nameserver warten sollte, bevor er nach Aktualisierungen sucht

  5. die Anzahl der Sekunden, die ein sekundärer Nameserver warten soll, bevor er einen fehlgeschlagenen Zonentransfer erneut versucht

  6. die maximale Anzahl der Sekunden, die ein sekundärer Nameserver Daten verwenden kann, bevor sie entweder aktualisiert werden oder ablaufen müssen

  7. die Standardanzahl der Sekunden für die Time-to-liveto-live (TTL) für Ressourcendatensätze.

Hier:

  1. zonetransfer.me ist der Name der Domain

  2. nsztm1.digi.ninja.ist der primäre Nameserver

  3. robin.digi.ninja. steht für die Person, die für die Domain verantwortlich ist

  4. die E-Mail-Adresse (tauschen Sie das erste . für ein @)

  5. 2014101601- Die aktuelle SOA-Seriennummer für die Domäne

  6. 172800- Anzahl der Sekunden, die ein sekundärer Nameserver zwischen Änderungsanforderungen warten sollte

  7. 900- Anzahl der Sekunden, die ein primärer Nameserver warten sollte, wenn er nicht ordnungsgemäß aktualisiert werden kann

  8. 1209600- Anzahl der Sekunden, die ein sekundärer Nameserver beanspruchen kann, maßgebliche Informationen zu haben

  9. 3600- Minimale TTL

MX-Eintrag

Ein Mail eXchange-Eintrag (MX-Eintrag) gibt den Mailserver an, der für die Annahme von E-Mail-Nachrichten im Namen eines Domänennamens zuständig ist. In diesem Fall verwendet das Opfer den E-Mail-Dienst von Google. Dies ist eine nützliche Information bei der Durchführung von Social-Engineering-Angriffen.

TXT-Datensatz

Ein Text-Datensatz (TXT-Datensatz) ist ein Ressourcendatensatz im Domain Name System (DNS), der verwendet wird, um die Möglichkeit zu bieten, einen beliebigen Text mit einem Host oder Namen zu verknüpfen, z. B. menschenlesbare Informationen, Netzwerk, Datenzentrum oder andere Buchhaltungsinformationen.

TXT-Datensätze können wertvolle Informationen enthalten. Aus diesem TXT-Datensatz haben wir eine E-Mail-ID und eine Telefonnummer erhalten.

SRV-Datensatz

Ein SRV-Datensatz (Dienst) zeigt den Standort des SIP-Servers und identifiziert einen Dienst, indem er das Protokoll, den Host und den Port angibt, auf dem er läuft.

Dies verweist auf einen Server namens _sip._tcp.zonetransfer.me, der am TCP-Port 5060 für das Session Initiation Protocol (SIP) lauscht, und www.zonetransfer.me ist der Host, der den Dienst bereitstellt. Die hier angegebene Priorität ist 0, und die Gewichtung ist 0.

A-Eintrag

Ein Eintrag ordnet einen Domänennamen der entsprechenden IP-Adresse zu. Von einem A-Eintrag haben wir drei IPs des Rechenzentrums und drei Büro-IPs erhalten, was insgesamt 6 Ziele ergibt.

CNAME

Ein CNAME-Eintrag wird verwendet, um einen Alias von einem Domänennamen auf einen anderen Domänennamen abzubilden. Daraus können wir einen Test- und Staging-Server erkennen.

Auswirkungen der DNS-Zonentransfer-Schwachstelle

DNS-Zonentransfer bietet keine Authentifizierung. Das bedeutet, dass jeder Client oder jemand, der sich als Client ausgibt, einen DNS-Server um eine Kopie der gesamten Zone bitten kann.

Das bedeutet, dass, wenn keine Art von Schutz eingeführt wird, jeder in der Lage ist, eine Liste aller Hosts für eine bestimmte Domäne zu erhalten, was ihm eine Menge potenzieller Angriffsvektoren bietet.

Wie kann man die DNS-Zonentransfer-Schwachstelle verhindern?

  • Erlauben Sie nur einen Zonentransfer von vertrauenswürdigen IPs. Im Folgenden finden Sie ein Beispiel, wie Sie dies im BIND-DNS-Server beheben können.

Navigieren Sie zu /etc/named.conf und fügen Sie Folgendes hinzu:

 ACL trusted-servers { 173.88.21.10; // ns1 184.144.221.82; // ns2 }; zone securitytrails.com { type master; file "zones/zonetransfer.me"; allow-transfer { trusted-servers; }; }; 
  • Verwenden Sie Transaction SIGnatures (TSIG) für Zonentransfers
Überprüfen Sie noch heute die Sicherheit Ihrer Website und

erkennen Sie Schwachstellen, bevor Hacker sie ausnutzen.

LOS GEHT’S

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.