Wie OnionShare funktioniert

OnionShare startet Webserver lokal auf deinem Rechner und macht sie anderen Leuten als Tor `Onion-Dienste<https://community.torproject.org/onion-services/>`_ zugänglich.

OnionShare-Webadressen werden standardmäßig mit einem privaten Schlüssel geschützt.

OnionShare-Adressen sehen in etwa so aus:

http://oy5oaslxxzwib7fsjaiz5mjeyg3ziwdmiyeotpjw6etxi722pn7pqsyd.onion

Und private Schlüssel sehen in etwa so aus:

K3N3N3U3BURJW46HZEZV2LZHBPKEFAGVN6DPC7TY6FHWXT7RLRAQ

Sie sind für die sichere Weitergabe dieser URL und des privaten Schlüssels verantwortlich. Die Weitergabe kann z.B. über eine verschlüsselte Chat-Nachricht, oder eine weniger sichere Kommunikationsmethode, wie eine unverschlüsselte E-Mail, erfolgen. Dies Entscheidung wie Sie Ihren Schlüssel weitergeben sollten Sie aufgrund Ihres persönlichen Sicherheitsmodells treffen.

Die Empfänger Ihrer URL müssen diese in ihrem Tor Browser öffnen, um auf den OnionShare-Dienst zuzugreifen. Der Tor Browser wird nach einem privaten Schlüssel fragen, welcher anschließend vom Empfänger, z.B. über Copy-Paste, eingegeben werden kann.

_images/private-key.png

Solltest du deinen Laptop in den Ruhemodus versetzen und währenddessen Dateien mit jemandem teilen, so werden die Dateien erst versandt, sobald sich dein Laptop nicht mehr im Ruhemodus befindet. OnionShare funktioniert am besten, wenn du mit den Leuten, mit denen du Dateien teilst, in Echtzeit in Verbindung stehst.

Weil dein eigener Rechner der Webserver ist, hat kein Dritter Zugriff auf das, was ihr mit OnionShare tut, nicht einmal die Entwickler von OnionShare. Es ist vollständig geheim. Und weil OnionShare auch auf Tors Onion-Diensten basiert, schützt es auch deine Anonymität. Für weitere Informationen siehe security design.

Dateien freigeben

Du kannst OnionShare dazu verwenden, um Dateien und Ordner sicher und anonym an andere Leute zu schicken. Öffne einfach einen Freigabe-Reiter, ziehe die freizugebenden Dateien und Ordner dort hinein und klicke auf „Freigabe starten“.

_images/share.png

Nachdem du Dateien hinzugefügt hast, werden dir Einstellungsmöglichkeiten angezeigt. Wähle die passenden Einstellungen, bevor du die Freigabe startest.

_images/share-files.png

Sobald jemand deine Dateien vollständig heruntergeladen hat, wird OnionShare das Teilen der Dateien automatisch beenden und die Webseite vom Internet nehmen. Um mehreren Personen das Herunterladen zu ermöglichen, öffne die Einstellungen von OnionShare und entferne den Haken bei „Server nach Download der Dateien stoppen“.

Wenn du diesen Haken entfernst, können Leute außerdem die Dateien einzeln herunterladen (anstelle einer einzigen komprimierten Datei, die alle Einzeldateien enthält).

Wenn du bereit zum Freigeben bist, klicke auf den „Freigabe starten”-Button. Du kannst jederzeit auf “„Freigabe beenden” klicken oder OnionShare beenden, um die Webseite augenblicklich vom Internet zu nehmen. Du kannst außerdem auf den „Nach oben”-Pfeil in der oberen rechten Ecke klicken, um dir den Verlauf und den Fortschritt der Downloads anzeigen zu lassen.

_images/share-sharing.png

Jetzt, wo du eine OnionShare-Freigabe hast, kopiere die Adresse und schicke sie der Person, die die Dateien empfangen soll. Falls die Dateien vor Anderen geschützt bleiben sollen oder die Empfängerperson anderweitig in Gefahr ist, nutze einen verschlüsselten Messenger zum senden der Adresse.

Diese Person muss nun die Adresse mit dem Tor Browser öffnen. Nachdem sie sich mit dem zufällig erzeugten Passwort eingeloggt hat, das in der Adresse enthalten ist, kann sie die Dateien direkt von deinem Rechner über den Link „Dateien herunterladen” in der Ecke herunterladen.

_images/share-torbrowser.png

Dateien und Nachrichten empfangen

Du kannst OnionShare verwenden, um anderen Personen zu ermöglichen, anonym Dateien und Nachrichten direkt an deinen Computer zu übertragen, wodurch er quasi zu einer Art anonymer Dropbox wird. Öffne dazu den Tab „Empfangen“ und wähle die gewünschten Einstellungen.

_images/receive.png

Du kannst ein Verzeichnis zum Speichern von Nachrichten und Dateien auswählen, die übermittelt werden.

