DNS Leak

Das Domain Name System, kurz DNS, übersetzt Internetdomains in IP-Adressen. Das global verteilte System gibt also für einzelne Domain-Namen jeweilige IP-Adressen aus und dient damit als „Adressbuch“ des Internets. Die IP-Adresse gleicht einer Postadresse, an die Sendungen verschickt werden können. Hier zwei Beispiele für DNS-Anfragen:

Abgefragter Domänenname

Zurückgelieferte IP-Adresse

'example.com'

'93.184.216.34'

'ionos.at'

'217.160.86.40'

Damit die Namensauflösung funktioniert, muss auf jedem Endgerät die IP-Adresse eines DNS-Servers eingetragen sein. Das Endgerät richtet seine DNS-Anfragen an diesen Server. Die dabei anfallenden Daten verraten viel über das Surfverhalten der Internetnutzer. Möchte man seine Privatsphäre schützen, darf man ausgehende DNS-Anfragen nur an vertrauenswürdige Server schicken. Was jedoch, wenn dabei etwas schiefgeht?

Was ist ein DNS Leak?

Im Gegensatz zum DNS Hijacking und DNS Spoofing gefährden DNS Leaks lediglich Nutzer, die versuchen, Ihr Surfverhalten privat zu halten. Konkret sind Nutzer betroffen, die ihre Internetverbindung über ein virtuelles privates Netzwerk (VPN) oder einen Proxy leiten. Beide Technologien dienen dazu, die persönliche Identität bei der Internetnutzung zu verschleiern.

Der Wunsch, das Surfverhalten geheim zu halten, deutet nicht etwa auf illegale Aktivitäten hin. Denn das Recht auf Privatsphäre und informationelle Selbstbestimmung sind grundlegende Menschenrechte. Anbieter kommerzieller VPN-Dienste unterstützen dieses legitime Bestreben der Nutzer gegen Zahlung einer Gebühr. Die früher häufig anzutreffende Nutzung von Proxys ist heutzutage weniger verbreitet; wir beschränken unsere Betrachtung daher im Weiteren auf das Auftreten von DNS Leaks bei der Nutzung eines VPN.

VPN-Dienste zielen darauf ab, sämtlichen ausgehenden Netzwerkverkehr durch das VPN zu leiten. Unter gewissen Umständen kann es jedoch vorkommen, dass einzelne Verbindungen direkt vom Gerät des Nutzers an Kommunikationspartner im Internet geleitet werden. Ein DNS Leak liegt dann vor, wenn eine DNS-Anfrage, die durch das VPN geschickt werden sollte, ungeschützt zu einem DNS-Server gelangt. Häufig handelt es sich dabei um den DNS-Server des Internetproviders (ISP). ISPs sind dafür bekannt, die dabei anfallenden Daten zu sammeln, auszuwerten und zu verkaufen.

Welche Informationen werden geleakt?

Was geschieht nun, wenn es zu einem DNS Leak kommt, und welche Informationen gelangen dabei nach außen? Zunächst sind drei Fälle zu unterscheiden:

  1. Informationen, die an den ISP des Nutzers gehen
  2. Informationen, die auf dem Weg zum DNS-Server abgegriffen werden
  3. Informationen, die aufseiten eines Dienste-Betreibers offenbart werden

Eine beim DNS-Server des ISP eingehende DNS-Abfrage enthält neben der unverschleierten IP-Adresse des Endnutzers den aufzulösenden Domänennamen. In den Server-Logs des ISP mit einem Zeitstempel versehen, ergibt sich daraus die Information, wann welcher Nutzer auf welche Domänen zugreifen wollte. Dabei handelt es sich um ein ernstzunehmendes Datenschutzproblem. Zum einen werden die DNS-Daten oft zu Profilen verpackt und verkauft; zum anderen können staatliche Stellen Zugriff auf die Daten erlangen. Dies kann für Dissidenten und Aktivisten im schlimmsten Falle tödlich enden.

DNS-Anfragen nutzen das User Datagram Protocol (UDP) als Verbindungsprotokoll. UDP-Pakete sind auf dem Weg zum DNS-Server für jeden Akteur einsehbar, der in der Lage ist, die Leitung zu überwachen. Um das Surfverhalten des Endnutzers geheim zu halten, sollten die DNS-Anfragen durch das VPN geleitet werden. Seit den Snowden-Enthüllungen ist bekannt, dass Geheimdienste den Internetverkehr in massivem Ausmaß überwachen, ausleiten, auswerten und speichern. Die bei einem DNS Leak anfallenden, persönlich identifizierbaren DNS-Pakete stellen somit eine ernstzunehmende Gefahr für die Sicherheit und Privatsphäre der Internetnutzer dar.

