Gespeichertes VPN-Passwort: Wer kann es entschlüsseln und wann
Chiffretext in einer Client-Datei beweist fast nichts. Bestimmen Sie den Schlüsselinhaber, die Laufzeitnutzung und die Zugriffskontrollen, bevor Sie die Speicherung beurteilen.
Ein VPN-Client, der ein verschlüsseltes Passwort in seiner XML zeigt, hat Ihnen fast nichts gesagt. Der Chiffretext beantwortet nur, dass der Wert in dieser Darstellung nicht als Klartext gespeichert ist. Wer ihn entschlüsseln kann, mit welchem Schlüssel und in welchem Benutzerkontext, sind die Fragen, die entscheiden, ob die Speicherung hilft. Beantworten Sie sie, bevor Sie die Datei sicher oder unsicher nennen.
Bestimmen Sie, welches Objekt gespeichert wird
Beginnen Sie mit dem dokumentierten Speichermodell des Produkts. Ein Client kann ein wiederherstellbares Passwort, ein Token oder einen Verweis auf einen Anmeldedatenspeicher ablegen, und jede Variante hat eine andere Exposition. Der XML-Elementname ist nicht das Design, und eine Zeichenfolge, die wie base64 aussieht, ist ebenso wenig ein Beweis für Verschlüsselung.
Fragen Sie den Anbieter oder Administrator, welche Komponente den Wert beim Verbindungsaufbau liest.
Bestimmen Sie dann die Schutz-API, sofern sie dokumentiert ist. Unter Windows schützt CryptProtectData Daten mit einem Schlüssel, der aus den Anmeldeinformationen des verschlüsselnden Benutzers abgeleitet wird, und die Option für den Rechnerbereich ändert, wer entschlüsseln kann. Das ist ein konkretes Beispiel dafür, warum der Bereich zählt. Es ist kein Beleg dafür, dass ein bestimmter VPN-Client diese API verwendet.
Trennen Sie eine gestohlene Kopie von der Laufzeitnutzung
Ein Client, der sich ohne Nachfrage erneut verbindet, braucht einen unterstützten Weg, die Anmeldeinformation wiederherzustellen. Der Schutz einer Sicherungskopie beseitigt diese Möglichkeit nicht. Jedes Programm, das im richtigen Benutzerkontext läuft, kann denselben Weg nutzen, weshalb der Endpunkt selbst innerhalb der Vertrauensgrenze liegt. Dateiberechtigungen und Prozessrechte verengen diese Grenze; sie heben sie nicht auf.
Genau diese Unterscheidung verfehlt die Behauptung zu einer Offline-Datei meist. Verschlüsselung im Ruhezustand kann jemanden aufhalten, der eine Datei ohne das Konto kopiert. Sie hält keinen Code auf, der als das Konto läuft.
Beide Aussagen können gleichzeitig zutreffen, und die zweite ist die, die bei der Incident-Antwort zählt.
Lesen Sie die Zugriffskontrollen, die tatsächlich gelten
Prüfen Sie die ACL der Datei und das übergeordnete Verzeichnis, nicht nur den Dateimodus. Vergleichen Sie unter Windows die effektiven Berechtigungen des Benutzerprofils mit denen des Client-Dienstes oder der geplanten Aufgabe. Ein für einen Benutzer geschütztes Geheimnis ist nicht automatisch vor einem Administrator geschützt und ihm auch nicht automatisch ausgesetzt.
icacls "%APPDATA%\Vendor\Client\profiles.xml"
whoami /priv
Halten Sie fest, welche Identität den Client ausführt, denn diese Identität ist das Entschlüsselungssubjekt.
Bei einem verwalteten Bestand kann die relevante Kontrolle die Geräteverwaltung statt der Datei sein. Fragen Sie, ob die Anmeldeinformation hinterlegt wird, ob sie remote widerrufen werden kann und wie der Ablauf bei Verlust eines Geräts ist.
Planen Sie die Exposition, statt die Entschlüsselung zu testen
Führen Sie kein unbekanntes Extraktionswerkzeug gegen die Datei aus, um ein Argument zu beweisen. Es kann funktionieren, es kann das Profil beschädigen, und in jedem Fall verändert es die Beweise. Nutzen Sie das dokumentierte Design und eine autorisierte Prüfung, wenn eine Verifikation wirklich erforderlich ist.
Ist die Exposition belegt, rotieren Sie die Anmeldeinformation beim Identitätsinhaber.
Das Löschen des gespeicherten Eintrags ist kein Widerruf. Es kann verhindern, dass der Client den Wert erneut anbietet, und es ändert nichts an einer bereits gezogenen Kopie oder einer bereits autorisierten Sitzung. Ersetzen Sie die Anmeldeinformation, beenden Sie die Sitzungen, die der Inhaber beenden kann, und notieren Sie, was wann rotiert wurde.
Die Fragen für eine Anbieterprüfung
Fragen Sie, welches Geheimnis gespeichert wird, welche Komponente es nutzt, welcher Benutzer- oder Rechnerschlüssel es schützt, welche Zugriffskontrollen für normale Nutzung und Sicherungen gelten und wie Speicherrichtlinie und remote Widerrufung gehandhabt werden. Diese fünf Antworten beschreiben das Design; die XML nicht.
Bewahren Sie die Antworten beim Bereitstellungsdatensatz auf, damit die nächste Prüfung die Übung nicht wiederholt.
Eine gespeicherte Anmeldeinformation ist ein Tausch zwischen Bequemlichkeit und Exposition. Treffen Sie den Tausch bewusst und halten Sie fest, wer ihn akzeptiert hat.