AWS - CodeBuild Unauthenticated Access

Support HackTricks

CodeBuild

Para mais informações, confira esta página:

AWS - Codebuild Enum

buildspec.yml

Se você comprometer o acesso de escrita a um repositório contendo um arquivo chamado buildspec.yml, você pode backdoor este arquivo, que especifica os comandos que serão executados dentro de um projeto CodeBuild e exfiltrar os segredos, comprometer o que é feito e também comprometer as credenciais do IAM role do CodeBuild.

Note que mesmo que não exista nenhum arquivo buildspec.yml, mas você sabe que o CodeBuild está sendo usado (ou um CI/CD diferente), modificar algum código legítimo que será executado também pode te dar um shell reverso, por exemplo.

Para algumas informações relacionadas, você pode conferir a página sobre como atacar Github Actions (semelhante a isso):

Abusing Github Actions

Self-hosted GitHub Actions runners in AWS CodeBuild

Como indicado na documentação, é possível configurar o CodeBuild para executar Github actions self-hosted quando um workflow é acionado dentro de um repositório Github configurado. Isso pode ser detectado verificando a configuração do projeto CodeBuild porque o Event type precisa conter: WORKFLOW_JOB_QUEUED e em um Workflow do Github porque ele selecionará um runner self-hosted assim:

runs-on: codebuild-<project-name>-${{ github.run_id }}-${{ github.run_attempt }}

Este novo relacionamento entre Github Actions e AWS cria outra maneira de comprometer a AWS a partir do Github, pois o código no Github será executado em um projeto CodeBuild com uma função IAM anexada.

Support HackTricks

Last updated