2.0 KiB
AWS - Accesso non autenticato a CodeBuild
{{#include ../../../banners/hacktricks-training.md}}
CodeBuild
Per ulteriori informazioni, controlla questa pagina:
{{#ref}} ../aws-services/aws-codebuild-enum.md {{#endref}}
buildspec.yml
Se comprometti l'accesso in scrittura su un repository contenente un file chiamato buildspec.yml, potresti inserire un backdoor in questo file, che specifica i comandi che verranno eseguiti all'interno di un progetto CodeBuild ed esfiltrare i segreti, compromettere ciò che viene fatto e anche compromettere le credenziali del ruolo IAM di CodeBuild.
Nota che anche se non c'è alcun file buildspec.yml ma sai che Codebuild viene utilizzato (o un diverso CI/CD) modificare del codice legittimo che verrà eseguito può anche portarti a una reverse shell, per esempio.
Per alcune informazioni correlate, puoi controllare la pagina su come attaccare Github Actions (simile a questa):
{{#ref}} ../../../pentesting-ci-cd/github-security/abusing-github-actions/ {{#endref}}
Runners di GitHub Actions self-hosted in AWS CodeBuild
Come indicato nella documentazione, è possibile configurare CodeBuild per eseguire azioni Github self-hosted quando un workflow viene attivato all'interno di un repository Github configurato. Questo può essere rilevato controllando la configurazione del progetto CodeBuild perché il Tipo di evento deve contenere: WORKFLOW_JOB_QUEUED e in un Workflow di Github perché selezionerà un runner self-hosted come questo:
runs-on: codebuild-<project-name>-${{ github.run_id }}-${{ github.run_attempt }}
Questa nuova relazione tra Github Actions e AWS crea un altro modo per compromettere AWS da Github poiché il codice in Github verrà eseguito in un progetto CodeBuild con un ruolo IAM allegato.
{{#include ../../../banners/hacktricks-training.md}}