Neben den bereits genannten Gefahren im Zusammenhang mit DNS Leaks existiert ein weiteres Risiko. Denn ein DNS Leak lässt sich von dritten Parteien ausnutzen. Dabei kann es sich um einen Dienste-Anbieter handeln, z. B. um den Betreiber einer Website. Über einen Trick kann der Anbieter feststellen, dass ein Nutzer über ein VPN auf den Dienst zugreift. Unter Umständen wird dem Dienste-Anbieter der ISP des Nutzers offenbart. Dies wiederum verrät die ungefähre geografische Lage des Nutzers. Derselbe Trick kommt – dann zum Wohle des Nutzers – auch bei den DNS-Leak-Testern zum Einsatz.

Wie funktioniert ein DNS-Leak-Tester?

Es gibt eine Vielzahl von Diensten, die versuchen, DNS Leaks zu erkennen. Ein solcher als „DNS-Leak-Tester“ bekannter Dienst ist üblicherweise als normale Website realisiert, die der Nutzer über den Browser aufruft. Um auf das Vorhandensein eines DNS Leaks zu testen, löst der DNS-Leak-Tester eine Reihe spezieller Verbindungsversuche aus. Das Ziel ist, nachzuvollziehen, woher die daraus resultierenden DNS-Anfragen stammen. Doch wie genau funktioniert das?

Um das Wirkprinzip eines DNS-Leak-Testers nachzuvollziehen, muss man verstehen, wie das DNS aufgebaut ist. Beim DNS handelt es sich um ein hierarchisches System aus Nameservern. Dabei wird zwischen autoritativen und nichtautoritativen Nameservern unterschieden. Ein autoritativer Nameserver dient als Quelle der DNS-Daten einer DNS-Zone. Unter einer DNS-Zone können Sie sich konzeptuell in etwa eine Domain, ggf. mit weiteren Subdomains, vorstellen.

Neben autoritativen Nameservern gibt es Nameserver, die Teile der DNS-Daten in einem Cache vorhalten. So können bereits gestellte Anfragen schnell beantwortet werden, ohne jedes Mal beim autoritativen Nameserver nachzufragen. Der DNS-Server des ISP ist für die meisten Domains ein nichtautoritativer Nameserver. Schauen wir uns an, was passiert, wenn beim DNS-Server des ISP eine Anfrage für einen Domänennamen eingeht:

  1. Ein Klient möchte eine unter einem Domain-Namen gehostete Ressource abrufen.
  2. Der Klient stellt eine Domänennamen-Anfrage an den DNS-Server seines ISP.
  3. Kennt der DNS-Server die zum Domänennamen gehörende IP-Adresse, liefert er diese zurück.
  4. Andernfalls fragt der DNS-Server des ISP beim autoritativen DNS-Server der DNS-Zone, die dem Domain-Name übergeordnet ist, nach.
  5. Der autoritative DNS-Server liefert die IP-Adresse für den Domänennamen zurück.
  6. Der DNS-Server des ISP reicht die IP-Adresse an den Client weiter und speichert die Anfrage in seinem Cache.
  7. Der Client kann nun die Anfrage nach der Ressource an den unter dem Domain-Namen erreichbaren Server stellen.

Ein DNS-Leak-Tester setzt auf diesem grundlegenden Prinzip auf. Wir stellen dies hier am Beispiel der Website DNS Leak Test dar:

  1. Ein Nutzer steuert im Browser die Website dnsleaktest.com an.
    Die DNS-Leak-Test-Website generiert Abfragen an fiktive Ressourcen unter einer zufällig erzeugten, eindeutigen Subdomain. Hier ein Beispiel für den Namen einer solchen Domain:
    c6fe4e11-d84d-4a32-86ef-ee60d9c543fa.test.dnsleaktest.com
     
  2. Um eine der Ressourcen abzurufen, benötigt der Browser des Seitenbesuchers die zum Domänennamen gehörende IP-Adresse.
    Da es sich um einen zufällig erzeugten Domain-Namen handelt, kann kein DNS-Server außer dem autoritativen die IP-Adresse kennen.
     
  3. Der DNS-Server, der die Anfrage erhält, fragt daher beim autoritativen DNS-Server für die DNS-Zone test.dnsleaktest.com nach.
    Der autoritative DNS-Server für diesen Domänennamen steht unter der Kontrolle des Seitenbetreibers von dnsleaktest.com.
     
  4. Der autoritative DNS-Server gleicht den zufällig erzeugten, eindeutigen Teil des Domänennamens mit Einträgen in einer internen Datenbank ab.
    So lässt sich auf Seite von dnsleaktest.com nachvollziehen, welche eingehende DNS-Anfrage zu welchem Website-Besucher gehört.
     
  5. In Form der IP-Adresse liegt dem autoritativen DNS-Server die Information vor, von welchem externen DNS-Server die Anfrage nach der IP-Adresse des zufällig erzeugten Domain-Namens stammte.
    Ist die Quelle der Anfrage der DNS-Server eines ISP, liegt ein DNS Leak vor.

