Erkennung von OpenVPN-Sitzungen im Transitverkehr

Eine Forschergruppe der University of Michigan veröffentlichte die Ergebnisse einer Studie über die Möglichkeit der Identifizierung (VPN-Fingerprinting) von Verbindungen zu OpenVPN-basierten Servern bei der Überwachung des Transitverkehrs. Als Ergebnis wurden drei Methoden zur Identifizierung des OpenVPN-Protokolls unter anderen Netzwerkpaketen identifiziert, die in Verkehrskontrollsystemen verwendet werden können, um OpenVPN-basierte virtuelle Netzwerke zu blockieren.

Tests der vorgeschlagenen Methoden im Netzwerk des Internetanbieters Merit, das mehr als eine Million Benutzer hat, zeigten, dass 85 % der OpenVPN-Sitzungen mit einem geringen Maß an Fehlalarmen identifiziert werden können. Zum Testen wurde ein Toolkit vorbereitet, das zunächst im passiven Modus den OpenVPN-Verkehr im laufenden Betrieb erkannte und dann die Richtigkeit des Ergebnisses durch eine aktive Serverprüfung überprüfte. Auf dem von den Forschern erstellten Analysegerät wurde ein Verkehrsfluss mit einer Intensität von etwa 20 Gbit/s gespiegelt.

 Erkennung von OpenVPN-Sitzungen im Transitverkehr

Während des Experiments konnte der Analysator erfolgreich 1718 von 2000 Test-OpenVPN-Verbindungen identifizieren, die von einem betrügerischen Client hergestellt wurden, der 40 verschiedene typische OpenVPN-Konfigurationen verwendete (die Methode funktionierte bei 39 von 40 Konfigurationen erfolgreich). Darüber hinaus wurden in den acht Tagen des Experiments 3638 OpenVPN-Sitzungen im Transitverkehr identifiziert, von denen 3245 Sitzungen bestätigt wurden. Es wird darauf hingewiesen, dass die Obergrenze falsch positiver Ergebnisse bei der vorgeschlagenen Methode drei Größenordnungen niedriger liegt als bei zuvor vorgeschlagenen Methoden, die auf dem Einsatz von maschinellem Lernen basieren.

Die Leistungsfähigkeit von OpenVPN-Verkehrsüberwachungs- und Schutzmethoden in kommerziellen Diensten wurde separat bewertet – von 41 getesteten VPNBei 34 Diensten, die OpenVPN-Verkehrsverschleierungsmethoden nutzten, konnte der Datenverkehr identifiziert werden. Die nicht erkannten Dienste verwendeten neben OpenVPN zusätzliche Verschleierungsebenen (z. B. die Weiterleitung des OpenVPN-Verkehrs über einen zusätzlichen verschlüsselten Tunnel). Die meisten der erfolgreich identifizierten Dienste nutzten Verkehrsverzerrung mittels XOR-Operation, zusätzliche Verschleierungsebenen ohne ausreichende Randomisierung des Datenverkehrs oder das Vorhandensein unverschleierter OpenVPN-Dienste auf demselben Netzwerk. Server.

Die beteiligten Identifizierungsmethoden basieren auf der Bindung an OpenVPN-spezifische Muster in unverschlüsselten Paketheadern, ACK-Paketgrößen und Serverantworten. Im ersten Fall kann eine Bindung an das Feld „Opcode“ im Paketheader als Objekt zur Identifizierung in der Verbindungsaushandlungsphase verwendet werden, das einen festen Wertebereich annimmt und sich je nach Verbindung auf eine bestimmte Weise ändert Setup-Phase. Bei der Identifizierung geht es darum, eine bestimmte Folge von Opcode-Änderungen in den ersten N-Paketen des Flusses zu identifizieren.

Die zweite Methode basiert auf der Tatsache, dass ACK-Pakete in OpenVPN nur in der Phase der Verbindungsaushandlung verwendet werden und gleichzeitig eine bestimmte Größe haben. Die Identifizierung basiert auf der Tatsache, dass ACK-Pakete einer bestimmten Größe nur in bestimmten Teilen der Sitzung auftreten (z. B. ist bei der Verwendung von OpenVPN das erste ACK-Paket normalerweise das dritte in der Sitzung gesendete Datenpaket).

 Erkennung von OpenVPN-Sitzungen im Transitverkehr

Die dritte Methode ist eine aktive Prüfung und beruht auf der Tatsache, dass der OpenVPN-Server als Reaktion auf eine Anfrage zum Zurücksetzen der Verbindung ein bestimmtes RST-Paket sendet (die Prüfung funktioniert nicht, wenn der Modus „tls-auth“ verwendet wird, da der OpenVPN-Server ignoriert Anfragen von Clients, die nicht über TLS authentifiziert sind.

 Erkennung von OpenVPN-Sitzungen im Transitverkehr


Source: opennet.ru

Kommentar hinzufügen