GCP - Secrets Manager Enum

Support HackTricks

Secret Manager

Google Secret Manager ist eine vault-ähnliche Lösung zum Speichern von Passwörtern, API-Schlüsseln, Zertifikaten, Dateien (max. 64KB) und anderen sensiblen Daten.

Ein Geheimnis kann verschiedene Versionen mit unterschiedlichen Daten haben.

Geheimnisse sind standardmäßig mit einem von Google verwalteten Schlüssel verschlüsselt, aber es ist möglich, einen Schlüssel aus KMS auszuwählen, um das Geheimnis zu verschlüsseln.

Bezüglich der Rotation ist es möglich, Nachrichten zu konfigurieren, die alle paar Tage an Pub-Sub gesendet werden, der Code, der auf diese Nachrichten hört, kann das Geheimnis rotieren.

Es ist möglich, einen Tag für die automatische Löschung zu konfigurieren; wenn der angegebene Tag erreicht ist, wird das Geheimnis automatisch gelöscht.

Enumeration

# First, list the entries
gcloud secrets list
gcloud secrets get-iam-policy <secret_name>

# Then, pull the clear-text of any version of any secret
gcloud secrets versions list <secret_name>
gcloud secrets versions access 1 --secret="<secret_name>"

Privilegieneskalation

In der folgenden Seite kannst du überprüfen, wie man die Berechtigungen des Secret Managers missbrauchen kann, um Privilegien zu eskalieren.

Nach der Ausnutzung

Persistenz

Missbrauch der Rotation

Ein Angreifer könnte das Geheimnis aktualisieren, um Rotationen zu stoppen (damit es nicht geändert wird), oder Rotationen viel seltener zu machen (damit das Geheimnis nicht geändert wird) oder um die Rotationsnachricht an ein anderes Pub/Sub zu veröffentlichen, oder den ausgeführten Rotationscode zu ändern (dies geschieht in einem anderen Dienst, wahrscheinlich in einer Cloud-Funktion, sodass der Angreifer privilegierten Zugriff auf die Cloud-Funktion oder einen anderen Dienst benötigt)

Unterstütze HackTricks

Last updated