
MIN_NK - stock.adobe.com
Fehlerhafte DNS-Konfiguration und -Sicherheitslücken finden
Unsichere oder fehlerhafte DNS-Konfigurationen öffnen Cyberkriminellen Tür und Tor. Open-Source-Tools wie dnsrecon, dig und Nmap-Skripte helfen beim Aufspüren von Schwachstellen.
DNS-Konfigurationen in einem Netzwerk sind nicht nur wichtig für die Namensauflösung und den stabilen Betrieb von Workloads, sie sind auch ein Einfallstor für Cyberkriminelle. Angreifer können unsichere DNS-Server übernehmen und Redirects einrichten, die Benutzer auf Malware-Server umleiten. Das kann auch in Active Directory-Umgebungen gefährlich sein, da diese besonders von einer stabilen und sicheren DNS-Konfiguration abhängen.
Mit Open-Source-Tools lassen sich die Schwachstellen schnell identifizieren und fehlerhafte Konfigurationen entdecken. Die Tools lassen sich zum Beispiel mit Kali Linux nutzen, aber natürlich auch mit anderen Linux-Distributionen. Auch der Einsatz unter dem Windows-Subsystem für Linux (WSL) ist möglich.
dnsrecon überprüft DNS-Server auf unerlaubte Datenweitergabe
Ein wichtiges Tool bei der Prüfung von DNS-Servern ist dnsrecon. Es prüft, ob DNS-Server zu offen konfiguriert sind und Daten weitergeben. Diese Daten können Angreifer nutzen, um andere Server anzugreifen oder selbst DNS-Server zu betreiben, die Anwender auf Malware-Seiten lotsen. Mit dnsrecon können Admins auch einzelne DNS-Zonen finden, bei denen die Zonenübertragungen zu anderen Servern nicht korrekt konfiguriert sind. Um zum Beispiel die DNS-Daten der Zone "joos.int" vom Server 10.0.1.230 abzurufen, kann folgender Befehl genutzt werden:
dnsrecon -d joos.int -t axfr -n 10.0.1.230
AXFR, kurz für Authoritative Zone Transfer, bezeichnet den vollständigen Transfer einer Zone von einem autoritativen DNS-Server zu einem anderen, in diesem Fall zum Kali-PC mit dnsrecon. Dabei ist es nicht notwendig, dass auf dem Ziel-Server ein DNS-Server läuft. Beim Transfer werden alle Ressourcendatensätze einer Zone wie A-, MX- oder TXT-Einträge über eine TCP-Verbindung übertragen.
Eine unzureichend gesicherte Implementierung von AXFR birgt erhebliche Sicherheitsrisiken. So kann ein DNS-Server, der Zone-Transfers ohne Einschränkungen erlaubt, unbefugten Zugriff auf die vollständige DNS-Zone ermöglichen. Angreifer könnten dadurch sensible Informationen wie interne Subdomains oder die Struktur der Infrastruktur auslesen und diese für gezielte Angriffe nutzen. Die dadurch offengelegten Daten können als Einfallstore für weitere Sicherheitsvorfälle dienen. Um dieses Risiko zu minimieren, sollten Zone-Transfers nur an vertrauenswürdige IP-Adressen autorisierter sekundärer Server erlaubt werden. Zusätzlich ist eine Protokollierung aller Anfragen empfehlenswert, um potenziell bösartige Zugriffe schnell zu identifizieren.
Dabei kann es sich auch um eine in Active Directory integrierte DNS-Zone handeln, das spielt für dnsrecon keine Rolle. Normalerweise sollte das Tool hier die Information Zone Transfer Failed (Zone transfer error: REFUSED) ausgeben. Das zeigt, dass der DNS-Server nicht für die Zonen-Weitergabe konfiguriert ist, oder der Kali-PC nicht berechtigt ist. Erhalten Admins hier Informationen der DNS-Zone, sollten sie die Einstellungen der Zonen-Übertragungen überprüfen. Auf Windows-DNS-Servers erfolgt das in dnsmgmt.msc über die Eigenschaften der jeweiligen Zone auf der Registerkarte Zonenübertragungen. Hier sollte entweder die Option Zonenübertragungen zulassen deaktiviert, oder die Option Nur an folgende Server gesetzt sein. In der Liste sollten sich nur die berechtigten Server befinden.

