AWS - CodeBuild Post Exploitation
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Per ulteriori informazioni, controlla:
Se le credenziali sono state impostate in Codebuild per connettersi a Github, Gitlab o Bitbucket sotto forma di token personali, password o accesso con token OAuth, queste credenziali verranno memorizzate come segreti nel gestore di segreti. Pertanto, se hai accesso per leggere il gestore di segreti, sarai in grado di ottenere questi segreti e pivotare sulla piattaforma connessa.
Per configurare CodeBuild, avrà bisogno di accesso al repo di codice che utilizzerà. Diverse piattaforme potrebbero ospitare questo codice:
Il progetto CodeBuild deve avere accesso al provider di origine configurato, sia tramite ruolo IAM che con un token github/bitbucket o accesso OAuth.
Un attaccante con permessi elevati su un CodeBuild potrebbe abusare di questo accesso configurato per leakare il codice del repo configurato e di altri a cui le credenziali impostate hanno accesso. Per fare ciò, un attaccante dovrebbe semplicemente cambiare l'URL del repository a ciascun repo a cui le credenziali di configurazione hanno accesso (nota che il sito web di aws elencherà tutti per te):
E cambiare i comandi Buildspec per esfiltrare ciascun repo.
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 quei permessi poiché non ha accesso al token. O sì? Controlla la sezione successiva
Puoi leakare l'accesso dato in CodeBuild a piattaforme come Github. Controlla se è stato dato accesso a piattaforme esterne con:
codebuild:DeleteProject
Un attaccante potrebbe eliminare un intero progetto CodeBuild, causando la perdita della configurazione del progetto e influenzando le applicazioni che dipendono dal progetto.
Impatto Potenziale: 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 della tua organizzazione, il tracciamento delle risorse e le politiche di controllo degli accessi basate sui tag.
Impatto Potenziale: Interruzione dell'allocazione dei costi, tracciamento delle risorse e politiche di controllo degli accessi basate su 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.
Impatto Potenziale: Interruzione del normale funzionamento delle applicazioni che dipendono dal repository interessato a causa della rimozione delle credenziali sorgente.
Impara e pratica AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Impara e pratica GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)