Was ist ein Sinkhole?

, ,
matrix 2883623 640

Sinkholing ist eine Technik zur Umleitung von Anfragen im Internet an einen als Sinkhole bezeichneten Server. Diese Methode wird oft zur Abwehr von Angriffen durch Botnets oder andere Malware eingesetzt. Grundsätzlich kann ein Sinkhole aber sowohl für konstruktive Zwecke als auch für Angriffe eingesetzt werden.

Was sind die Grundlagen für die Methode des Sinkholings?

Die Basis für die Funktionsweise eines Sinkholes ist das DNS. Dieses Domain Name System ist gleichsam das Telefonbuch des Internets. Von einem Browser soll eine Anfrage an eine URL gestellt werden, die für Menschen gut lesbar aus Buchstaben und Punkten besteht. Das DNS nimmt diese Anfrage entgegen und beantwortet sie mit der zu dieser URL gehörenden IP-Adresse, die nur aus Zahlen und Punkten besteht. An diese IP-Adresse wird die eigentliche Anforderung von Daten durch den Browser gerichtet.

Die Anfragen an das DNS können auf verschiedenen Stufen behandelt werden. Eine bestimmte Anfrage wird so lange auf eine immer höhere Stufe gehoben, bis sie beantwortet werden kann.

Die Idee des Sinkholings

Diese Idee besteht daraus, die Beantwortung einer DNS-Anfrage zu manipulieren. Das entspricht der Änderung eines Eintrags in einem Telefonbuch. Durch diese Änderung wird eine Anfrage an einen anderen Empfänger oder Server gerichtet als ursprünglich vorgesehen.

Diese Manipulation muss in einem DNS-Server erfolgen. Eine Möglichkeit dafür ist der Zugriff auf diese Server durch Behörden, wenn mit einer solchen Änderung der DNS-Daten ein Angriff abgewehrt werden soll.

Eine Manipulation von DNS-Daten kann aber auch selbst einen Akt der Computerkriminalität darstellen. Dann spricht man von DNS-Spoofing. Das Ziel eines solchen Spoofings ist es, den Zwischenspeicher oder Cache eines DNS-Servers zu verändern. Dieser Cache ist dann durch das sogenannte DNS-Poisoning manipuliert und gibt auf entsprechende Anfragen von Clients falsche IP-Adressen heraus.

DNS-Daten werden unter den dafür vorgesehenen Servern automatisch ausgetauscht. DNS-Spoofing wird dann möglich, wenn diese Übermittlungen nicht korrekt kryptografisch gesichert werden.

hacker 4703109 640

Ein Sinkhole zur Verteidigung gegen DDOS-Attacken

DDOS oder distributed denial of service bedeutet, dass zahlreiche oft selbst illegal übernommene Computer an einen Zielserver so viele Anfragen richten, dass dieser sie nicht beantworten kann und durch die Überlastung auch für legitime Nutzer nicht mehr erreichbar ist. Die für eine solche Attacke verwendeten Computer bilden ein sogenanntes Botnet.

Mehr zum Thema:
Was ist eine USV?

Eine Verteidigung gegen solche Angriffe kann aus einer DNS-Änderung bestehen, die Anfragen des Botnets nicht mehr an den Zielserver weiterleiten lässt, sondern eben an ein Sinkhole. Damit werden zwei Ziele erreicht. Der Zielserver der Attacke ist keiner Überlastung durch Anfragen mehr ausgesetzt. Dazu können die Anfragen aus dem Botnet an das Sinkhole analysiert werden.

Beispiel für ein Sinkhole als effektive Abwehr eines Angriffs

Die Schadsoftware WannaCry wurde so programmiert, dass sie eine bestimmte Domain auf den Inhalt einer aufgeschalteten Webseite prüfte. War dort keine Webseite aufzufinden, wurde im Programm von WannaCry eine Selbstabschaltung ausgelöst.

Durch eine Nachlässigkeit der Programmierer von WannaCry war das eine Domain, die sie nicht registriert hatten. Ein Sicherheitsforscher übernahm die Domain und leitete alle Anfragen von dieser Domain an ein eigenes Sinkhole weiter. So konnte WannaCry sowohl gestoppt als auch analysiert werden.

Ein Sinkhole für DNS-Spoofing

Wertfrei betrachtet lässt sich das DNS auch so manipulieren, dass korrekte Anfragen von Nutzern vom eigentlichen Zielserver an den Server von Kriminellen als Sinkhole umgeleitet werden. Damit ist es möglich, den Computer eines Nutzers mit Malware von diesem Server aus zu infizieren. Auch Phishing ist mit einem solchen Sinkhole durchführbar. Die dort aufgeschaltete Webseite ist derjenigen des Zielservers täuschend ähnlich. Sie verleitet den Nutzer dazu, auch auf dieser Webseite seine Nutzerdaten einzugeben. Nachdem dieser Server von Kriminellen betrieben wird, haben diese dann Kenntnis dieser Zugangsdaten.

defense 1403072 640

Wie lässt sich das Einrichten eines Sinkholes verhindern?

Dazu sollte das DNS so abgesichert werden, dass DNS-Daten nur digital signiert übertragen werden. Das kann sicherstellen, dass nur korrekte DNS-Daten in die Caches von DNS-Servern aufgenommen werden. Diese Abwehr ist allerdings nur für die Administratoren des DNS-Systems durchführbar. Für den einzelnen Nutzer gibt es die Möglichkeit, so weit wie möglich sichere Protokolle wie HTTPS statt nur HTTP zu verwenden. Falsche DNS-Daten können dem Nutzer von einem manipulierten DNS-Server zwar immer noch übermittelt werden. Beim tatsächlichen Verbindungsaufbau mit der inkorrekten IP-Adresse wird dann aber ein digitales Zertifikat geprüft. Wurde eine Verbindung mit einem falschen Server aufgebaut, wird dies bei einer solchen Überprüfung erkannt und die Verbindung wird sofort wieder gekappt.

Sinkholes sind effektive Mittel, DDOS-Attacken zu blockieren. Auf der anderen Seite gilt es zu verhindern, dass DNS-Daten durch Kriminelle manipuliert werden. Diese Absicherung kann und sollte mittels Techniken aus der Kryptografie sichergestellt werden. Ein korrekt funktionierendes DNS ist für die Verfügbarkeit des Internets von zentraler Bedeutung. Deshalb sollten alle Administratoren von DNS-Servern diese Absicherung mit der gebotenen Sorgfalt durchführen.