Wer seinem Client ein VPN-Profil übergibt, übergibt ihm eine von jemand anderem geschriebene Konfiguration, die dieses Programm dann auf dem eigenen Rechner ausführt. Der Import kann ändern, wohin der abgedeckte Verkehr geht, welchem Gegenüber das Gerät vertraut und in manchen Formaten, welche lokalen Programme starten, wenn der Tunnel hochkommt. Die Datei ist kein Lesezeichen; sie ist ein kleines Programm in einem deklarativen Format.

Lesen Sie sie so, wie Sie ein Shell-Skript aus derselben Quelle lesen würden.

Der Client interpretiert sie, nicht Sie

Jedes Feld in der Datei ist eine Anweisung an einen bestimmten Client. Endpunkt und Protokoll entscheiden, wohin der Tunnel führt, der Authentifizierungsblock entscheidet, welches Geheimnis verlangt wird, und die Routenanweisungen entscheiden, was in ihn hineinkommt. Zertifikate oder ein privater Schlüssel können als Blöcke eingebettet sein, statt als Dateien referenziert zu werden, und deshalb trägt eine einzelne Textdatei manchmal alles, was nötig ist, um sich gegenüber einem Gateway als Sie auszugeben. Genau diese Eigenschaft macht beiläufiges Teilen von Dateien so gefährlich.

OpenVPN-Profile können außerdem Skript-Hooks, Plugin-Pfade und eine Sicherheitsstufe tragen, die regelt, ob diese Hooks laufen dürfen. Diese Kombination macht ein unbekanntes Profil wert, Zeile für Zeile gelesen zu werden, statt es doppelt anzuklicken. Der Client tut genau das, was in der Datei steht, und er tut es mit Ihren Rechten.

Routing-Änderungen sind nach einer Verbindung sichtbar

Ein Full-Tunnel-Profil installiert Routen, die alles über das Gateway schicken, während ein Split-Tunnel-Profil nur ausgewählte Präfixe sendet. Manche Profile schieben außerdem einen DNS-Server durch, was still ändert, wer Ihre Abfragen sieht. Nichts davon ist für sich genommen bösartig, und nichts davon ist am Dateinamen erkennbar.

Vergleichen Sie die Routentabelle vor und nach der ersten Verbindung, und Sie sehen die Absicht auf einen Blick. Ein Profil, das als Zugang zu einer internen Anwendung beworben wird, aber eine breitere Standardroute installiert, verrät etwas über seinen Autor.

Vertrauensmaterial und Hooks tragen das eigentliche Gewicht

Ein Profil kann dem VPN-Client Vertrauensinformationen liefern, und ein Plattform-Konfigurationspaket kann weiter gehen und ein Zertifikat oder eine Root in einen Systemspeicher installieren. Das sind unterschiedliche Bereiche mit unterschiedlichen Folgen. Der clientbezogene Fall betrifft die Prüfung einer Anwendung; der systemweite Fall betrifft alles, was den Vertrauensspeicher der Plattform nutzt.

Skript-Hooks und Plugins sind die andere Hälfte. Eine Anweisung, die beim Verbinden einen Befehl ausführt, oder ein in den Clientprozess geladenes Plugin hat Ihre Berechtigungen und nichts von der Sandbox des Clients. Enthält ein Profil, das Sie nicht angefordert haben, eines davon, ist das eine Frage an die Person, die es geschickt hat.

Keine der beiden Kategorien ist automatisch feindlich. Unternehmensumgebungen nutzen beides. Der Punkt ist, dass jede eine Erklärung verlangt, die Sie prüfen können.

Prüfen Sie die Herkunft, dann geben Sie das Geheimnis ein

Stellen Sie fest, wer die Datei ausgegeben hat, und zwar über einen Kanal, dem Sie bereits vertrauen, nicht über die Nachricht, die sie geliefert hat. Vergleichen Sie Endpunkt- und Zertifikatsdetails mit der veröffentlichten Dokumentation des Betreibers. Ist ein Profil unaufgefordert eingetroffen, holen Sie ein neues direkt beim Betreiber, statt die erhaltene Kopie zu reparieren. Fragen Sie, welche Client-Version der Betreiber unterstützt, denn dieselbe Datei kann von einem anderen Client anders interpretiert werden.

grep -nE '^(remote|proto|auth-user-pass|redirect-gateway|route|route-nopull)' office.ovpn
grep -nE '^(up|down|plugin|script-security|setenv)' office.ovpn
openssl x509 -in embedded-ca.crt -noout -subject -issuer -dates

Setzen Sie niemals ein Passwort in ein unerklärtes Feld, um zu sehen, ob es funktioniert, und akzeptieren Sie niemals eine unbekannte Rechteabfrage, nur um einen Import abzuschließen. Eine erfolgreiche Verbindung beweist, dass der Endpunkt geantwortet hat, mehr nicht.

Entfernen Sie die importierte Kopie, nicht den Download

Clients kopieren ein Profil in ihren eigenen Speicher, das Löschen der heruntergeladenen Datei lässt die importierte Verbindung also aktiv. Entfernen Sie sie über die Oberfläche des Clients selbst, und prüfen Sie, ob auch jedes beim Import hinzugefügte Zertifikat verschwunden ist. Bestätigen Sie dann, dass auch die installierten Routen verschwunden sind.

Wurde ein Zertifikat auf Systemebene installiert, reicht das Entfernen des Profils nicht. Diese Bereinigung gehört zur Vertrauensverwaltung der Plattform, und sie sollte bewusst erfolgen, statt zu hoffen, dass der nächste Neustart sie erledigt.

Ähnliche Artikel