GCP - Cloud Build Unauthenticated Enum

Apoie o HackTricks

Cloud Build

Para mais informações sobre o Cloud Build, consulte:

GCP - Cloud Build Enum

cloudbuild.yml

Se você comprometer o acesso de escrita sobre um repositório contendo um arquivo chamado cloudbuild.yml, você poderia inserir um backdoor neste arquivo, que especifica os comandos que serão executados dentro de um Cloud Build e extrair os segredos, comprometer o que é feito e também comprometer a conta de serviço do Cloud Build.

Observe que o GCP tem a opção de permitir que administradores controlem a execução de sistemas de compilação a partir de PRs externos via "Controle de Comentários". O Controle de Comentários é um recurso onde colaboradores/donos de projetos precisam comentar "/gcbrun" para acionar a compilação em relação ao PR e o uso desse recurso impede inherentemente que qualquer pessoa na internet acione seus sistemas de compilação.

Para obter informações relacionadas, você pode verificar a página sobre como atacar as Ações do Github (semelhante a isso):

Abusing Github Actions

Aprovações de PR

Quando o gatilho é um PR porque qualquer pessoa pode fazer PRs para repositórios públicos, seria muito perigoso permitir a execução do gatilho com qualquer PR. Portanto, por padrão, a execução será automática para proprietários e colaboradores, e para executar o gatilho com PRs de outros usuários, um proprietário ou colaborador deve comentar /gcbrun.

Portanto, se isso estiver definido como Não necessário, um atacante poderia fazer um PR para o branch que acionará a execução adicionando a execução de código malicioso ao arquivo cloudbuild.yml e comprometer a execução do cloudbuild (observe que o cloudbuild irá baixar o código DO PR, então ele executará o cloudbuild.yml malicioso).

Além disso, é fácil ver se alguma execução de cloudbuild precisa ser realizada quando você envia um PR porque ela aparece no Github:

Portanto, mesmo que o cloudbuild não seja executado, o atacante poderá ver o nome do projeto de um projeto GCP que pertence à empresa.

Apoie o HackTricks

Last updated