In Active Directory erhalten Angreifer mit dnsrecon viele gefährliche Informationen
Im vorhergehenden Bild ist ein Zonentransfer von einem DNS-Server zu finden, der sich schnell als DNS-Server in Active Directory identifizieren lässt. Alleine das ist für einen Angreifer schon eine wertvolle Information. Die Ergebnisse enthalten wichtige Daten wie die IP-Adressen und Namen zentraler Server, darunter "dc1.joos.int", das als Domänencontroller identifiziert wird, sowie Dienste wie SQL-Server ("sql.joos.int") und Hypervisoren ("hyperv.joos.int", "hyperv2.joos.int"). Solche Einträge zeigen die Netzwerkressourcen und deren Rollen, was Angreifern hilft, gezielt Angriffe zu planen. Ein Angreifer kann dadurch gezielt den Domänencontroller ins Visier nehmen, um administrative Berechtigungen zu erlangen, oder Schwachstellen in einem Hypervisor ausnutzen, um auf virtuelle Maschinen zuzugreifen.
Die Einträge zu den Dienst-Standorten (SRV-Datensätze) liefern zusätzliche Details zu Kerberos- und LDAP-Diensten, einschließlich der verwendeten Ports wie 88 (Kerberos) und 389 (LDAP). Diese Daten ermöglichen es einem Angreifer, gezielt Authentifizierungsdienste oder Verzeichnisdienste anzugreifen, um Anmeldeinformationen abzufangen oder zu manipulieren. Zudem erleichtern die Informationen über Sites und Zonen "DomainDnsZones" und "ForestDnsZones" die Orientierung in einer verteilten Active Directory-Infrastruktur. Ein Angreifer kann die gewonnenen Informationen nutzen, um eine Vielzahl von Angriffstechniken umzusetzen. Dazu zählen Pass-the-Hash- oder Kerberos-Angriffe, Brute-Force-Versuche auf bekannte Systeme oder gezielte Exploits gegen Server mit spezifischen Rollen. Darüber hinaus erleichtert die detaillierte Netzwerktopologie das Umgehen von Sicherheitsmaßnahmen und die Bewegung innerhalb des Netzwerks (Lateral Movement). Ein solcher Informationsgewinn verstärkt die Wahrscheinlichkeit eines erfolgreichen Angriffs erheblich und zeigt, warum der Schutz vor unautorisierten Zonentransfers von entscheidender Bedeutung ist.
Angriffe mit Impacket und Kerbrute auf Basis von Zonentransfer-Daten
Die durch den Zonentransfer gewonnenen Informationen ermöglichen einem Angreifer, gezielt Tools wie Impacket und Kerbrute einzusetzen, um Schwachstellen im Active Directory auszunutzen. Mit Impacket kann der Angreifer gezielte Angriffe auf die im DNS identifizierten Dienste wie Kerberos oder LDAP durchführen. Zum Beispiel lassen sich über die Kerberos-Protokollunterstützung Pass-the-Ticket- oder Golden-Ticket-Angriffe realisieren, um privilegierte Zugriffe zu erlangen.
Kerbrute ermöglicht es, systematisch Benutzernamen, die anhand der Zonendaten wie „sql.joos.int“ oder „dc1.joos.int“ ermittelt wurden, für Brute-Force-Angriffe auf Kerberos-Tickets zu nutzen. Diese Angriffe zielen darauf ab, schwache oder leicht zu erratende Passwörter zu kompromittieren und dadurch unautorisierte Zugriffe auf sensible Systeme und Dienste innerhalb der Active Directory-Umgebung zu erhalten. Durch die präzisen DNS-Daten wird die Effizienz solcher Angriffe erheblich gesteigert, da die Ziele bekannt sind und direkt angegriffen werden können.
Verschiedene Abfragetypen zeigen noch mehr Informationen
Mit dem Tool dnsrecon lassen sich durch unterschiedliche Abfragetypen noch mehr Informationen über eine DNS-Zone und die dahinterliegenden Systeme gewinnen. Aufbauend auf den zuvor erhaltenen Daten können verschiedene Befehle genutzt werden, um weitere Details über die Netzwerkumgebung und potenzielle Schwachstellen zu sammeln. Ein Standard-Scan liefert eine allgemeine Übersicht über die verfügbaren DNS-Einträge. Der Befehl dafür lautet:
dnsrecon -d joos.int -t std -n 10.0.1.230
Dieser Scan gibt neben den bereits bekannten A- und NS-Datensätzen auch Informationen zu MX- und TXT-Einträgen aus. MX-Datensätze liefern Details über die Mailserver der Domäne, während TXT-Datensätze häufig Informationen zu SPF- oder DKIM-Regeln enthalten, die zum Schutz vor E-Mail-Spoofing verwendet werden. Um speziell nach Subdomains zu suchen, bietet sich ein Brute-Force-Scan an, der eine Liste bekannter Subdomains gegen die Domäne testet:
dnsrecon -d joos.int -t brt -n 10.0.1.230
Diese Methode kann unbekannte interne Subdomains wie Entwicklungs- oder Testsysteme aufdecken, die möglicherweise nicht ausreichend abgesichert sind. Ein weiterer relevanter Befehl ist die Suche nach Reverse-DNS-Einträgen, die IP-Adressen den entsprechenden Hostnamen zuordnen. Dies kann zusätzliche Geräte oder Systeme identifizieren:
dnsrecon -r 10.0.0.0/16 -n 10.0.1.230
Mit diesem Befehl wird der gesamte Adressbereich des internen Netzwerks untersucht, um mögliche Ziele wie Router, Server oder andere Netzwerkgeräte zu identifizieren.

