Skip to content

Mit Tor die Zensur umgehen

Beim Artikel zu Picidae hatte ich in den Kommentaren versprochen, etwas zur Umgehung der Zensur mittels Tor zu schreiben. Heute ist es nun soweit.

Tor ist ja per se schon gut geeignet, um unbeobachtet zu kommunizieren. Jedoch könnten Angreifer auf die Idee kommen, einfach die Kommunikation über Tor zu blockieren und schon funktioniert dieser Kanal nicht mehr. Die Schwachstellen, die hierfür gern benutzt werden, sind die öffentlich verfügbaren Verzeichnisserver. Denn jeder Client muss sich von dort aktuelle Informationen über die verfügbaren Tor-Server herunterladen. Wenn die Verbindung zu allen der fünf Verzeichnisserver geblockt wird, dann hat der Client keine Informationen und kann auch keine Verbindung aufbauen. Der Angreifer könnte auch die Verzeichnisinformationen runterladen und die IP-Adressen der einzelnen Tor-Server extrahieren (awk ‘/^router/ { print $3 }’ /var/lib/tor/cached-routers). Jetzt kann die Verbindung zu den Rechnern gezielt über den Paketfilter gesperrt werden. Ein dritter Weg liegt in der Prüfung des HTTP-Verkehrs. Tor lädt die Verzeichnisinformationen über HTTP herunter. Somit kann man gezielt Verbindungsanfragen sperren. In der Praxis filtern viele auf den String “tor”. Diese Maßnahme lässt sich am einfachsten umgehen. In den neueren Tor-Versionen gibt es eine Option TunnelDirConns. Sobald diese auf 1 gesetzt wird, lädt der Tor-Client die Verzeichnisinformationen über HTTPS herunter und der Filter läuft ins Leere.

Die beiden zuerst beschriebenen Fälle sind etwas komplizierter. Seit diesem Jahr arbeiten die Entwickler daran, Mechanismen zur Lösung des Problems in Tor einzuarbeiten. Die Theorie basiert auf folgendem Design. Die ursprüngliche Idee stammt vom JAP und wurde für Tor weiterentwickelt. Der Grundgedanke besagt, dass man sich nicht direkt mit dem Netzwerk verbindet, sondern Hilfen, so genannte Brückenserver, benutzt. Diese nehmen eine Anfrage entgegen und leiten sie dann an das Tor-Netzwerk weiter. Für einen effektiven Schutz gegen Zensur ist es wichtig, dass die Brückenserver nicht als solche erkannt werden. Das Tor-Projekt geht verschiedene Wege. Zum einen muss ein Brückenserver nicht in einem zentralen Verzeichnis registriert sein. Das heißt, ihr könnt zu Hause selbst einen aufsetzen, von dem nur ihr wisst und gebt die Adresse des Servers an Freunde weiter. Ein dritter sieht nur eine SSL-Verbindung zu dem Server und kann nicht sagen, welche Inhalte transportiert werden. Wenn du dich entscheidest, den Brückenserver bei einem Verzeichnisserver anzumelden, wird von seiten des Projektes viel getan, um dessen Identität zu verschleiern. Details findet ihr in dem oben erwähnten Designdokument.

Wenn ihr einen Brückenserver ausprobieren wollt, reicht es, die Option UseBridges in der torrc auf 1 zu setzen. Solltet ihr einen speziellen Server nutzen wollen, dann kommt noch die Zeile Bridge 12.34.56.78:9009 hinzu. Sie legt fest, dass der Brückenserver auf der IP-Adresse 12.34.56.78 auf Port 9009 erreichbar ist. Wenn ihr den Fingerprint des Servers könnt, schreibt diesen hinter die IP-Adresse. Nun kommuniziert Tor immer über den Brückenserver. Damit sollte es einem Angreifer nicht mehr so ohne Weiteres möglich sein, eure Kommunikation mit Tor zu stören.

Momentan sind Brückenserver nur im experimentellen Code von Tor enthalten. Soweit ich das mitbekommen habe, wird diese in den nächsten Wochen freigegeben und der Code fließt in die stabile Version mit ein.

Trackbacks

Qbi's Weblog on : Suchbegriffe im November

Show preview
Ich schaue gerade durch die Suchbegriffe des letzten Monats und staune, wie so oft, mit welchen Suchen Leute auf meine Webseite finden. Der Hauptsuchbegriff hat etwas mit LaTeX zu tun. Mehr als die Hälfte aller Suchen kommen mit diesem Kontext hier an. Ei

Comments

Display comments as Linear | Threaded

No comments

Add Comment

Enclosing asterisks marks text as bold (*word*), underscore are made via _word_.
Standard emoticons like :-) and ;-) are converted to images.
BBCode format allowed
E-Mail addresses will not be displayed and will only be used for E-Mail notifications.

To prevent automated Bots from commentspamming, please enter the string you see in the image below in the appropriate input box. Your comment will only be submitted if the strings match. Please ensure that your browser supports and accepts cookies, or your comment cannot be verified correctly.
CAPTCHA

You can use [geshi lang=lang_name [,ln={y|n}]][/geshi] tags to embed source code snippets.
Form options
cronjob