GCDS - Google Cloud Directory Sync
Last updated
Last updated
Lerne & übe AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lerne & übe GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Dies ist ein Tool, das verwendet werden kann, um deine Active Directory-Benutzer und -Gruppen mit deinem Workspace zu synchronisieren (und nicht umgekehrt zum Zeitpunkt des Schreibens).
Es ist interessant, weil es ein Tool ist, das die Anmeldeinformationen eines Workspace-Superusers und eines privilegierten AD-Benutzers erfordert. Daher könnte es möglich sein, es auf einem Domänenserver zu finden, der von Zeit zu Zeit Benutzer synchronisiert.
Um ein MitM auf die config-manager.exe
-Binärdatei durchzuführen, füge einfach die folgende Zeile in die Datei config.manager.vmoptions
ein: -Dcom.sun.net.ssl.checkRevocation=false
Beachte, dass Winpeas in der Lage ist, GCDS zu erkennen, Informationen über die Konfiguration zu erhalten und sogar die Passwörter und verschlüsselten Anmeldeinformationen.
Beachte auch, dass GCDS keine Passwörter von AD zu Workspace synchronisiert. Wenn überhaupt, generiert es nur zufällige Passwörter für neu erstellte Benutzer in Workspace, wie du im folgenden Bild sehen kannst:
Die Binärdatei config-manager.exe
(die Haupt-GCDS-Binärdatei mit GUI) speichert standardmäßig die konfigurierten Active Directory-Anmeldeinformationen, das Aktualisierungstoken und den Zugriff in einer xml-Datei im Ordner C:\Program Files\Google Cloud Directory Sync
in einer Datei namens Untitled-1.xml
. Obwohl es auch im Documents
-Ordner des Benutzers oder in irgendeinem anderen Ordner gespeichert werden könnte.
Darüber hinaus enthält die Registrierung HKCU\SOFTWARE\JavaSoft\Prefs\com\google\usersyncapp\ui
innerhalb des Schlüssels open.recent
die Pfade zu allen kürzlich geöffneten Konfigurationsdateien (xmls). Es ist also möglich, es zu überprüfen, um sie zu finden.
Die interessantesten Informationen in der Datei wären:
Beachten Sie, wie das refresh token und das password des Benutzers mit AES CBC unter Verwendung eines zufällig generierten Schlüssels und IV, die in HKEY_CURRENT_USER\SOFTWARE\JavaSoft\Prefs\com\google\usersyncapp\util
gespeichert sind (wo auch immer die prefs
Java-Bibliothek die Einstellungen speichert), in den String-Schlüsseln /Encryption/Policy/V2.iv
und /Encryption/Policy/V2.key
in base64 gespeichert sind.
Mit dem Aktualisierungstoken ist es möglich, Zugriffstoken zu generieren, indem es zusammen mit der Client-ID und dem Client-Geheimnis verwendet wird, die im folgenden Befehl angegeben sind:
Beachten Sie, dass es selbst mit einem Refresh-Token nicht möglich ist, einen beliebigen Scope für das Access-Token anzufordern, da Sie nur die Scopes anfordern können, die von der Anwendung unterstützt werden, in der Sie das Access-Token generieren.
Außerdem ist das Refresh-Token nicht in jeder Anwendung gültig.
Standardmäßig hat GCSD nicht als Benutzer Zugriff auf jeden möglichen OAuth-Scope. Mit dem folgenden Skript können wir die Scopes finden, die mit dem refresh_token
verwendet werden können, um ein access_token
zu generieren:
Lerne & übe AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lerne & übe GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)