mirror of
https://github.com/HackTricks-wiki/hacktricks-cloud.git
synced 2025-12-28 21:53:15 -08:00
77 lines
3.7 KiB
Markdown
77 lines
3.7 KiB
Markdown
# AWS - CodeBuild Post Exploitation
|
|
|
|
{{#include ../../../../banners/hacktricks-training.md}}
|
|
|
|
## CodeBuild
|
|
|
|
Per ulteriori informazioni, controlla:
|
|
|
|
{{#ref}}
|
|
../../aws-services/aws-codebuild-enum.md
|
|
{{#endref}}
|
|
|
|
### Controlla i Segreti
|
|
|
|
Se le credenziali sono state impostate in Codebuild per connettersi a Github, Gitlab o Bitbucket sotto forma di token personali, password o accesso token OAuth, queste **credenziali verranno memorizzate come segreti nel gestore dei segreti**.\
|
|
Pertanto, se hai accesso per leggere il gestore dei segreti, sarai in grado di ottenere questi segreti e passare alla piattaforma connessa.
|
|
|
|
{{#ref}}
|
|
../../aws-privilege-escalation/aws-secrets-manager-privesc/README.md
|
|
{{#endref}}
|
|
|
|
### Abuso dell'Accesso al Repo di CodeBuild
|
|
|
|
Per configurare **CodeBuild**, avrà bisogno di **accesso al repo di codice** che utilizzerà. Diverse piattaforme potrebbero ospitare questo codice:
|
|
|
|
<figure><img src="../../../../images/image (96).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
Il **progetto CodeBuild deve avere accesso** al fornitore di sorgente 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 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 web di aws elencherà tutti per te):
|
|
|
|
<figure><img src="../../../../images/image (107).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
E **cambiare i comandi Buildspec per esfiltrare ciascun repo**.
|
|
|
|
> [!WARNING]
|
|
> 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
|
|
|
|
### Leakare 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:
|
|
```bash
|
|
aws codebuild list-source-credentials
|
|
```
|
|
{{#ref}}
|
|
aws-codebuild-token-leakage.md
|
|
{{#endref}}
|
|
|
|
### `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.
|
|
```bash
|
|
aws codebuild delete-project --name <value>
|
|
```
|
|
**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.
|
|
```bash
|
|
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, 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.
|
|
```sql
|
|
aws codebuild delete-source-credentials --arn <value>
|
|
```
|
|
**Impatto Potenziale**: Interruzione del normale funzionamento delle applicazioni che si basano sul repository interessato a causa della rimozione delle credenziali di origine.
|
|
|
|
{{#include ../../../../banners/hacktricks-training.md}}
|