GCP - Öffentliches Bucket Privilegieneskalation
Reading time: 3 minutes
tip
Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Lernen & üben Sie Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Unterstützen Sie HackTricks
- Überprüfen Sie die Abonnementpläne!
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @hacktricks_live.
- Teilen Sie Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repos senden.
Bucket Privilegieneskalation
Wenn die Bucket-Richtlinie entweder „allUsers“ oder „allAuthenticatedUsers“ erlaubte, in ihre Bucket-Richtlinie zu schreiben (die storage.buckets.setIamPolicy Berechtigung), kann jeder die Bucket-Richtlinie ändern und sich selbst vollen Zugriff gewähren.
Berechtigungen überprüfen
Es gibt 2 Möglichkeiten, die Berechtigungen für ein Bucket zu überprüfen. Die erste besteht darin, sie anzufordern, indem man eine Anfrage an https://www.googleapis.com/storage/v1/b/BUCKET_NAME/iam
stellt oder gsutil iam get gs://BUCKET_NAME
ausführt.
Wenn Ihr Benutzer (potenziell zu "allUsers" oder "allAuthenticatedUsers" gehörend) jedoch keine Berechtigungen hat, um die IAM-Richtlinie des Buckets zu lesen (storage.buckets.getIamPolicy), funktioniert das nicht.
Die andere Option, die immer funktioniert, besteht darin, den testPermissions-Endpunkt des Buckets zu verwenden, um herauszufinden, ob Sie die angegebene Berechtigung haben, zum Beispiel durch den Zugriff auf: 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
Eskalation
Um Storage Admin
für allAuthenticatedUsers
zu gewähren, ist es möglich, Folgendes auszuführen:
gsutil iam ch allAuthenticatedUsers:admin gs://BUCKET_NAME
Ein weiterer Angriff wäre es, den Bucket zu entfernen und ihn in Ihrem Konto neu zu erstellen, um das Eigentum zu stehlen.
Referenzen
tip
Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Lernen & üben Sie Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Unterstützen Sie HackTricks
- Überprüfen Sie die Abonnementpläne!
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @hacktricks_live.
- Teilen Sie Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repos senden.