GCP - Cloudscheduler Privesc
cloudscheduler
cloudscheduler.jobs.create
, iam.serviceAccounts.actAs
, (cloudscheduler.locations.list
)
cloudscheduler.jobs.create
, iam.serviceAccounts.actAs
, (cloudscheduler.locations.list
)Un attaquant avec ces autorisations pourrait exploiter Cloud Scheduler pour authentifier des tâches cron en tant qu'un compte de service spécifique. En créant une requête HTTP POST, l'attaquant planifie des actions, comme la création d'un compartiment de stockage, pour s'exécuter sous l'identité du compte de service. Cette méthode exploite la capacité du planificateur à cibler les points de terminaison *.googleapis.com
et à authentifier les requêtes, permettant à l'attaquant de manipuler directement les points de terminaison de l'API Google en utilisant une simple commande gcloud
.
Exemple pour créer une nouvelle tâche qui utilisera un compte de service spécifique pour créer un nouveau compartiment de stockage en notre nom, nous pourrions exécuter la commande suivante :
Pour escalader les privilèges, un attaquant crée simplement une requête HTTP ciblant l'API désirée, en se faisant passer pour le compte de service spécifié
Références
Dernière mise à jour