Du kannst die Option „Übermittlung von Nachrichten deaktiveren“ anwählen, wenn du nur Datei-Uploads zulassen möchtest. Umgekehrt ist das genauso möglich, wenn du nur Nachrichten zulassen möchtest, indem du „Hochladen von Dateien deaktivieren“ anwählst. So kannst du beispielsweise ein anonymes Kontaktformular errichten.

Du kannst die Option „Benachrichtigungs-Webhook verwenden“ anwählen und eine Webhook-URL festlegen, wenn du über neu eingetroffene Dateien oder Nachrichten bei deinem OnionShare Service benachrichtigt werden willst. Wenn du dieses Feature benutzt, stellt OnionShare jedes Mal, wenn eine neue Datei oder Nachricht eingetroffen ist, eine HTTP POST Anfrage an die von dir festgelegte URL. Wenn du beispielsweise eine verschlüsselte Nachricht über die Messaging-App Keybase erhalten willst, starte eine Unterhaltung mit dem @webhookbot, schreibe ``!webhook create onionshare-alerts``und der Bot antwortet mit einer URL. Diese URL verwendest du als Webhook-URL. Wenn nun jemand eine Datei oder Nachricht an deinen OnionShare Service übermittelt, erhältst du eine Nachricht vom @webhookbot auf Keybase.

Wenn du bereit bist, klicke auf „Empfangsmodus starten“. Jetzt startet der OnionShare Service. Jeder, der zu der angezeigte Adresse in seinem Tor Browser navigiert, hat die Möglichkeit, Dateien und Nachrichten direkt an deinen Computer zu übertragen.

_images/receive-sharing.png

Du kannst außerdem auf den „Nach unten”-Pfeil in der oberen rechten Ecke klicken, um dir den Verlauf und den Fortschritt der an deinen Computer übertragenen Dateien anzeigen zu lassen.

So sieht es aus, wenn dir jemand Dateien und Nachrichten sendet.

_images/receive-torbrowser.png

Wenn jemand Dateien oder Nachrichten an deinen Empfangsdienst überträgt, werden sie standardmäßig in einem Ordner namens OnionShare in dem Home-Verzeichnis deines Computers abgelegt. Die empfangenen Dateien werden automatisch in Unterordnern anhand des Empfangszeitpunktes organisiert.

Ein solcher OnionShare-Empfangsdienst ist besonders für Journalisten und andere interessant, die Dokumente von anonymen Quellen erhalten. So genutzt, ist OnionShare sozusagen eine leichtgewichtige, einfachere und nicht ganz so sichere Variante von SecureDrop, einem Einsendesystem für Whistleblower.

Nutzung auf eigene Gefahr

Ähnlich wie bei bösartigen E-Mail-Anhängen kann es sein, dass jemand versucht deinen Rechner anzugreifen, indem er eine bösartige Datei auf deinen OnionShare-Dienst hochlädt. OnionShare selbst hat keine Sicherheitsmechanismen, um deinen Rechner vor solchen Angriffen zu schützen.

Wenn du ein Office- oder PDF-Dokument über OnionShare erhältst, kannst du diese in sichere PDF-Dateien überführen, indem du Dangerzone nutzt. Du kannst dich auch schützen, indem du nicht vertrauenswürdige Dokumente in Tails oder in einer Qubes-Wegwerf-VM öffnest.

Allerdings ist es stets unbedenklich, über OnionShare gesendete Textnachrichten zu öffnen.

Tipps für einen OnionShare-Empfangsdienst

Wenn du deinen eigenen anonymen OnionShare-Briefkasten betreiben willst, solltest du dies auf einem separaten, eigens dafür eingerichteten Rechner tun, der immer läuft und mit dem Internet verbunden ist; nicht mit dem Rechner, den du sonst regelmäßig benutzt.

Falls du deine OnionShare-Adresse auf deiner Webseite oder deinen Social Media-Profilen veröffentlichen willst, solltest du den entsprechenden Reiter speichern (siehe Reiter speichern) und den Service als öffentlich festlegen. (siehe disable password). In diesem Fall wäre es auch eine gute Idee, einen benutzerdefinierten Titel festzulegen (siehe Benutzerdefinierte Titel).

Eine Webseite hosten

Um eine statische HTML-Webseite mit OnionShare zu hosten, öffne den Webseiten-Reiter, ziehe die Dateien und Ordner hinein, aus denen die statische Webseite besteht, und klicke auf „Webseite veröffentlichen“.

_images/website.png

Wenn du eine index.html-Datei hinzufügst, wird sie beim Öffnen der Webseite dargestellt. Du solltest auch alle anderen HTML-Dateien sowie CSS- und JavaScript-Dateien und Bilder mit einbeziehen, aus denen die Webseite besteht. (Beachte, dass OnionShare nur statische Webseiten hosten kann. Es kann keine Webseiten hosten, die Code ausführen oder auf Datenbanken zugreifen. So kann man z.B. WordPress nicht verwenden.)

Wenn du keine index.html-Datei hast, wird stattdessen eine Verzeichnisstruktur angezeigt; beim Aufruf können Personen die Dateien durchsehen und herunterladen.

