obfs4 Pluggable Transport
obfs4 ist der am häufigsten eingesetzte Pluggable-Transport im Tor-Netzwerk – das Ding, das einen erkennbaren Tor-Handshake in etwas umwandelt, das wie zufällige Bytes aussieht, sodass ein Zensor, der die Verbindung überwacht, den Tor-Verkehr nicht von irgendetwas anderem unterscheiden kann. Wenn man versteht, wie es funktioniert, erklärt sich auch, warum einfache Systeme zur Verkehrsblockierung das Katz-und-Maus-Spiel gegen eine gut konzipierte Verschleierung verloren haben.
Der vollständige Artikeltext ist unten in englischer Sprache aufgeführt.
Das Tor-Netzwerk hat ein Problem: Der Handshake des Protokolls ist erkennbar. Ein Zensor mit Deep Packet Inspection-Funktionen kann die TLS-Erweiterungen und Zertifikatsmuster, die das Tor-Verzeichnisprotokoll verwendet, mit einem Fingerabdruck versehen und dann jeden entsprechenden Fluss blockieren. obfs4 existiert, um diesen Fingerabdruck zu umgehen, indem es dafür sorgt, dass die Wire-Bytes nicht mehr von einem einheitlich zufälligen Stream zu unterscheiden sind. Ein pluggable transport ist ein kleines Programm, das zwischen Tor und dem Netzwerk sitzt: Tor übergibt ihm Bytes, es transformiert sie auf irgendeine Weise, und ein passendes Programm auf einer Bridge macht die Transformation rückgängig, bevor es die Bytes an den Tor-Prozess der Bridge übergibt. Um Verschleierungsstrategien auszutauschen, tauschen Sie das Programm aus – es sind keine Tor-Änderungen erforderlich. obfs4 ist ein solches Programm; meek (HTTPS zu einem CDN) und Snowflake (WebRTC) sind weitere.
Was obfs4 eigentlich macht
obfs4 wurde 2014 von Yawning Angel entwickelt, um sowohl passives Fingerabdruck- als auch aktives Sondieren zu verhindern. Seine drei Säulen:
- Unterscheidbar von Random: Nach einem Schlüsselvereinbarungs-Handshake mit Ntor (dem gleichen Elliptic-Curve-Protokoll, das Tor intern verwendet) wird jedes Byte, das das Netzwerk durchquert, verschlüsselt und von einer Stream-Verschlüsselung ausgegeben. Es gibt keine Protokollmarkierungen, keine festen Header-Bytes, keine erkennbaren Muster – für einen passiven Beobachter sieht es wie einheitliche Zufallsdaten aus. obfs4-Bridges erfordern ein pro-Bridge-Geheimnis im ersten Paket vom Client. Ohne das Geheimnis weigert sich die Brücke zu antworten. Ein Zensor, der das Geheimnis nicht bereits kennt, kann nicht bestätigen, dass es sich bei dem Endpunkt um eine Tor-Brücke handelt model
obfs4 stellt keine Verbindung zu den öffentlichen Relays von Tor her – diese sind in den Verzeichnisbehörden aufgeführt und können leicht blockiert werden. Es stellt eine Verbindung zu bridges her: von Freiwilligen betriebene Relays, deren IP-Adressen in kleinen Mengen über das BridgeDB-Projekt an Benutzer verteilt werden. Jede Bridge-Zeile enthält die Adresse, den Port, den Fingerabdruck und das obfs4-Zertifikat (das gemeinsame Geheimnis, das ein Zensor zur aktiven Prüfung benötigen würde). Benutzer in zensierten Ländern rufen Bridge-Zeilen von bridges.torproject.org, dem Telegram-Bot @GetBridgesBot oder E-Mail-Autorespondern ab.
obfs2 → obfs3 → obfs4: eine Geschichte des Wettrüstens
XPLZ38 obfs2 (2012) verwendete einen gemeinsamen XOR-Schlüssel; Passive Beobachter konnten es erkennen, weil die Byteverteilung nicht ganz gleichmäßig war. obfs3 fügte einen authentifizierten Schlüsselaustausch hinzu, scheiterte aber dennoch bei aktiver Prüfung. obfs4 schloss beide Löcher gleichzeitig. Jede neue Version wurde innerhalb weniger Wochen nach der massiven Blockierung der vorherigen Version durch die Great Firewall bereitgestellt.Was sie nicht kann
obfs4 lässt den Tor-Verkehr wie zufällige Bytes aussehen. Das ist eine starke Verteidigung gegen regelbasiertes DPI – aber ein Zensor, der beschließt, alle einheitlich zufälligen Flüsse zu blockieren, kann es immer noch blockieren, auf Kosten der Zerstörung vieler legitimer Protokolle, die zufällig aussehende Verschlüsselung verwenden (einschließlich VPNs). Einige Netzwerke haben genau diese Strategie übernommen, weshalb Tor weiterhin Transporte wie Snowflake (sieht aus wie WebRTC) und meek (sieht aus wie HTTPS zu einem CDN) ausliefert, die sich innerhalb von Protokollen bewegen, die Zensoren nicht einfach verbieten können. Zu diesem Zeitpunkt können nur domänenfrontierende Transporte funktionieren.
Performance
obfs4 fügt ein paar Kilobyte Handshake-Overhead und ein paar hundert Mikrosekunden CPU pro Paket hinzu. Der Durchsatz wird im Wesentlichen durch die Bandbreite der Brücke begrenzt, nicht durch die Verschleierung. Für die meisten Benutzer IST die Brücke der Flaschenhals – es gibt weltweit nur ein paar tausend obfs4-Brücken, weit weniger als die Hauptrelais von Tor.
Häufig gestellte Fragen
- Benötige ich obfs4, wenn ich Tor normalerweise verwende?
- Nur wenn Ihr Netzwerk Tor blockiert. In Ländern ohne Tor-Zensur funktionieren die Standard-Tor-Eintrittswächter gut und sind schneller als der Durchgang über eine obfs4-Brücke. obfs4 ist für Benutzer hinter Firewalls oder DPI-Systemen gedacht, die Tor erkennen und blockieren.
- Kann mein ISP obfs4-Verbindungen erkennen?
- Bei einer gut konfigurierten obfs4-Bereitstellung ist die Erkennung schwierig. Für passive Beobachter sieht der Verkehr einheitlich zufällig aus. Ein ISP könnte einen Fingerabdruck für <em> erstellen, bei dem es sich bei den IPs</em> um bekannte Bridges handelt (und einige veröffentlichen solche Listen), aber das Protokoll selbst ist auf der Leitung undurchsichtig.
- Ist obfs4 ein VPN?
- Nein. obfs4 ist eine Transportschicht speziell für Tor. Es umhüllt den Tor-Verkehr, um einer Erkennung zu entgehen, bietet jedoch nicht die VPN-ähnliche Funktion „Der gesamte Datenverkehr von meinem Gerät geht durch diesen Tunnel“. Lesen Sie dazu unsere Artikel <a href="/learning/wireguard">WireGuard</a> und <a href="/learning/openvpn">OpenVPN</a>.
- Wie bekomme ich eine obfs4-Brücke?
- Verwenden Sie die integrierte Bridge-Anfrage des Tor-Browsers oder besuchen Sie bridges.torproject.org in einem beliebigen Browser. Wenn auch diese blockiert sind, können Sie von einer Gmail- oder Riseup-Adresse aus eine E-Mail an [email protected] mit dem Text „get transport obfs4“ senden und erhalten Bridge-Leitungen per Antwort.
- Warum wurden obfs2 und obfs3 blockiert?
- Die XOR-Verschlüsselung von obfs2 erzeugte subtile Verzerrungen bei der Byteverteilung, die durch statistische Analysen erkennbar waren. obfs3 war anfällig für aktives Sondieren – Zensoren konnten eine Tor-Brücke bestätigen, indem sie eine Verbindung herstellten und sich die Antwort ansahen. obfs4 hat beides mit ordnungsgemäßer authentifizierter Verschlüsselung und einem probing-resistenten Handshake behoben.