DNS-Server gewährleisten die normale Funktionalität des Internets, so wie wir es tagein tagaus kennen und schätzen. Die meisten User wissen allerdings weder, dass es sie gibt, noch wofür sie zuständig sind. Das ist zumindest solange der Fall, bis DNS-Attacken DNS-Server lahmlegen und Services wie Spotify oder Twitter nicht mehr zu erreichen sind. Genau das geschah vor ein paar Wochen. Dabei wurde ein Unternehmen namens DynDNS vom Mirai Botnet attackiert. Einige Server schalteten sich daraufhin ab. Die End-User bemerkten nur, dass zahlreiche Webdienste nicht mehr zu erreichen oder Apps nicht wie gewohnt zu bedienen waren.
Eines ist sicher. Es gibt mehr als nur ein Angriffsszenario, welches DNS-Server ausschalten kann – in diesem Artikel wollen wir auf ein paar Möglichkeiten genauer eingehen.
Was ist ein DNS-Server?
Das Domain Name System (kurz DNS) ermöglicht es, den Namen einer Webseite in die entsprechende IP-Adresse umzuwandeln. Den Usern hilft das ungemein. Beispielsweise können wir einfach facebook.com in die Adresszeile unseres Browsers eingeben und gelangen zur gewünschten Webseite. Dahinter verbirgt sich allerdings die IP-Adresse 31.13.92.36 – Im Allgemeinen lassen sich aber Zahlenkombination nicht so gut merken, wie die Namen der Webseiten.
Das Auflösen der nutzerfreundlichen Domain in die entsprechende IP-Adresse ist unter anderem die Aufgabe des DNS-Servers. Mit Hilfe dieses Systems können User Webseiten einfacher erreichen, selbst wenn sich die IP-Adresse der Domain ändert. Eine gute Visualisierung dazu ist hier zu finden.
DNS-Server sind also ziemlich wichtig für das Surfen im Internet. Da wurndert es kaum, dass Angreifer immer wieder Schwachstellen der Server versuchen aufzuspüren und auszunutzen.
DNS Spoofing vs. DNS Cache Poisoning
Oft als ein und dieselbe Angriffsart zusammengenommen, sind sie technisch doch voneinander zu differenzieren. Generell können wir festhalten, dass DNS Cache Poisoning eine von vielen Möglichkeiten darstellt, DNS Spoofing zu betreiben. Unter dem Begriff sind also eine breite Palette von Angriffen zusammengefasst, bei denen es darum geht, auf DNS-Servern gespeicherte Informationen zu ersetzen.
DNS Spoofing stellt das ultimative Ziel einer Attacke (Kompromittierung des Server Caches mit Hilfe der Übergabe eines zusätzlichen gefälschten Records) dar, für die verschiedenen Szenarien in Frage kommen. Dazu gehören DNS Cache Poisoning, aber auch Man-In-The-Middle-Attacken, der Einsatz von IMSI-Catchern und die Kompromittierung der Sicherheitssysteme von DNS-Servern.
“DNS Spoofing stellt das ultimative Ziel einer Attacke dar, für die verschiedene Szenarien in Frage kommen.“
DNS Spoofing Attacken richten sich aber auch gezielt gegen User. Dabei kann beispielsweise eine Adresse eines DNS-Servers im Betriebssystem oder Router mit einer gefälschten ersetzt werden. Normalerweise geben die Internet Server Provider die DNS-Server vor oder man konfiguriert seinen Router individuell, wie unten zu sehen:
DNS Cache Poisoning bezieht sich auf die Situation, in der viele End-User auf denselben Cache zurückgreifen. Dieser beinhaltet bestimmte Register, in denen zu jeder IP-Adresse eine entsprechende Domain zugeordnet ist. Es kann also durchaus vorkommen, dass es einem Eindringling gelingt, einen Registereintrag im Cache zu verändern. Der Cache wird vom ISP als vertrauenswürdig eingestuft, obwohl die Manipulation eines Registereintrags auf eine Fake-Webseite zeigt.
In diesem Fall des poisened DNS Caches wird der erzeugte Traffic bei der Auflösung des Domain-Names nicht an die legitime IP-Adresse weitergeleitet, sondern an eine andere, da die IP-Adresse ausgetauscht wurde. Natürlich ist diese Art des DNS Cache Poisonings nicht so einfach zu realisieren wie bei einfachen PCs oder Heim-Routern. Dennoch ist es technisch möglich und es gibt einige Präzedenzfälle.
“In diesem Fall des poisened DNS Caches wird der erzeugte Traffic bei der Auflösung des Domain-Names nicht an die legitime IP-Adresse weitergeleitet.“
Ein großes Problem von DNS Cache Poisoning Attacken ist die Ausbreitung auf mehrere unterschiedliche DNS-Server. Mit der Zeit können unter diesem Umstand auch Heim-Router (inklusive des existierenden DNS Caches im User-System) kompromittiert werden. Der Router enthält die gefälschte Information und ergänzt den lokalen Cache um die Fake-Information.
Damit ein Angreifer diese Attacke realisieren kann, benötigt er mindestens einen Web Server und einen DNS Server. Er müsste ein vertrauenswürdiges DNS und eine Trap Domain aufsetzen. Nun müsste der Angreifer sein potenzielles Opfer dazu bringen, die Trap-Domain mit seinen Standard-DNS-Einstellungen zu besuchen. Dann wird damit begonnen, sogenannte "identifiers of transaction" zu sammeln, um verhaltensbasierte Vorhersagen treffen zu können.
Nachdem dieser Punkt erreicht worden ist, wird das DNS des Opfers dazu gezwungen, eine Anfrage an das autorisierte DNS des Angreifers zu stellen, die beispielsweise auf eine kompromittierende Domain hinweist und die sonst immer angesteuerte Banking-Website (Beispiel) verdrängt. Da der Angreifer nun die neuen Transaktions-IDs entdeckt hat, wird versucht, die legitimen Verbindungen zu ersetzen, die der Benutzer bei der Ansteuerung der Banking-Webseite gebraucht.
Weil der Angreifer die korrekte Transaktions-ID vorhersagen kann, wird das DNS des Opfers den gefälschten Eintrag in seinem Cache speichern und ihn als gültig akzeptieren. Von diesem Punkt an wird jeder Zugriffsversuch auf die Banking-Webseite durch das Opfer damit enden, auf einer vom Angreifer kontrollierten Website zu landen.
Was ist mit DNS-Hijacking?
Auch Malware kann dazu verwendet werden, die Auflösung von Domain-Namen zu beeinflussen. Ziel ist auch hier die (dauerhafte) Verbindungsherstellung zu einer gefälschten Webseite, die vom Angreifer kontrolliert wird. Ein gutes Beispiel dafür ist Win32/DNSChanger. Diese Schadsoftware ändert das vom Benutzer oder vom ISP konfigurierte DNS. Die Funktionsweise erläutert das folgende Bild:
Funcionamiento normal | Normale Funktionsweise |
---|---|
Servidor DNS | DNS Server |
Víctima | Opfer |
Servidor web | Web Server |
Consulta por www.ejemplo.com | www.example.com Lookup |
Respuesta Servidor web | Antwort Web Server |
Acceso a sítio legítimo | Zugang zur legitimen Webseite |
Víctima de un DNS Spoofing local | Opfer von Local DNS Spoofing |
---|---|
Víctima | Opfer |
Servidor DNS | DNS server |
Atacante rol de DNS malicioso | Angreifer-Rolle des schädlichen DNS |
Servidor malicioso | Bösartiger Server |
Acceso a sítio malicioso | Zugriff auf schädliche Website |
Consulta por www.ejemplo.com | www.example.com Lookup |
Respuesta Servidor malicioso | Antwort des bösartigen Servers |
Das eröffnet den Angreifern vielfältige Angriffsszenarien. Vorstellbar ist vor allem das Abfangen von Login-Informationen, um ein Opfer zum Beispiel finanziell zu schädigen. Das wird auch unter dem Begriff Phishing zusammengefasst.
Außerdem kann der eigene PC in einen „Zombie-Computer“ umgewandelt und einem Botnet hinzugefügt werden. Viele Botnet-Betreiber verändern die DNS-Server Einstellungen der angeschlossenen Geräte, um wiederum auf andere zugreifen zu können und das Netzwerk zu vergrößern. Außerdem besteht die Möglichkeit beliebige Malware auf die ferngesteuerten Bots aufzuspielen, zu aktualisieren und wenn nötig wieder zu entfernen.
Schlussfolgerung
Es gibt zahlreiche Vorgehensweisen, wie die ordnungsgemäße Auflösung einer Domain gestört werden kann. Die ahnungslosen User tappen dabei unwissentlich in die Fallen der Cyber-Kriminellen. Dieser Bedrohung kann vorgebeugt werden, indem eine zuverlässige Internet Security Software auf dem heimischen PC installiert ist, welche auch die Sicherheitseinstellungen des Routers beobachtet und den Nutzer gegebenenfalls über Unregelmäßigkeiten informiert.
Allgemein ist es keine schlechte Idee, die Sicherheitseinstellungen des Routers auf Angemessenheit zu überprüfen. Wir raten Internet-Usern sich ausführlich mit dem eigenen Router zu beschäftigen. Das ist die Voraussetzung dafür, dass die Aktualität der Router-Firmware und die richtige (Sicherheits-)Konfiguration gewährleistet werden kann. Ungebetene sollten keinen Zugang zum Router haben – weder durch ein schlechtes Passwort, noch durch irgendwelche bedenklichen Ports wie Telnet.