AWS - Codebuild Enum
Tip
Aprenda e pratique AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Aprenda e pratique Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Apoie o HackTricks
- Check the subscription plans!
- Participe do 💬 Discord group ou do telegram group ou siga-nos no Twitter 🐦 @hacktricks_live.
- Compartilhe hacking tricks enviando PRs para os HackTricks e HackTricks Cloud github repos.
CodeBuild
AWS CodeBuild é reconhecido como um serviço de integração contínua totalmente gerenciado. O propósito principal deste serviço é automatizar a sequência de compilação do código-fonte, execução de testes e empacotamento do software para fins de implantação. O benefício predominante oferecido pelo CodeBuild reside em sua capacidade de aliviar a necessidade de os usuários provisionarem, gerenciarem e escalarem seus servidores de build. Essa conveniência ocorre porque o serviço gerencia essas tarefas. Recursos essenciais do AWS CodeBuild englobam:
- Serviço gerenciado: CodeBuild gerencia e escala os servidores de build, liberando os usuários da manutenção de servidores.
- Integração contínua: Ele se integra ao fluxo de desenvolvimento e implantação, automatizando as fases de build e teste do processo de liberação do software.
- Geração de pacotes: Após as fases de build e teste, prepara os pacotes de software, deixando-os prontos para implantação.
O AWS CodeBuild integra-se perfeitamente com outros serviços da AWS, aumentando a eficiência e confiabilidade da pipeline CI/CD (Integração Contínua/Entrega Contínua).
Credenciais do Github/Gitlab/Bitbucket
Credenciais de origem padrão
Esta é a opção legada em que é possível configurar algum acesso (como um token ou app do Github) que será compartilhado entre projetos do CodeBuild para que todos os projetos possam usar esse conjunto configurado de credenciais.
As credenciais armazenadas (tokens, senhas…) são gerenciadas pelo CodeBuild e não existe nenhuma forma pública de recuperá-las via APIs da AWS.
Credencial de origem personalizada
Dependendo da plataforma de repositório (Github, Gitlab e Bitbucket), são fornecidas opções diferentes. Mas, em geral, qualquer opção que exija armazenar um token ou uma senha irá armazená-lo como um segredo no Secrets Manager.
Isso permite que projetos do CodeBuild diferentes usem acessos configurados distintos aos provedores, em vez de apenas usar o acesso padrão configurado.
Enumeração
# List external repo creds (such as github tokens)
## It doesn't return the token but just the ARN where it's located
aws codebuild list-source-credentials
# Projects
aws codebuild list-shared-projects
aws codebuild list-projects
aws codebuild batch-get-projects --names <project_name> # Check for creds in env vars
# Builds
aws codebuild list-builds
aws codebuild list-builds-for-project --project-name <p_name>
aws codebuild list-build-batches
aws codebuild list-build-batches-for-project --project-name <p_name>
# Reports
aws codebuild list-reports
aws codebuild describe-test-cases --report-arn <ARN>
Tip
Se você tiver
codebuild:StartBuild, lembre-se que frequentemente você pode sobrescrever env vars em tempo de build (--environment-variables-override). Isso é suficiente para alguns ataques mesmo semUpdateProjectoubuildspecoverrides (for example: redirecting artifact/upload buckets to exfiltrate secrets, or abusing language/runtime env vars to execute commands).
Privesc
Na página a seguir, você pode ver como abuse codebuild permissions to escalate privileges:
Post Exploitation
AWS - CodeBuild Post Exploitation
Unauthenticated Access
AWS - CodeBuild Unauthenticated Access
Referências
Tip
Aprenda e pratique AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Aprenda e pratique Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Apoie o HackTricks
- Check the subscription plans!
- Participe do 💬 Discord group ou do telegram group ou siga-nos no Twitter 🐦 @hacktricks_live.
- Compartilhe hacking tricks enviando PRs para os HackTricks e HackTricks Cloud github repos.
HackTricks Cloud

