GCP - Sourcerepos 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.
Source Repositories
Za više informacija o Source Repositories pogledajte:
GCP - Source Repositories Enum
source.repos.get
Sa ovom dozvolom moguće je preuzeti repozitorij lokalno:
Clone source repository
```bash gcloud source repos clonesource.repos.update
Entitet sa ovom dozvolom će moći da piše kod u repozitorijumu kloniranom sa gcloud source repos clone <repo>. Međutim, imajte na umu da se ova dozvola ne može pridružiti prilagođenim rolama, već mora biti dodeljena putem unapred definisane role kao što su:
- Owner
- Editor
- Source Repository Administrator (
roles/source.admin) - Source Repository Writer (
roles/source.writer)
Za pisanje jednostavno izvršite običan git push.
source.repos.setIamPolicy
Sa ovom dozvolom napadač bi mogao sebi dodeliti prethodne dozvole.
Pristup tajnama
Ako napadač ima pristup tajnama u kojima su tokeni sačuvani, moći će da ih ukrade. Za više informacija o tome kako pristupiti tajni pogledajte:
Dodavanje SSH ključeva
Moguće je dodati ssh ključeve u Source Repository projekat u web konzoli. Pravi POST zahtev na /v1/sshKeys:add i može se konfigurirati na https://source.cloud.google.com/user/ssh_keys
Kada je vaš ssh ključ postavljen, možete pristupiti repozitorijumu sa:
Kloniranje repozitorijuma pomoću SSH
```bash git clone ssh://username@domain.com@source.developers.google.com:2022/p/Nakon toga koristite git komande kao i obično.
Ručno kreirani kredencijali
Moguće je kreirati ručno kredencijale za pristup Source Repositories:
.png)
Klikom na prvi link bićete preusmereni na https://source.developers.google.com/auth/start?scopes=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fcloud-platform&state&authuser=3
Koji će prikazati Oauth authorization prompt za dodelu pristupa Google Cloud Development. Dakle, biće vam potrebni ili kredencijali korisnika ili otvorena sesija u pregledaču za ovo.
Ovo će vas odvesti na stranicu sa bash skriptom za izvršavanje koja konfiguriše git cookie u $HOME/.gitcookies
.png)
Izvršavanjem skripte možete zatim koristiti git clone, push… i radiće.
source.repos.updateProjectConfig
Sa ovom dozvolom moguće je onemogućiti podrazumevanu zaštitu Source Repositories da ne dozvoli upload koda koji sadrži privatne ključeve:
Onemogući pushblock i izmeni pub/sub konfiguraciju
```bash gcloud source project-configs update --disable-pushblock ``` Takođe možete konfigurisati drugu pub/sub temu ili je čak potpuno onemogućiti: ```bash gcloud source project-configs update --remove-topic=REMOVE_TOPIC gcloud source project-configs update --remove-topic=UPDATE_TOPIC ```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

