Files
hacktricks-cloud/src/pentesting-cloud/aws-security/aws-services/aws-codebuild-enum.md

75 lines
3.4 KiB
Markdown

# AWS - Codebuild Enum
{{#include ../../../banners/hacktricks-training.md}}
## CodeBuild
AWS **CodeBuild** word erken as 'n **volledig bestuurde deurlopende integrasiediens**. Die primêre doel van hierdie diens is om die volgorde van die saamstel van bronkode, die uitvoer van toetse, en die verpakking van die sagteware vir ontplooiing te outomatiseer. Die hoofvoordeel wat deur CodeBuild aangebied word, lê in sy vermoë om die behoefte aan gebruikers om hul boubedieners te voorsien, te bestuur en te skaal, te verlig. Hierdie gerief is omdat die diens self hierdie take bestuur. Belangrike kenmerke van AWS CodeBuild sluit in:
1. **Bestuurde Diens**: CodeBuild bestuur en skaal die boubedieners, wat gebruikers vrymaak van bedieneronderhoud.
2. **Deurlopende Integrasie**: Dit integreer met die ontwikkeling en ontplooiing werkvloei, wat die bou- en toetsfases van die sagtewarevrystellingsproses outomatiseer.
3. **Pakketproduksie**: Na die bou- en toetsfases, berei dit die sagtewarepakkette voor, wat dit gereed maak vir ontplooiing.
AWS CodeBuild integreer naatloos met ander AWS-dienste, wat die doeltreffendheid en betroubaarheid van die CI/CD (Deurlopende Integrasie/Deurlopende Ontplooiing) pyplyn verbeter.
### **Github/Gitlab/Bitbucket Kredensiale**
#### **Standaard bronkredensiale**
Dit is die nalatenskapopsie waar dit moontlik is om 'n paar **toegang** (soos 'n Github-token of -toepassing) te konfigureer wat **oor codebuild-projekte gedeel sal word**, sodat al die projekte hierdie geconfigureerde stel kredensiale kan gebruik.
Die gestoor kredensiale (tokens, wagwoorde...) word **deur codebuild bestuur** en daar is geen openbare manier om dit van AWS APIs te onttrek nie.
#### Pasgemaakte bronkredensiaal
Afhangende van die bergingsplatform (Github, Gitlab en Bitbucket) word verskillende opsies aangebied. Maar in die algemeen, enige opsie wat vereis om 'n **token of 'n wagwoord te stoor, sal dit as 'n geheim in die geheime bestuurder stoor**.
Dit stel **verskillende codebuild-projekte in staat om verskillende geconfigureerde toegang te gebruik** tot die verskaffers in plaas van net die geconfigureerde standaard een te gebruik.
### Enumerasie
```bash
# 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>
```
### Privesc
In die volgende bladsy kan jy kyk hoe om **kodebou toestemmings te misbruik om voorregte te verhoog**:
{{#ref}}
../aws-privilege-escalation/aws-codebuild-privesc.md
{{#endref}}
### Post Exploitation
{{#ref}}
../aws-post-exploitation/aws-codebuild-post-exploitation/
{{#endref}}
### Unauthenticated Access
{{#ref}}
../aws-unauthenticated-enum-access/aws-codebuild-unauthenticated-access.md
{{#endref}}
## References
- [https://docs.aws.amazon.com/managedservices/latest/userguide/code-build.html](https://docs.aws.amazon.com/managedservices/latest/userguide/code-build.html)
{{#include ../../../banners/hacktricks-training.md}}