AWS - Codebuild Enum
Tip
Impara & pratica AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Impara & pratica GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Impara & pratica Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Sostieni HackTricks
- Controlla i subscription plans!
- Unisciti al 💬 Discord group o al telegram group o seguici su Twitter 🐦 @hacktricks_live.
- Condividi hacking tricks inviando PRs ai HackTricks e HackTricks Cloud github repos.
CodeBuild
AWS CodeBuild è riconosciuto come un servizio fully managed di continuous integration. Lo scopo principale di questo servizio è automatizzare la sequenza di compilazione del codice sorgente, l’esecuzione dei test e il packaging del software per il deploy. Il vantaggio principale offerto da CodeBuild è la possibilità di eliminare la necessità per gli utenti di provisionare, gestire e scalare i server di build, poiché il servizio stesso si occupa di queste attività. Le funzionalità essenziali di AWS CodeBuild comprendono:
- Servizio gestito: CodeBuild gestisce e scala i server di build, liberando gli utenti dalla manutenzione dei server.
- Integrazione continua: Si integra con il workflow di sviluppo e deployment, automatizzando le fasi di build e test del processo di rilascio del software.
- Produzione di pacchetti: Dopo le fasi di build e test, prepara i pacchetti software, rendendoli pronti per il deployment.
AWS CodeBuild si integra perfettamente con altri servizi AWS, migliorando l’efficienza e l’affidabilità della pipeline CI/CD (Continuous Integration/Continuous Deployment).
Credenziali Github/Gitlab/Bitbucket
Credenziali sorgente predefinite
Questa è l’opzione legacy dove è possibile configurare alcuni access (come un Github token o un’app) che saranno condivisi tra i progetti CodeBuild così tutti i progetti possono usare questo set di credenziali configurato.
Le credenziali memorizzate (token, password…) sono gestite da CodeBuild e non esiste un modo pubblico per recuperarle tramite le API AWS.
Credenziali sorgente personalizzate
A seconda della piattaforma del repository (Github, Gitlab e Bitbucket) vengono fornite opzioni diverse. Ma in generale, qualsiasi opzione che richieda di memorizzare un token o una password la salverà come secret in Secrets Manager.
Questo permette a diversi progetti CodeBuild di usare accessi configurati differenti ai provider invece di usare soltanto quello predefinito.
Enumerazione
# 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 hai
codebuild:StartBuild, ricordati che spesso puoi sovrascrivere gli env vars al momento della build (--environment-variables-override). Questo è sufficiente per alcuni attacchi anche senza i permessiUpdateProjecto override dibuildspec(per esempio: reindirizzare artifact/upload buckets per esfiltrare segreti, o abusare degli env vars di language/runtime per eseguire comandi).
Privesc
Nella pagina seguente puoi vedere come abuse codebuild permissions to escalate privileges:
Post Exploitation
AWS - CodeBuild Post Exploitation
Accesso non autenticato
AWS - CodeBuild Unauthenticated Access
Riferimenti
Tip
Impara & pratica AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Impara & pratica GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Impara & pratica Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Sostieni HackTricks
- Controlla i subscription plans!
- Unisciti al 💬 Discord group o al telegram group o seguici su Twitter 🐦 @hacktricks_live.
- Condividi hacking tricks inviando PRs ai HackTricks e HackTricks Cloud github repos.
HackTricks Cloud

