Anleitung zur Einrichtung einer “DNS-Sperre”

Die Hauptaufgabe des Domain Name System (DNS) ist die Beantwortung von Anfragen zur Namensauflösung. Die Namensauflösung der URL http://cdu.de liefert z.B. die IP-Adresse 193.219.105.10 zurück. “DNS-Sperren” manipulieren die Zuordnung zwischen einem URL und der zugehörigen IP-Adresse: DNS-Server, die zensieren, beantworten bestimmte Anfragen nicht mit den jeweiligen eigentlichen IP-Adressen sondern mit der IP einer Stoppseite. Der Rechner, der die erhaltene IP weiterverarbeitet, lädt daraufhin z.B. statt der zensierten Website eine Website mit einem Stoppschild herunter.

Das Folgende Beispiel erklärt die  simple Technik der “DNS-Sperre”, indem die Website der CDU eine Stoppseite verpasst bekommt.

Verwendet wird im Beispiel der freie DNS-Server BIND auf Grund seiner starken Verbreitung in mittleren und großen Netzen.

Im DNS bezeichnet Zone den Teil des Domänenbaums, für den ein DNS-Server zuständig ist und deshalb die offiziellen Daten kennt. Einen für eine Zone zuständigen DNS-Server nennt man autoritativ. Seine Informationen über diese Zone, wie die Zuordnung zwischen der URL und der zugehörigen IP-Adresse, werden als gesichert angesehen. Diesen Wunden Punkt des DNS nutzend, beginnt hier die Manipulation, in dem man den eigenen DNS-Server dahingehend konfiguriert, dass er zum autoritativen DNS-Server für die Zone *.cdu. wird. (* steht für alle Subdomains wie z.B. team-zukunft.cdu.de).

In der anzulegenden Zonendatei /etc/bind/db.cdu.de – in der die Zone *.cdu. vollständig beschrieben wird – sind wenigstens folgende Einträge notwendig:

$TTL    2D
@    IN    SOA    cdu.de. mail.cdu.de. (
2009052401 ; Serial
8H         ; Refresh
2H         ; Retry
4W         ; Expire
2D )       ; Negative Cache TTL
;
@    IN    NS   <IP des eigenen DNS-Servers>
*    IN    A    <IP der Stoppseite>

In der vorletzten Zeile wird der eigene DNS-Server als der für die Zone *.cdu. zuständige angegeben. In der letzten Zeile wird die bei der Auflösung von URL in IP-Adresse zurückgegebene IP, also die der Stoppseite, eingetragen. Details zu den weiteren Einträgen sind in den Wikipedia-Artikeln SOA Resource Record und Zonendatei zu finden.

Im Beispiel ist die IP-Adressen des DNS-Servers mit der des Stoppschilds identisch:

@    IN    A    78.46.131.100
*    IN    A    78.46.131.100

Abschließend muss BIND mit einem Eintrag in der Datei named.conf.local die Zonendatei db.cdu.de bekannt gemacht werden (Falls noch nicht Vorhanden, muss im Verzeichnis /etc/bind/ die Datei named.conf.local angelegt und in der Datei named.conf mit der Zeile include “/etc/bind/named.conf.local”; eingebunden werden):

zone "cdu.de" {
type master;
file "/etc/bind/db.cdu.de";
};

Wirksam werden die Änderungen nach einem  Neustart von BIND. Mit dem Befehl host können die Änderungen getestet werden. Als Antwort auf host cdu.de sollte kommen:

cdu.de has address 193.219.105.10

Und nun wird der manipulierte DNS-Server mit host cdu.de 78.46.131.100 befragt:

Using domain server:
Name: 78.46.131.100
Address: 78.46.131.100#53
Aliases:

cdu.de has address 78.46.131.100

Um das Stoppschild unter cdu.de im Browser zu bewundern, muss im eigenen Resolver, das ist die von DNS-Servern Informationen abrufende Software, die IP des manipulierten DNS-Servers an erster Stelle eingetragen werden.

Zu beachten ist  noch, dass z.B. unter www.cdu.de/sitemap.htm ein “404 – Seite nicht gefunden” Fehler im Browser angezeigt wird, da auf dem Server des Stoppschildes keine sitemap.htm Datei existiert. Quick & Dirty kann dies durch eine serverseitige Umleitung der Fehlerseite auf das Stoppschild gelöst werden. Fertig ist die Zensur-Infrastruktur.

Eine Manipulation des DNS ist so simpel, da vor knapp 30 Jahren beim Entwurf des DNS niemand diese Möglichkeit beachtet hat – wer kommt auch auf die Idee, dass in 30 Jahren die Regierung fordert, Telefonbücher zu manipulieren?

Tags: , , , ,

Eine Antwort zu “Anleitung zur Einrichtung einer “DNS-Sperre””

Hinterlasse eine Antwort