Zusätzlich ermöglicht der Scan nach Zonenkonfigurationsfehlern das Auffinden von Einträgen, die Informationen über Dienste wie Dynamic DNS enthalten. Dies kann durch den folgenden Befehl erreicht werden:
dnsrecon -d joos.int -t zonewalk -n 10.0.1.230
Nutzung von dig zur DNS-Analyse
Das Tool dig eignet sich ebenfalls hervorragend, um DNS-Informationen gezielt abzufragen und die zuvor gewonnenen Daten zu ergänzen. Auch dieses Tool ist direkt in Kali Linux integriert. Mit einfachen Befehlen können spezifische Einträge wie A-, MX-, TXT- oder SRV-Datensätze abgefragt werden, um die Infrastruktur einer Domäne genauer zu analysieren. Der Befehl
dig @10.0.1.230 joos.int ANY
fragt alle verfügbaren DNS-Datensätze der Domäne ab und liefert so eine umfassende Übersicht. Dazu ist keine Zonenübertragung notwendig. Um gezielt Subdomains zu analysieren, lässt sich beispielsweise ein NS- oder A-Record für bestimmte Hostnamen wie dc1.joos.int überprüfen:
dig @10.0.1.230 dc1.joos.int
Mit diesen präzisen Anfragen erlaubt dig eine granulare Analyse, die für die Vorbereitung gezielter Angriffe, wie die Identifikation wichtiger Serverrollen oder potenzieller Schwachstellen, genutzt werden kann.

Die Ausgabe des dig-Befehls in diesem Beispiel enthält Informationen über die Root-Nameserver der angefragten Zone, ihre Namen und IP-Adressen, sowohl in IPv4- als auch in IPv6-Format. Diese Daten sind standardmäßig Teil der globalen DNS-Hierarchie und in diesem Fall für die Zone joos.int relevant. Die Antwort zeigt, dass die Name-Server korrekt konfiguriert sind und die Anfrage ohne Fehler verarbeitet wurde (status: NOERROR).
Die ANSWER SECTION listet 13 Root-Nameserver auf. Für einen Angreifer bieten diese Informationen mehrere Ansatzpunkte. Mit Tools wie Nmap können die offenen Ports der Nameserver untersucht werden, um Schwachstellen im DNS-Dienst (Port 53) oder anderen Diensten wie HTTP oder SSH auszunutzen. Weiterhin kann ein Angreifer die IPv6-Adressen nutzen, da diese häufig weniger überwacht und abgesichert sind als ihre IPv4-Pendants.
Ein weiteres Risiko ergibt sich aus der Verwendung des EDNS-Formats (Extended DNS), das in der OPT PSEUDOSECTION erwähnt wird. Die Angabe, dass UDP mit einer Puffergröße von 4000 Bytes unterstützt wird, könnte für Amplification-Angriffe ausgenutzt werden. Dabei sendet der Angreifer kleine Anfragen an den DNS-Server, der große Antworten an ein Ziel weiterleitet, wodurch ein DDoS-Angriff ermöglicht wird.
DNS-Skripte in Nmap nutzen
Parallel zu dnsrecon und dig kann Nmap mit seiner Scipting-Engine NSE dazu genutzt werden gezielt Angriffe auf die Server durchzuführen, deren Daten mit dnsrecon und dig ausgelesen wurden. Mit dem Nmap-Skript dns-brute lässt sich die Domäne joos.int in diesem Beispiel gezielt auf Subdomains testen, indem eine Brute-Force-Technik angewendet wird, um versteckte oder nicht dokumentierte Subdomains zu entdecken. Das Skript nutzt eine vorgegebene Wortliste, um systematisch DNS-Anfragen zu generieren. In diesem Beispiel könnte der Befehl wie folgt aussehen:
nmap --script dns-brute -p 53 -n -v -d --script-args dns-brute.domain=joos.int 10.0.1.230
Dieser Befehl spezifiziert den DNS-Server mit der IP-Adresse 10.0.1.230 als Ziel und konzentriert sich auf den Port 53, auf dem der DNS-Dienst läuft. Das Skript durchsucht die Zone joos.int nach möglichen Subdomains, die in der Standardkonfiguration nicht direkt sichtbar sind. Zu den potenziellen Ergebnissen könnten versteckte interne Systeme wie Entwicklungs-, Test- oder Backup-Server gehören, die durch Einträge wie dev.joos.int oder backup.joos.int sichtbar werden.

