GCP - IAM, Principals & Org Unauthenticated Enum
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)
Para mais informações, confira:
GCP - IAM, Principals & Org Policies EnumVerifique os registros DNS
Se houver um registro google-site-verification
, é provável que esteja (ou tenha estado) usando o Workspace:
Se algo como include:_spf.google.com
também aparecer, isso confirma (note que se não aparecer, não nega, pois um domínio pode estar no Workspace sem usar o gmail como provedor de e-mail).
Tente configurar um Workspace com esse domínio
Outra opção é tentar configurar um Workspace usando o domínio; se ele reclamar que o domínio já está em uso (como na imagem), você sabe que já está em uso!
Para tentar configurar um domínio do Workspace, siga: https://workspace.google.com/business/signup/welcome
Tente recuperar a senha de um e-mail usando esse domínio
Se você souber de algum endereço de e-mail válido sendo usado nesse domínio (como: admin@email.com ou info@email.com), você pode tentar recuperar a conta em https://accounts.google.com/signin/v2/recoveryidentifier, e se a tentativa não mostrar um erro indicando que o Google não tem ideia sobre essa conta, então está usando o Workspace.
É possível enumerar e-mails válidos de um domínio do Workspace e e-mails de SA tentando atribuir permissões a eles e verificando as mensagens de erro. Para isso, você só precisa ter permissões para atribuir permissões a um projeto (que pode ser apenas de sua propriedade).
Note que para verificá-los, mas mesmo que existam, não conceda a eles uma permissão, você pode usar o tipo serviceAccount
quando for um user
e user
quando for um SA
:
Uma maneira mais rápida de enumerar Contas de Serviço em projetos conhecidos é apenas tentar acessar a URL: https://iam.googleapis.com/v1/projects/<project-id>/serviceAccounts/<sa-email>
Por exemplo: https://iam.googleapis.com/v1/projects/gcp-labs-3uis1xlx/serviceAccounts/appengine-lab-1-tarsget@gcp-labs-3uis1xlx.iam.gserviceaccount.com
Se a resposta for 403, isso significa que a SA existe. Mas se a resposta for 404, isso significa que não existe:
Note como, quando o e-mail do usuário era válido, a mensagem de erro indicava que o tipo não é, então conseguimos descobrir que o e-mail support@hacktricks.xyz existe sem conceder a ele quaisquer privilégios.
Você pode fazer o mesmo com Contas de Serviço usando o tipo user:
em vez de serviceAccount:
:
Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)