GWS - Admin Directory Sync
Last updated
Last updated
Aprende y practica Hacking en AWS:HackTricks Training AWS Red Team Expert (ARTE) Aprende y practica Hacking en GCP: HackTricks Training GCP Red Team Expert (GRTE)
La principal diferencia entre esta forma de sincronizar usuarios con GCDS es que GCDS se realiza manualmente con algunos binarios que necesitas descargar y ejecutar, mientras que la Sincronización del Directorio de Administradores es sin servidor gestionada por Google en https://admin.google.com/ac/sync/externaldirectories.
En el momento de escribir esto, este servicio está en beta y soporta 2 tipos de sincronización: Desde Active Directory y desde Azure Entra ID:
Active Directory: Para configurar esto necesitas dar acceso a Google a tu entorno de Active Directory. Y como Google solo tiene acceso a redes de GCP (a través de conectores VPC), necesitas crear un conector y luego hacer que tu AD esté disponible desde ese conector teniendo VMs en la red de GCP o usando Cloud VPN o Cloud Interconnect. Luego, también necesitas proporcionar credenciales de una cuenta con acceso de lectura sobre el directorio y un certificado para contactar a través de LDAPS.
Azure Entra ID: Para configurar esto solo es necesario iniciar sesión en Azure con un usuario con acceso de lectura sobre la suscripción de Entra ID en un pop-up mostrado por Google, y Google mantendrá el token con acceso de lectura sobre Entra ID.
Una vez configurado correctamente, ambas opciones permitirán sincronizar usuarios y grupos a Workspace, pero no permitirán configurar usuarios y grupos desde Workspace a AD o EntraID.
Otras opciones que permitirá durante esta sincronización son:
Enviar un correo electrónico a los nuevos usuarios para que inicien sesión.
Cambiar automáticamente su dirección de correo electrónico a la utilizada por Workspace. Así que si Workspace está usando @hacktricks.xyz
y los usuarios de EntraID usan @carloshacktricks.onmicrosoft.com
, se utilizará @hacktricks.xyz
para los usuarios creados en la cuenta.
Seleccionar los grupos que contienen los usuarios que serán sincronizados.
Seleccionar grupos para sincronizar y crear en Workspace (o indicar que se sincronicen todos los grupos).
Si logras comprometer un AD o EntraID tendrás control total de los usuarios y grupos que se van a sincronizar con Google Workspace. Sin embargo, ten en cuenta que las contraseñas que los usuarios podrían estar usando en Workspace podrían ser las mismas o no.
Cuando ocurre la sincronización, puede sincronizar todos los usuarios de AD o solo los de una OU específica o solo los usuarios miembros de grupos específicos en EntraID. Esto significa que para atacar a un usuario sincronizado (o crear uno nuevo que se sincronice) primero necesitarás averiguar qué usuarios están siendo sincronizados.
Los usuarios pueden estar reutilizando la contraseña o no de AD o EntraID, pero esto significa que necesitarás comprometer las contraseñas de los usuarios para iniciar sesión.
Si tienes acceso a los correos de los usuarios, podrías cambiar la contraseña de Workspace de un usuario existente, o crear un nuevo usuario, esperar hasta que se sincronice y configurar la cuenta.
Una vez que accedas al usuario dentro de Workspace, se le pueden otorgar algunos permisos por defecto.
También necesitas averiguar primero qué grupos están siendo sincronizados. Aunque existe la posibilidad de que TODOS los grupos estén siendo sincronizados (ya que Workspace permite esto).
Ten en cuenta que incluso si los grupos y membresías se importan a Workspace, los usuarios que no están sincronizados en la sincronización de usuarios no serán creados durante la sincronización de grupos, incluso si son miembros de alguno de los grupos sincronizados.
Si sabes qué grupos de Azure están siendo asignados permisos en Workspace o GCP, podrías simplemente agregar un usuario comprometido (o recién creado) en ese grupo y obtener esos permisos.
Hay otra opción para abusar de grupos privilegiados existentes en Workspace. Por ejemplo, el grupo gcp-organization-admins@<workspace.email>
generalmente tiene altos privilegios sobre GCP.
Si la sincronización de, por ejemplo, EntraID a Workspace está configurada para reemplazar el dominio del objeto importado con el correo de Workspace, será posible para un atacante crear el grupo gcp-organization-admins@<entraid.email>
en EntraID, agregar un usuario en este grupo y esperar hasta que ocurra la sincronización de todos los grupos.
El usuario será agregado en el grupo gcp-organization-admins@<workspace.email>
escalando privilegios en GCP.
Ten en cuenta que Workspace requiere credenciales con acceso de solo lectura sobre AD o EntraID para sincronizar usuarios y grupos. Por lo tanto, no es posible abusar de Google Workspace para realizar ningún cambio en AD o EntraID. Así que esto no es posible en este momento.
Tampoco sé dónde almacena Google las credenciales de AD o el token de EntraID y no puedes recuperarlos reconfigurando la sincronización (no aparecen en el formulario web, necesitas darlos nuevamente). Sin embargo, desde la web podría ser posible abusar de la funcionalidad actual para listar usuarios y grupos.
Aprende y practica Hacking en AWS:HackTricks Training AWS Red Team Expert (ARTE) Aprende y practica Hacking en GCP: HackTricks Training GCP Red Team Expert (GRTE)