Nachdem du Dateien hinzugefügt hast, werden dir Einstellungsmöglichkeiten angezeigt. Wähle die passenden Einstellungen, bevor du die Freigabe startest.

_images/website-files.png

Content-Security-Policy

Standardmäßig sichert OnionShare deine Webseite, indem es einen strikten Content-Security-Policy-Header setzt. Das verhindert allerdings auch das Laden von Inhalten von Drittanbietern innerhalb deiner Webseite.

If you want to load content from third-party websites, like assets or JavaScript libraries from CDNs, you have two options:

  • You can disable sending a Content Security Policy header by checking the „Don’t send Content Security Policy header (allows your website to use third-party resources)“ box before starting the service.

  • You can send a custom Content Security Policy header.

Tipps zum Betreiben eines Webseiten-Dienstes

Falls du eine Webseite längerfristig über OnionShare anbieten (also nicht nur kurz jemandem etwas zeigen) möchtest, solltest du dies auf einem separaten, eigens dafür eingerichteten Rechner tun, der immer läuft und mit dem Internet verbunden ist; nicht auf dem Rechner, den du sonst regelmäßig benutzt. Außerdem solltest du den entsprechenden Reiter speichern (see Reiter speichern), so dass du die Webseite dann mit derselben Adresse anbieten kannst, wenn OnionShare zwischenzeitig beendet und neu gestartet wird.

Wenn du deine Webseite öffentlich betreiben willst, solltest du sie als öffentlichen Dienst starten (see disable_passwords).

Anonym chatten

Mit OnionShare kannst du einen komplett anonymen, sicheren Chatroom aufsetzen, der nichts aufzeichnet. Öffne einfach einen Chat-Reiter und klicke auf „Chat starten“.

_images/chat.png

Nachdem du den Dienst gestartest hast, kopiere die OnionShare-Adresse und schicke sie den Leuten, die dem anonymen Chat beitreten sollen. Falls es wichtig ist, den Teilnehmerkreis strikt zu beschränken, solltest du einen verschlüsselten Messenger zum Teilen der OnionShare-Adresse verwenden.

_images/chat-sharing.png

Man kann dem Chatroom beitreten, indem man die OnionShare-Adresse im Tor Browser aufruft. Der Chatroom setzt JavaScript voraus, d.h. jeder Teilnehmer muss im Tor Browser seinen Sicherheitslevel auf „Standard“ oder „Safer“ (anstelle von Safest) setzen.

Beim Betreten des Chatrooms wird einem ein zufällig erzeugter Name zugewiesen. Man kann den Namen ändern, indem man einen neuen Namen im Textfeld in der linken Seitenleiste eingibt und Enter drückt. Ein Chatverlauf wird nicht angezeigt, selbst wenn andere bereits zuvor im Chatroot gechattet hatten, da der Chatverlauf nirgendwo gespeichert wird.

_images/chat-torbrowser.png

In einem OnionShare-Chatroom ist jeder anonym. Jeder kann seinen Namen beliebig ändern und die Identität der Nutzer kann nicht überprüft werden.

Allerdings kannst du dir einigermaßen sicher sein, dass die Leute im Chatroom auch wirklich deine Freunde sind, wenn du die OnionShare-Adresse nur an eine kleine Anzahl vertrauenswürdiger Freunde über einen verschlüsselten Kanal geschickt hast.

Wozu soll das gut sein?

Worin liegt der Sinn in OnionShare-Chatrooms, wenn du ohnehin einen verschlüsselten Messenger benutzen solltest? Sie hinterlassen weniger Spuren.

Solltest du zum Beispiel eine Nachricht an eine Signal-Gruppe schicken, dann bleibt eine Kopie deiner Nachricht auf jedem Gerät aller Teilnehmer der Gruppe.

OnionShare-Chats ermöglichen es außerdem einander unbekannten Personen, miteinander zu chatten ohne dafür eigene Benutzerkonten erstellen zu müssen. Beispielsweise könnte eine Quelle einem Journalisten über eine Wegwerf-E-Mail-Adresse eine OnionShare-Adresse schicken und dann warten, bis der Journalist den Chat betritt, ohne dass die Quelle dabei ihre Anonymität gefährdet.

Wie funktioniert die Verschlüsselung?

Weil OnionShare auf Tors Onion-Dienste aufbaut, sind alle Verbindungen zwischen Tor Browser und OnionShare Ende zu Ende verschlüsselt (E2EE). Wenn jemand eine Nachricht in einem OnionShare-Chatroom absetzt, wird diese durch die E2EE-Onion-Verbindung an den Chatserver gesendet, welcher sie dann wiederum an alle anderen Mitglieder des Chatrooms über sog. WebSockets weiterschickt, wiederum durch deren eigene E2EE-Onion-Verbindungen.

OnionShare bringt keine eigene Chatverschlüsselung mit sich. Die Verschlüsselung beruht stattdessen auf der des Onion-Dienstes.