Was ist XOR-Verschleierung? Eine Anleitung zu allem rund um OpenVPN-Scramble

OpenVPN Scramble ist eine Möglichkeit, OpenVPN-Verkehr zu verbergen (zu verschleiern), sodass er nicht wie OpenVPN-Verkehr aussieht. Es ist hochwirksam gegen viele Deep Packet Inspection (DPI)-Techniken und kann sogar ausgeklügelte VPN-Blöcke gut umgehen.

OpenVPN Scramble verwendet den XOR-Verschlüsselungsalgorithmus. Es lässt sich sehr gut auftragen und ist auch sehr leicht. Viele VPN-Dienste wenden sich OpenVPN Scramble zu, um fortschrittliche VPN-Blöcke zu überwinden, wie sie von China und Ägypten verwendet werden.

Die XOR-Chiffre

XOR wird normalerweise Ex-oder ausgesprochen und steht für Exklusiv oder, eine Art mathematischer Operation, die von der XOR-Chiffre verwendet wird. Der XOR-Algorithmus ist im Grunde eine einfache Substitutions-Chiffre. Mit anderen Worten, es ersetzt einfach jedes alphanumerische Zeichen in einer Zeichenfolge, die ihm zugeführt wird, durch eine andere Zahl.

Entscheidend ist, dass der Algorithmus reversibel ist. Wenn Sie also den Ausgabe-String wieder in denselben Algorithmus einspeisen, erhalten Sie am Ende den ursprünglichen String mit entfernter Chiffre.

Diese Art von Verschlüsselung wird auch als additive Verschlüsselung bezeichnet und ist die einfachste Art von Verschlüsselung, die es gibt. Es ist die Art von ROT13-Chiffre, die clevere Kinder oft verwenden, um geheime Nachrichten zu erstellen. Abgesehen davon, dass es einen viel ausgefeilteren Algorithmus verwendet, als die meisten Kinder sich ausdenken können.

Was ist die XOR-Verschlüsselung

OpenVPN-Scramble

Wenn das nicht sehr sicher klingt, ist es nicht. Tatsächlich kann eine einfache XOR-Chiffre mit einfachen Frequenzanalysetechniken (Suche nach Mustern in der Ausgabezeichenfolge) leicht gebrochen werden.

OpenVPN Scramble verwendet nicht die XOR-Verschlüsselung, um Ihre Daten zu sichern. OpenVPN macht das.

OpenVPN verleiht verschlüsselten Daten jedoch eine unverwechselbare Signatur, die mit DPI erkannt werden kann. Indem der Wert jedes durch OpenVPN geschützten Datenbits durch einen anderen Wert ersetzt wird, verschlüsselt XOR die Daten so, dass diese Signatur sehr schwer zu erkennen ist.

Und für VPN-Dienste hört das XOR-Gold hier nicht auf. Der Open-Source-Patch openvpn_xor Scramble macht es ihnen fast trivial, XOR Scramble zu implementieren und ihren Kunden anzubieten.

Wie effektiv ist OpenVPN Scramble?

Das Scrambling von OpenVPN-verschlüsselten Daten mit der XOR-Chiffre macht es für Systeme wie die Great Firewall of China schwieriger, sie zu erkennen.

Die XOR-Verschleierung hat eine gewisse Bekanntheit erlangt. Seine geringe Größe und einfache Implementierung machen es zu einer beliebten Wahl für Malware-Entwickler, die ihre bösen Code-Bits vor der Anti-Malware-Erkennung verbergen möchten.

Viele Malware-Entwickler verwenden gerne nur einen 1-Byte-Wert als Schlüssel. Der von diesem Schlüssel verschleierte Code durchläuft dann jedes Byte der zu codierenden Daten, wobei jedes Byte mit dem ausgewählten Schlüssel XOR-verknüpft wird.

Daten, die mit einem 1-Byte-Wertschlüssel verschleiert wurden, sind relativ leicht zu erkennen, da sie sich wiederholende Muster in dem ansonsten zufällig erscheinenden Code erzeugen. Eine Reihe von Programmen wurde entwickelt, um genau dies zu tun.

Es ist jedoch möglich, längere Schlüssel bis zum Byte-Wert der zu verschleiernden Daten auszuwählen. Die Wirksamkeit der XOR-Funktion beim Verschlüsseln von Daten hängt vollständig davon ab, wie zufällig der verwendete Schlüssel ist.

Was bedeutet das alles? Nun, die weit verbreitete Verwendung von XOR-Verschleierung für Malware ist so etwas wie ein Beweis für ihre Wirksamkeit.

NordVPN ist ein VPN-Unternehmen, das XOR-Verschlüsselung anbietet, also haben wir seinen Experten für digitale Privatsphäre, Daniel Markuson, gebeten, zu kommentieren, wie effektiv es bei der Überwindung von VPN-Blöcken ist. Er schlägt vor, das folgende Experiment mit dem Wireshark-Paketanalysator durchzuführen (sehen Sie sich unsere Anleitung zur Einrichtung von Wireshark an):

1. Aktivieren Sie normales VPN. Wireshark sieht den Datenverkehr als OpenVPN.

Öffnen Sie VPN-Verschlüsselung XOR

2. Aktivieren Sie Verschleiertes VPN über TCP (die XOR-Option von NordVPN). Wireshark identifiziert den Datenverkehr nicht mehr als OpenVPN.

Verschleiertes VPN über TCP

XOR funktioniert definitiv. Ist es immer wirksam gegen die Bemühungen der Regierung, den OpenVPN-Verkehr zu blockieren? Nein überhaupt nicht. Aber wie das obige Experiment zeigt, ist es komplizierter, VPN-Verkehr zu identifizieren, wenn XOR verwendet wird. Es ist daher schwieriger zu blockieren.

