GWS - Admin Directory Sync
Last updated
Last updated
Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
A principal diferença entre essa forma de sincronizar usuários com GCDS é que o GCDS é feito manualmente com alguns binários que você precisa baixar e executar, enquanto a Sincronização do Diretório do Admin é sem servidor gerenciada pelo Google em https://admin.google.com/ac/sync/externaldirectories.
No momento em que este texto foi escrito, este serviço está em beta e suporta 2 tipos de sincronização: Do Active Directory e do Azure Entra ID:
Active Directory: Para configurar isso, você precisa dar acesso ao Google ao seu ambiente do Active Directory. E como o Google só tem acesso às redes do GCP (via conectores VPC), você precisa criar um conector e, em seguida, tornar seu AD disponível a partir desse conector, tendo-o em VMs na rede do GCP ou usando Cloud VPN ou Cloud Interconnect. Então, você também precisa fornecer credenciais de uma conta com acesso de leitura sobre o diretório e certificado para contatar via LDAPS.
Azure Entra ID: Para configurar isso, basta fazer login no Azure com um usuário com acesso de leitura sobre a assinatura do Entra ID em um pop-up exibido pelo Google, e o Google manterá o token com acesso de leitura sobre o Entra ID.
Uma vez configuradas corretamente, ambas as opções permitirão sincronizar usuários e grupos para o Workspace, mas não permitirão configurar usuários e grupos do Workspace para o AD ou EntraID.
Outras opções que serão permitidas durante essa sincronização são:
Enviar um e-mail para os novos usuários para fazer login
Alterar automaticamente seu endereço de e-mail para o usado pelo Workspace. Assim, se o Workspace estiver usando @hacktricks.xyz
e os usuários do EntraID usarem @carloshacktricks.onmicrosoft.com
, @hacktricks.xyz
será usado para os usuários criados na conta.
Selecionar os grupos contendo os usuários que serão sincronizados.
Selecionar grupos para sincronizar e criar no Workspace (ou indicar para sincronizar todos os grupos).
Se você conseguir comprometer um AD ou EntraID, terá controle total sobre os usuários e grupos que serão sincronizados com o Google Workspace. No entanto, observe que as senhas que os usuários podem estar usando no Workspace podem ser as mesmas ou não.
Quando a sincronização acontece, pode sincronizar todos os usuários do AD ou apenas os de uma OU específica ou apenas os usuários membros de grupos específicos no EntraID. Isso significa que, para atacar um usuário sincronizado (ou criar um novo que seja sincronizado), você precisará primeiro descobrir quais usuários estão sendo sincronizados.
Os usuários podem estar reutilizando a senha ou não do AD ou EntraID, mas isso significa que você precisará comprometer as senhas dos usuários para fazer login.
Se você tiver acesso aos e-mails dos usuários, poderá alterar a senha do Workspace de um usuário existente, ou criar um novo usuário, esperar até que ele seja sincronizado e configurar a conta.
Uma vez que você acesse o usuário dentro do Workspace, ele pode receber algumas permissões por padrão.
Você também precisa descobrir primeiro quais grupos estão sendo sincronizados. Embora exista a possibilidade de que TODOS os grupos estejam sendo sincronizados (já que o Workspace permite isso).
Observe que, mesmo que os grupos e as associações sejam importados para o Workspace, os usuários que não estão sincronizados na sincronização de usuários não serão criados durante a sincronização de grupos, mesmo que sejam membros de qualquer um dos grupos sincronizados.
Se você souber quais grupos do Azure estão sendo atribuídos permissões no Workspace ou GCP, você pode simplesmente adicionar um usuário comprometido (ou recém-criado) nesse grupo e obter essas permissões.
Há outra opção para abusar de grupos privilegiados existentes no Workspace. Por exemplo, o grupo gcp-organization-admins@<workspace.email>
geralmente tem altos privilégios sobre o GCP.
Se a sincronização de, por exemplo, EntraID, para o Workspace estiver configurada para substituir o domínio do objeto importado pelo e-mail do Workspace, será possível para um atacante criar o grupo gcp-organization-admins@<entraid.email>
no EntraID, adicionar um usuário a esse grupo e esperar até que a sincronização de todos os grupos aconteça.
O usuário será adicionado ao grupo gcp-organization-admins@<workspace.email>
, escalando privilégios no GCP.
Observe que o Workspace requer credenciais com acesso somente leitura sobre o AD ou EntraID para sincronizar usuários e grupos. Portanto, não é possível abusar do Google Workspace para realizar qualquer alteração no AD ou EntraID. Portanto, isso não é possível neste momento.
Eu também não sei onde o Google armazena as credenciais do AD ou o token do EntraID e você não pode recuperá-los reconfigurando a sincronização (eles não aparecem no formulário da web, você precisa fornecê-los novamente). No entanto, pela web, pode ser possível abusar da funcionalidade atual para listar usuários e grupos.
Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)