/ / Windows-Anmeldeinformations-Roaming - Wie werden passwortgeschützte Schlüssel an den AD-Server gesendet? - windows, winapi, dpapi

Windows Credential Roaming - wie werden passwortgeschützte Schlüssel an den AD-Server gesendet? - windows, winapi, dpapi

Ich versuche, herauszufinden, wie Windows funktioniertAnmeldeinformations-Roaming wurde implementiert. Ich habe festgestellt, dass es Zertifikate durchstreift, die mit einem Kennwort stark geschützt wurden (optionale Entropie für CryptProtectData ()).

Ich kann nicht sehen, wie dies getan werden könnte, wenn nicht Windowsbewahrt eine Kopie des Kennworts auf, wenn das Zertifikat importiert wird. Das Kopieren der Dateien in% APPDATA% / Crypto / RSA {UserSID} auf einen anderen Computer funktioniert nicht, da die Schlüssel mit dem DPAPI-Hauptschlüssel des Benutzers und optional einem Kennwort verschlüsselt werden.

Abgesehen von der Verwendung von ProcMon und ich habe keine Ahnung, was ich sonst versuchen oder anschauen sollte, um dies herauszufinden. Alle Hinweise, die helfen, dies herauszufinden, würden uns sehr freuen!

Antworten:

1 für die Antwort № 1

CryptProtectData tut etwas mehr, was das Ganze möglich macht.

DPAPI generiert einen Schlüssel für die Verschlüsselung. Der DPAPI-Schlüssel wird dann mit einem anderen Schlüssel verschlüsselt, der von Ihrem Kennwort abgeleitet wird.

Beim Roaming mit Berechtigungsnachweis wird der DPAPI-Schlüssel und nicht Ihr Kennwort gesendet.

Es ist dasselbe, was auch DPAPI erlaubtArbeiten Sie (lokal) weiter, wenn Sie Ihr Passwort ändern. Andernfalls müsste Windows mit DPAPI verschlüsselte Blobs (Dateien, Registrierungsschlüssel usw.) nachverfolgen, um den neuen Kennwortschlüssel zu verschlüsseln. Es gibt unendlich viele Anwendungen, die dies unmöglich machen.

Stattdessen ist der Schlüssel in einem bekannten und wohlbekanntenversteckter Ort, vom Benutzer nie gesehen. Windows kann die DPAPI leicht mit dem neuen Kennwort neu verschlüsseln, sodass Anwendungen, die es verwenden, vor Kennwortänderungen geschützt werden.

Derselbe Mechanismus wird auch beim Roaming von Berechtigungsnachweisen verwendet, um unabhängig vom Kennwort des Benutzers zu bleiben.

Diese Website hat Code, um den DPAPI-Schlüssel des Systems zu extrahierenund einige Informationen zur Struktur können Sie beim Debugging unterstützen.