DNS-Tunneling

Was ist DNS und was ist DNS-Tunneling?

Das Domain Name System (DNS) ist das Protokoll, welches URLs in IP-Adressen auflöst. Da DNS ist weit verbreitet und gilt als vertrauenswürdig, deswegen überwachen Unternehmen ihren DNS-Verkehr meist nicht auf bösartige Aktivitäten. Infolgedessen können eine Reihe von DNS-basierten Angriffen gegen Unternehmensnetzwerke effektiv sein, darunter zählt auch das DNS-Tunneling. Das DNS-Tunneling ist eine Methode, mit der Daten über das DNS-Protokoll versendet werden, einem Protokoll, welches nicht für die Datenübertragung vorgesehen ist.

Anwendungsfälle

http via DNS

Der beliebteste Anwendungsfall für DNS-Tunneling ist der Zugang zu kostenlosem Internet durch Umgehung von gesperrten Portalen an Flughäfen, in Hotels oder übers WLAN im Flugzeug.

Die Etablierung des DNS-Tunnels erfolgt über entsprechende DNS-Tunneling-Tools.

An diesen gemeinsam genutzten Internet-Hotspots wird der HTTP-Verkehr blockiert, bis ein Benutzername/Passwort eingegeben wird, aber der DNS-Verkehr ist im Allgemeinen im Hintergrund noch erlaubt.

Somit kann der HTTP-Verkehr über DNS verschlüsselt werden und somit einen Internetzugang etablieren.


DNS-Tunneling im Angriffszenario

  1. das DNS-Protokoll wird zweckentfremdet und genutzt um Malware und andere Daten über die Client-Server-Kommunikation zu tunneln
  2. ein Angreifer registriert eine Domain (badsite.com)
  3. dieser registrierte DNS-Eintrag (DNS-Record) verweist auf den Server des Angreifers
  4. der Opfer-Computer wird mit Malware infiziert
  5. etabliert verdeckte Kanäle über DNS, um die Kommunikation zu verbergen oder die von Netzwerkadministratoren festgelegten Richtlinien zu umgehen
  6. der infizierte Computer hinter der Firewall darf DNS über die Firewall machen
  7. des infizierten Computers macht eine DNS-Anfrage für badsite.com
  8. der DNS-Server (DNS-Resolver) leitet Traffic auf Command und Control-Server
  9. auf Command und Control-Server ist ein DNS-Tunneling-Programm installiert
  10. Aufbau eines DNS-Tunnels über den Resolver zwischen Opfer- und Angreifer
  11. DNS-Tunnel kann zur Exfiltration von Daten oder für andere bösartige Zwecke verwendet werden
  12. Verbindung erfolgt über DNS-Server (Resolver) ->somit keine direkte Verbindung zwischen Opfer und Angreifer & Erhöht die Schwierigkeit den Rechner des Angreifers zu verfolgen

Wie erfolgt der Datenversand über den DNS-Tunnel?

  • der Datenversand erfolgt verschlüsselt über den DNS-Requests
  • das geschieht z.B. durch Voranstellen eines Datenteils in der Domain der Anfrage z.B. encodedpieceofdata.badsite.com
  • der DNS-Server ermittelt zu der URL die passende IP-Adresse des Servers
  • die Anfrage encodedpieceofdata.badsite.com wird an den Ziel-Server weitergeleitet
  • der Server verarbeitet die Instruktionen aus dem encodedpieceofdata wie z.B. eine HTTP-Abfrage
  • der Server antwortet per DNS-Request zurück