GCDS - Google Cloud Directory Sync
Last updated
Last updated
Learn & practice AWS Hacking: Learn & practice GCP Hacking:
Esta é uma ferramenta que pode ser usada para sincronizar seus usuários e grupos do Active Directory com seu Workspace (e não o contrário até o momento da escrita).
É interessante porque é uma ferramenta que exigirá as credenciais de um superusuário do Workspace e de um usuário privilegiado do AD. Portanto, pode ser possível encontrá-la dentro de um servidor de domínio que estaria sincronizando usuários de tempos em tempos.
Para realizar um MitM no binário config-manager.exe
, basta adicionar a seguinte linha no arquivo config.manager.vmoptions
: -Dcom.sun.net.ssl.checkRevocation=false
Note que é capaz de detectar GCDS, obter informações sobre a configuração e até mesmo as senhas e credenciais criptografadas.
Além disso, note que o GCDS não sincronizará senhas do AD para o Workspace. Se algo, ele apenas gerará senhas aleatórias para usuários recém-criados no Workspace, como você pode ver na imagem a seguir:
O binário config-manager.exe
(o principal binário do GCDS com GUI) armazenará as credenciais do Active Directory configuradas, o token de atualização e o acesso por padrão em um arquivo xml na pasta C:\Program Files\Google Cloud Directory Sync
em um arquivo chamado Untitled-1.xml
por padrão. Embora também possa ser salvo na pasta Documents
do usuário ou em qualquer outra pasta.
Além disso, o registro HKCU\SOFTWARE\JavaSoft\Prefs\com\google\usersyncapp\ui
dentro da chave open.recent
contém os caminhos para todos os arquivos de configuração abertos recentemente (xmls). Portanto, é possível verificá-lo para encontrá-los.
As informações mais interessantes dentro do arquivo seriam:
Note como o refresh token e a senha do usuário são criptografados usando AES CBC com uma chave e IV gerados aleatoriamente armazenados em HKEY_CURRENT_USER\SOFTWARE\JavaSoft\Prefs\com\google\usersyncapp\util
(onde quer que a biblioteca Java prefs
armazene as preferências) nas chaves de string /Encryption/Policy/V2.iv
e /Encryption/Policy/V2.key
armazenadas em base64.
Usando o token de atualização, é possível gerar tokens de acesso utilizando-o e o ID do cliente e o segredo do cliente especificados no seguinte comando:
Observe que mesmo tendo um token de atualização, não é possível solicitar nenhum escopo para o token de acesso, pois você só pode solicitar os escopos suportados pela aplicação onde você está gerando o token de acesso.
Além disso, o token de atualização não é válido em todas as aplicações.
Por padrão, o GCSD não terá acesso como o usuário a todos os possíveis escopos OAuth, então usando o seguinte script podemos encontrar os escopos que podem ser usados com o refresh_token
para gerar um access_token
:
Aprenda e pratique Hacking AWS: Aprenda e pratique Hacking GCP: