Skip to content

Onion Services zum Mitnehmen

Eines meiner Hauptthemen hier im Blog ist Tor bzw. die Anonymität. So versuche auch ich dogfooding zu betreiben, also Tor beim täglichen Browsen zu verwenden. Hin und wieder stoße ich dabei auf Probleme. Entweder ich stoße auf die CAPTCHAs von CloudFlare oder die Seite öffnet sich gleich gar nicht. In letzteren Fällen wird Tor aktiv ausgesperrt. Doch was tun, wenn man die Seiten dennoch per Tor besuchen will?

Zum Glück gibt es das »Darknet«. :-) Mittels Tor Onion Services ist es möglich, beliebige Seiten zu spiegeln. Das heißt, eine Rechner ruft die Seite auf und liefert das Ergebnis über eine Onion-Seite aus. Bei der praktischen Umsetzung hilft das Enterprise Onion Toolkit (EOTK).

Untenstehend findet ihr einige Onion Services, die ich für mich oder andere aufgesetzt habe. Wenn ihr weitere Wünsche habt, hinterlasst einen Kommentar. Ich erwarte, dass die Liste im Laufe der Zeit weiter wächst:

Ich erhielt eine Nachfrage, Wikipedia auch als Onion Service anzubieten. Die Seite lässt sich über Tor problemlos aufrufen und sperrt Bearbeitungen von Tor-Servern. Alec Muffett hat dies schon versucht und mir dringend abgeraten, dies ebenfalls zu tun. Hier erscheint es sinnvoller, Überzeugungsarbeit bei Wikipedia zu leisten.

OSINT: SSH und Tor Hidden Services aufdecken

Mit der Anonymität ist das so eine Sache. Passt man nicht richtig auf oder macht etwas falsch, so kann der ganze Aufwand für die Katz sein. Ein solches Beispiel machte auf Twitter die Runde.

Tor Hidden Services sind eine Möglichkeit, um anonym Informationen anzubieten. Das heißt, der Leser soll herausfinden können, wer diese Informationen anbietet. Neben Webseiten lassen sich die Hidden Services für verschiedene Zwecke einsetzen. Ich nutze die beispielsweise sehr gern, um mich über SSH mit Servern zu verbinden. Dies machen offensichtlich auch andere Leute gern.

Auf der Seite von Tor müssen nur zwei Zeilen geändert werden:

HiddenServiceDir /var/lib/tor/ssh
HiddenServicePort 22 127.0.0.1:22

Nach einem Restart von Tor liegt in /var/lib/tor/ssh/hostname der Name des Hidden Service’. Unter dieser Adresse steht der Dienst zur Verfügung, solange Tor auch läuft.

Jetzt könnte eigentlich alles gut sein. Jedoch spätestens seit zmap und ähnliches Werkzeugen ist das Durchprobieren aller IPv4-Adressen sehr einfach geworden. Ein findiger Angreifer verbindet sich einfach zu allen Adressen auf Port 22 und sammelt den Fingerprint ein, falls sich einer findet. So lassen sich beispielsweise bei Shodan Fingerprints finden.

Wenn ihr nun eine Onion-Adresse seht, hinter der ein SSH-Dienst steckt, verbindet ihr euch mit dem und sucht den Fingerprint in eurer Datenbank. Findet ihr eine Übereinstimmung, kennt ihr die reale IP-Adresse des Dienstes.

Doch was lässt sich dagegen tun? Der einfachste Weg ist, den SSH-Dienst gar nicht mehr öffentlich anzubieten. Mit der Zeile ListenAddress 127.0.0.1 ist der Dienst nur noch lokal und eben als Tor Hidden Service erreichbar. Dies hat den Vorteil, dass auch die nervigen Loginversuche durch Scriptkiddies aufhören. Wenn der Dienst vorher schon als Hidden Service lief, solltet ihr darauf achten, dass ihr die beiden Dateien in dem Verzeichnis /var/lib/tor/ssh/ löscht. Tor wird dann einen neuen Hostnamen mit neuem Fingerprint erzeugen. Damit ist der Dienst wieder nicht mit diesen einfachen Mitteln aufzufinden.

Pidgin mit dem Hidden Service von jabber.ccc.de nutzen

Erweiterte Einstellungen bei PidginIch hatte kürzlich eine Diskussion, wie und ob man das Programm Pidgin mit dem Hidden Service des XMPP-Service jabber.ccc.de nutzen kann. Im Web gibt es recht wenige Anleitungen dazu. Daher will ich das hier kurz aufschreiben.

Der Hidden Service hat die Adresse okj7xc6j2szr2y75.onion. Dieser wird in Pidgin als Verbindungsserver benutzt. Um derartige Adressen nutzen zu können, muss auf eurem Rechner Tor installiert und gestartet sein. Das kann in Form des Tor Browser Bundle oder als eigene Software sein.

Zum Einrichten eures Accounts wählt ihr Konten -> Konten verwalten. Das geht auch kurz über Strg+A. Im folgenden Menü könnt ihr einen neuen Account hinzufügen oder einen existierenden Account bearbeiten. Im nun folgenden Fenster gebt ihr in das Feld Benutzer euren Benutzernamen ein. Der hat die Form euername@jabber.ccc.de.

Wechselt nun in den nächsten Reiter »Erweitert«. Das dritte Eingabefenster heißt »Verbindungsserver«. Dort tragt ihr die Onion-Adresse okj7xc6j2szr2y75.onion ein. Speichert die Einstellungen und verbindet euch mit dem Konto.

Im letzten Schritt benötigt Pidgin eine Information über den Tor-Proxy. Denn um euch mit der Onion-Adresse von oben verbinden zu können, muss die Verbindung über Tor gehen. Im Reiter »Proxy« wählt ihr aus der Liste der Proxy-Typen »SOCKS5« aus. Bei »Host« kommt 127.0.0.1 oder localhost rein. Im Feld »Port« hängt es davon ab, ob ihr das Tor Browser Bundle (Port 9150) oder einen systemweiten Tor-Daemon (Port 9050) benutzt. Im Falle des Tor Browser Bundles muss dieses noch laufen. Tragt den richtigen Port ein und speichert die Einstellungen. Nun läuft die Verbindung über den Hidden Service.

Das wars dann schon. Viel Spass beim anonymen Chatten. :-)

Update: Nach einem Hinweis von @publictorsten Tor als Voraussetzung erwähnt.

cronjob