Für einen Angreifer bieten die entdeckten Subdomains eine wertvolle Grundlage, um gezielt weitere Schwachstellen zu untersuchen. Mit den gefundenen Daten könnte er beispielsweise versuchen, Dienste auf den jeweiligen Hosts zu identifizieren oder direkt Schwachstellen in der Konfiguration der Subdomains auszunutzen. Besonders kritisch wird dies, wenn Subdomains auf sensible Serverrollen oder interne Dienste verweisen, die nicht ausreichend abgesichert sind. Das Nmap-Skript dns-brute ist daher ein effektives Werkzeug zur Erkundung der DNS-Struktur und liefert Ergebnisse, die für Angriffe wie Lateral Movement oder Phishing-Kampagnen genutzt werden könnten.
Die Ergebnisse des Scans mit Nmap und dem Skript dns-brute liefern in diesem Beispiel einem potenziellen Angreifer wichtige Informationen über die DNS- und Netzwerkstruktur der Domäne joos.int. Der DNS-Server mit der IP-Adresse 10.0.1.230 ist aktiv und reagiert auf DNS-Abfragen über Port 53, obwohl er auf ICMP-Anfragen (Ping-Scans) nicht antwortet. Dies deutet darauf hin, dass der Server durch eine Firewall geschützt ist, die ICMP blockiert, jedoch keine zusätzlichen Maßnahmen gegen DNS-Anfragen implementiert wurden. Der Scan zeigt, dass der DNS-Dienst weiterhin Informationen preisgibt, die von Angreifern genutzt werden können.
Das Skript hat den Server sql.joos.int erfolgreich aufgelöst und mit der IP-Adresse 10.0.1.231 verknüpft. Diese Information gibt einem Angreifer direkte Hinweise auf einen Server, der vermutlich eine Datenbank hostet. SQL-Server sind aufgrund der darauf gespeicherten sensiblen Daten ein bevorzugtes Ziel. Angreifer können diese Erkenntnis nutzen, um gezielte Angriffe wie SQL-Injection, die Ausnutzung von Schwachstellen in der SQL-Software oder die Suche nach schwachen Passwörtern durchzuführen. Die Auflösung zeigt außerdem, dass der DNS-Server Subdomain-Daten ohne Einschränkungen preisgibt, was für weitere Tests genutzt werden kann.
Die Erwähnung der DNS-Resolver 10.0.0.2 und 10.0.0.1 in den Ergebnissen zeigt, dass es redundante DNS-Server im Netzwerk gibt. Diese könnten Angreifer als alternative Ziele verwenden, um zusätzliche DNS-Informationen oder weitere Subdomains zu ermitteln. Durch gezielte Abfragen dieser Server können weitere Systeme oder Dienste aufgedeckt werden, die möglicherweise weniger gut geschützt sind. Die Ergebnisse des Scans zeigen, dass der DNS-Server keine Wildcard-Einträge verwendet. Dies wurde durch die Verwendung zufällig generierter Hostnamen wie nxhnojtuwruyrbgakpsoszbe.joos.int und vexmkiivijspwwiisqxfbxdq.joos.int getestet. Der Server reagiert nur auf gültige Subdomain-Anfragen. Die gewonnenen Daten ermöglichen es einem Angreifer, gezielte Angriffe auf die DNS-Infrastruktur und die entdeckten Systeme wie den SQL-Server zu starten.
Beachten Sie bitte unsere Artikel zur rechtlichen Lage bei Penetrationstests und zum Hackerparagrafen.