AWS - CodeBuild Post Exploitation

Supporta HackTricks

CodeBuild

Per maggiori informazioni, controlla:

AWS - Codebuild Enum

Abuso dell'Accesso al Repo di CodeBuild

Per configurare CodeBuild, avrà bisogno di accesso al repository di codice che utilizzerà. Diverse piattaforme potrebbero ospitare questo codice:

Il progetto CodeBuild deve avere accesso al provider di origine configurato, tramite ruolo IAM o con un token o accesso OAuth di github/bitbucket.

Un attaccante con permessi elevati su un CodeBuild potrebbe abusare di questo accesso configurato per leakare il codice del repository configurato e di altri dove le credenziali impostate hanno accesso. Per fare ciò, un attaccante dovrebbe semplicemente cambiare l'URL del repository con ciascun repository a cui le credenziali di configurazione hanno accesso (nota che il web di aws li elencherà tutti per te):

E cambiare i comandi Buildspec per esfiltrare ciascun repository.

Tuttavia, questo compito è ripetitivo e noioso e se un token github è stato configurato con permessi di scrittura, un attaccante non sarà in grado di (ab)usare di quei permessi poiché non ha accesso al token. O sì? Controlla la sezione successiva

Leak dei Token di Accesso da AWS CodeBuild

Puoi leakare l'accesso dato in CodeBuild a piattaforme come Github. Controlla se è stato dato accesso a piattaforme esterne con:

aws codebuild list-source-credentials
AWS Codebuild - Token Leakage

codebuild:DeleteProject

Un attaccante potrebbe eliminare un intero progetto CodeBuild, causando la perdita della configurazione del progetto e impattando le applicazioni che dipendono dal progetto.

aws codebuild delete-project --name <value>

Potenziale Impatto: Perdita della configurazione del progetto e interruzione del servizio per le applicazioni che utilizzano il progetto eliminato.

codebuild:TagResource , codebuild:UntagResource

Un attaccante potrebbe aggiungere, modificare o rimuovere tag dalle risorse di CodeBuild, interrompendo l'allocazione dei costi, il tracciamento delle risorse e le politiche di controllo degli accessi della tua organizzazione basate sui tag.

aws codebuild tag-resource --resource-arn <value> --tags <value>
aws codebuild untag-resource --resource-arn <value> --tag-keys <value>

Impatto Potenziale: Interruzione dell'allocazione dei costi, del tracciamento delle risorse e delle politiche di controllo degli accessi basate sui tag.

codebuild:DeleteSourceCredentials

Un attaccante potrebbe eliminare le credenziali di origine per un repository Git, influenzando il normale funzionamento delle applicazioni che dipendono dal repository.

aws codebuild delete-source-credentials --arn <value>

Impatto Potenziale: Interruzione del normale funzionamento delle applicazioni che dipendono dal repository interessato a causa della rimozione delle credenziali di origine.

Supporta HackTricks

Last updated