Ist die Quelle der Anfrage der DNS-Server eines ISP, liegt ein DNS Leak vor.

Welche DNS-Leak-Tester gibt es?

Prinzipiell ist es mit relativ geringem Aufwand möglich, einen DNS-Leak-Tester als Webdienst zu realisieren. Dem interessierten Leser sei für eine ausführliche Beschreibung dieser Artikel ans Herz gelegt. Möchte man überprüfen, ob man selbst einem DNS Leak zum Opfer fällt, greift man auf einen der existierenden DNS-Leak-Tester zurück. Wir haben hier beispielhaft eine Liste derartiger Angebote für Sie zusammengetragen:

Wie lassen sich DNS Leaks vermeiden?

Die beste Strategie, DNS Leaks vorzubeugen, basiert auf dem IT-Sicherheitskonzept „Defense in depth“ (zu Deutsch: „in die Tiefe geschichtete Verteidigung“). Man baut mehrere Schichten zum Schutz vor einer Bedrohung auf. Bei Wegfall einer einzelnen Schicht bleibt der Schutz bestehen. Wir empfehlen die folgenden Schritte – in dieser Reihenfolge –, um DNS Leaks vorzubeugen:

  1. Auf dem lokalen Gerät und dem Heimrouter DNS-Server einstellen, die nicht unter Kontrolle des ISP stehen. Dies ist eine grundlegende Schutzmaßnahme, die auch anderen Risiken wie dem DNS Hijacking vorbeugt. Hier bietet sich die die Nutzung von Quad9 oder Cloudflares 1.1.1.1 an. Vergessen Sie nicht, nach Änderung der DNS-Server den DNS-Cache zu leeren.
     
  2. Software nutzen, die DNS-Verbindungen verschlüsselt, z. B. per DNS over HTTPS (DoH) oder DNS over TLS (DoT). Dies schützt vor Abgreifen und Manipulation der DNS-Pakete auf dem Weg zum DNS-Server und verhindert somit auch DNS-Spoofing-Angriffe. Die Nutzung von DNS-Verschlüsselung ist von der jeweils eingesetzten Software abhängig. Unter den verbreiteten Browsern ist Firefox federführend bei der Umstellung auf verschlüsselte DNS-Verbindungen. Jedoch müssen hierfür die Browser-Einstellungen angepasst werden, wie in unserem Artikel zum Thema DoH beschrieben.
     
  3. Einen VPN-Client nutzen, der DNS-Anfragen durch das VPN leitet und eigene DNS-Server zur Verfügung stellt. Dies schützt vor sämtlichen im Zusammenhang mit DNS Leaks auftretenden Gefahren. Es gibt eine beinahe unüberschaubare Bandbreite verschiedener VPN-Anbieter. Manche stellen ihre Dienste kostenlos zur Verfügung, andere als kommerzielle Dienstleistung. Generell gilt Vorsicht bei kostenlosen VPN-Diensten; für gewöhnlich können Sie von diesen nicht denselben Umfang an Schutzmaßnahmen erwarten.
Tipp

Wir haben für Sie eine Liste verschiedener VPN-Dienste als Übersicht zusammengestellt.

Die genannten Punkte bieten ein grundlegendes Maß an Schutz vor DNS Leaks und sollten für die große Masse der Internetnutzer ausreichend sein. Mitglieder besonders gefährdeter Gruppen, etwa Menschenrechtsaktivisten, sollten darüber hinausgehende Vorsichtsmaßnahmen treffen:

  • Komfortabel ist der Einsatz des Tor-Browsers. Dieser ist bekannt dafür, DNS Leaks beim Zugriff auf Webangebote effektiv vorzubeugen.
  • Um sicherzustellen, dass tatsächlich alle ausgehenden Netzwerkverbindungen durch das Tor-Netzwerk geleitet und damit depersonalisiert werden, bootet man Tails-Linux von einem USB-Stick. Dieser Ansatz gilt als Goldstandard in Sachen Verschleierung der eigenen Identität bei der Internetnutzung.