GCP - Escalade de privilèges des buckets publics

Reading time: 3 minutes

tip

Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE) Apprenez et pratiquez le hacking Azure : HackTricks Training Azure Red Team Expert (AzRTE)

Soutenir HackTricks

Escalade de privilèges des buckets

Si la politique du bucket permet à "allUsers" ou "allAuthenticatedUsers" de modifier leur politique de bucket (la permission storage.buckets.setIamPolicy), alors n'importe qui peut modifier la politique du bucket et se donner un accès complet.

Vérifier les permissions

Il y a 2 façons de vérifier les permissions sur un bucket. La première consiste à les demander en faisant une requête à https://www.googleapis.com/storage/v1/b/BUCKET_NAME/iam ou en exécutant gsutil iam get gs://BUCKET_NAME.

Cependant, si votre utilisateur (appartenant potentiellement à "allUsers" ou "allAuthenticatedUsers") n'a pas les permissions pour lire la politique iam du bucket (storage.buckets.getIamPolicy), cela ne fonctionnera pas.

L'autre option qui fonctionnera toujours est d'utiliser le point de terminaison testPermissions du bucket pour déterminer si vous avez la permission spécifiée, par exemple en accédant à : https://www.googleapis.com/storage/v1/b/BUCKET_NAME/iam/testPermissions?permissions=storage.buckets.delete&permissions=storage.buckets.get&permissions=storage.buckets.getIamPolicy&permissions=storage.buckets.setIamPolicy&permissions=storage.buckets.update&permissions=storage.objects.create&permissions=storage.objects.delete&permissions=storage.objects.get&permissions=storage.objects.list&permissions=storage.objects.update

Escalade

Pour accorder Storage Admin à allAuthenticatedUsers, il est possible d'exécuter :

bash
gsutil iam ch allAuthenticatedUsers:admin gs://BUCKET_NAME

Une autre attaque consisterait à supprimer le bucket et à le recréer dans votre compte pour voler la propriété.

Références

tip

Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE) Apprenez et pratiquez le hacking Azure : HackTricks Training Azure Red Team Expert (AzRTE)

Soutenir HackTricks