GCDS - Google Cloud Directory Sync
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Questo è uno strumento che può essere utilizzato per sincronizzare gli utenti e i gruppi di Active Directory con il tuo Workspace (e non viceversa al momento della scrittura).
È interessante perché è uno strumento che richiederà le credenziali di un superutente di Workspace e di un utente AD privilegiato. Quindi, potrebbe essere possibile trovarlo all'interno di un server di dominio che sincronizza gli utenti di tanto in tanto.
Per eseguire un MitM sul config-manager.exe
binario, aggiungi semplicemente la seguente riga nel file config.manager.vmoptions
: -Dcom.sun.net.ssl.checkRevocation=false
Nota che Winpeas è in grado di rilevare GCDS, ottenere informazioni sulla configurazione e anche le password e le credenziali crittografate.
Nota anche che GCDS non sincronizzerà le password da AD a Workspace. Se qualcosa, genererà solo password casuali per gli utenti appena creati in Workspace, come puoi vedere nell'immagine seguente:
Il binario config-manager.exe
(il principale binario GCDS con GUI) memorizzerà le credenziali di Active Directory configurate, il token di aggiornamento e l'accesso per impostazione predefinita in un file xml nella cartella C:\Program Files\Google Cloud Directory Sync
in un file chiamato Untitled-1.xml
per impostazione predefinita. Anche se potrebbe anche essere salvato nei Documenti
dell'utente o in qualsiasi altra cartella.
Inoltre, il registro HKCU\SOFTWARE\JavaSoft\Prefs\com\google\usersyncapp\ui
all'interno della chiave open.recent
contiene i percorsi a tutti i file di configurazione recentemente aperti (xml). Quindi è possibile controllarlo per trovarli.
Le informazioni più interessanti all'interno del file sarebbero:
Nota come il refresh token e la password dell'utente siano criptati utilizzando AES CBC con una chiave e un IV generati casualmente memorizzati in HKEY_CURRENT_USER\SOFTWARE\JavaSoft\Prefs\com\google\usersyncapp\util
(dove la libreria Java prefs
memorizza le preferenze) nelle chiavi di stringa /Encryption/Policy/V2.iv
e /Encryption/Policy/V2.key
memorizzate in base64.
Utilizzando il token di aggiornamento, è possibile generare token di accesso utilizzandolo e l'ID client e il segreto client specificati nel seguente comando:
Nota che anche avendo un refresh token, non è possibile richiedere alcuno scope per il token di accesso poiché puoi richiedere solo gli scopes supportati dall'applicazione in cui stai generando il token di accesso.
Inoltre, il refresh token non è valido in ogni applicazione.
Per impostazione predefinita, GCSD non avrà accesso come utente a ogni possibile scope OAuth, quindi utilizzando il seguente script possiamo trovare gli scopes che possono essere utilizzati con il refresh_token
per generare un access_token
:
Impara e pratica il hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Impara e pratica il hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)