Kontroverse

Trotz seiner Vorteile ist der openvpn_xorpatch etwas umstritten. Tatsächlich haben die OpenVPN-Entwickler es abgelehnt, es in einer offiziellen Version von OpenVPN zu implementieren, und raten von seiner Verwendung ab.

Wir (OpenVPN-Entwickler) ermutigen Leute, die ihre eigenen Versionen von OpenVPN erstellen, nicht dazu, das Drahtprotokoll auf diese Weise zu ändern, ohne dass der Patch einer ordnungsgemäßen Patch-Überprüfung unterzogen wurde und mögliche Sicherheitsrisiken im Zusammenhang mit einer solchen Änderung bewertet wurden.

Und wir raten besonders davon ab, einen solchen Ansatz zu verwenden, wenn es eine weitaus bessere Lösung gibt, die von der TOR-Community verwendet wird. Es heißt obfsproxy und kann zusammen mit OpenVPN verwendet werden, ohne dass OpenVPN neu kompiliert werden muss.

Trotz dieser Warnungen haben sich die Entwickler des Open-Source-MacOS-VPN-Clients Tunnelblick jedoch dafür entschieden, eine modifizierte Version des XOR-Patches in ihre Software aufzunehmen:

Unabhängig von der Entscheidung der OpenVPN-Entwickler, den Patch nicht in OpenVPN aufzunehmen, ist der Patch attraktiv, weil er so einfach zu implementieren ist: Wenden Sie den Patch einfach auf den OpenVPN-Server und den OpenVPN-Client an und fügen Sie eine einzige, identische Option zur Konfiguration hinzu Dateien für jeden. Die Verwendung von obfsproxy ist komplizierter, da ein weiteres, separates Programm sowohl auf dem Server als auch auf dem Client ausgeführt werden muss.

Da der Patch so einfach zu implementieren ist, ist der Patch in allen Versionen von OpenVPN enthalten, die ab Build 4420 in Tunnelblick enthalten sind.

Es ist erwähnenswert, dass die Tunnelblick-Entwickler festgestellt haben, dass der ursprüngliche XOR-Patch kritische Fehler aufweist, und daher eine aktualisierte Version des Patches veröffentlicht haben, die alle gefundenen Probleme behoben hat:

Große Organisationen haben die Fähigkeit und Macht, Datenverkehr zu ‚entschlüsseln‘ und ihn als OpenVPN-Verkehr zu erkennen, und die durch diesen Patch bereitgestellte Verschleierung ist so rudimentär, dass eine relativ einfache Kryptoanalyse wahrscheinlich auch in der Lage sein wird, den Inhalt zu entschlüsseln.“

Wir hoffen natürlich, dass VPN-Anbieter, die OpenVPN Scramble anbieten, diesen verbesserten XOR-Patch verwenden oder ähnliche Änderungen am Original vorgenommen haben.

Alternativen zu OpenVPN Scramble

Obfsproxy

Die OpenVPN-Entwickler haben eindeutig ihre bevorzugte Verschleierungstaktik obsfproxy, ein Tool, das entwickelt wurde, um Daten in eine Verschleierungsschicht zu verpacken.

Obfsproxy wurde vom Tor-Netzwerk entwickelt, hauptsächlich als Reaktion darauf, dass China den Zugang zu öffentlichen Tor-Knoten blockiert. Es ist jedoch unabhängig von Tor und kann für OpenVPN konfiguriert werden.

Obfsproxy wird verwendet, um austauschbare Transporte auszuführen, die den VPN- (oder Tor-) Verkehr verschlüsseln. Es unterstützt eine Reihe dieser austauschbaren Transporte, aber obfs4 ist das neueste hochmoderne „Looks-like-Nothing“-Verschleierungsprotokoll von Tor Project.

Stunnel

Dies ist eine weitere gute VPN-Verschleierungstaktik. Es funktioniert, indem es den VPN-Verkehr durch einen TLS/SSL-Tunnel leitet. TLS/SSL ist die von HTTPS verwendete Verschlüsselung, sodass VPN-Verbindungen (normalerweise OpenVPN), die durch diese TLS/SSL-Tunnel geleitet werden, nur sehr schwer von normalem HTTPS-Verkehr zu unterscheiden sind. Weitere Informationen finden Sie in unserem HTTPS-Leitfaden.

Dies liegt daran, dass die OpenVPN-Daten in eine zusätzliche Ebene der TLS/SSL-Verschlüsselung eingeschlossen sind. Da DPI-Techniken diese „äußere“ Verschlüsselungsschicht nicht durchdringen können, können sie die im Tunnel verborgene OpenVPN-Verschlüsselung nicht erkennen.

Fazit

OpenVPN Scramble ist für VPN-Dienste einfach bereitzustellen und kann beim Umgehen von VPN-Blöcken sehr effektiv sein, aber es ist nicht so robust beim Verbergen von VPN-Datenverkehr wie obfsproxy oder stunnel.

Der einfache Versuch, ein VPN zu verwenden, ist an sehr wenigen Orten der Welt illegal. Wenn Ihre VPN-Verbindung also blockiert ist, schadet es kaum, zu sehen, ob OpenVPN Scramble sie entsperrt, wahrscheinlich wird es das.

In den seltenen Fällen, in denen Sie tatsächlich in Schwierigkeiten geraten könnten, wenn die VPN-Nutzung entdeckt wird, sind jedoch obfsproxy oder stunnel sicherer.