GCP - Secrets Manager Enum

Support HackTricks

Secret Manager

Google Secret Manager to rozwiązanie przypominające sejf do przechowywania haseł, kluczy API, certyfikatów, plików (maks. 64KB) i innych wrażliwych danych.

Sekret może mieć różne wersje przechowujące różne dane.

Sekrety domyślnie są szyfrowane za pomocą klucza zarządzanego przez Google, ale możliwe jest wybranie klucza z KMS do użycia do szyfrowania sekretu.

Jeśli chodzi o rotację, możliwe jest skonfigurowanie wiadomości, które będą wysyłane do pub-sub co określoną liczbę dni, kod nasłuchujący tych wiadomości może rotować sekret.

Możliwe jest skonfigurowanie dnia dla automatycznego usunięcia, gdy wskazany dzień zostanie osiągnięty, sekret zostanie automatycznie usunięty.

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>"

Eskalacja Uprawnień

Na następnej stronie możesz sprawdzić, jak nadużywać uprawnień secretmanager, aby eskalować uprawnienia.

GCP - Secretmanager Privesc

Po Eksploatacji

GCP - Secretmanager Post Exploitation

Utrzymywanie

GCP - Secret Manager Persistence

Nadużycie Rotacji

Atakujący mógłby zaktualizować sekret, aby zatrzymać rotacje (aby nie był modyfikowany), lub sprawić, że rotacje będą znacznie rzadsze (aby sekret nie był modyfikowany) lub opublikować wiadomość o rotacji do innego pub/sub, lub zmodyfikować kod rotacji, który jest wykonywany (to dzieje się w innej usłudze, prawdopodobnie w Cloud Function, więc atakujący będzie potrzebował uprzywilejowanego dostępu do Cloud Function lub jakiejkolwiek innej usługi)

Wsparcie HackTricks

Last updated