GCP - Secrets Manager Enum

Soutenez HackTricks

Gestionnaire de secrets

Google Secret Manager est une solution de type coffre-fort pour stocker des mots de passe, des clés API, des certificats, des fichiers (max 64 Ko) et d'autres données sensibles.

Un secret peut avoir différentes versions stockant des données différentes.

Les secrets sont cryptés par défaut à l'aide d'une clé gérée par Google, mais il est possible de sélectionner une clé de KMS à utiliser pour crypter le secret.

En ce qui concerne la rotation, il est possible de configurer des messages à envoyer à pub-sub tous les jours, le code écoutant ces messages peut faire tourner le secret.

Il est possible de configurer une journée pour la suppression automatique, lorsque le jour indiqué est atteint, le secret sera automatiquement supprimé.

Énumération

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

Élévation de privilèges

Sur la page suivante, vous pouvez vérifier comment abuser des autorisations de secretmanager pour escalader les privilèges.

GCP - Secretmanager Privesc

Post-exploitation

GCP - Secretmanager Post Exploitation

Persistance

GCP - Secret Manager Persistence

Mauvaise utilisation de la rotation

Un attaquant pourrait mettre à jour le secret pour arrêter les rotations (afin qu'il ne soit pas modifié), ou effectuer des rotations beaucoup moins souvent (afin que le secret ne soit pas modifié) ou publier le message de rotation sur un autre pub/sub, ou modifier le code de rotation en cours d'exécution (cela se produit dans un service différent, probablement dans une fonction Cloud, donc l'attaquant aura besoin d'un accès privilégié sur la fonction Cloud ou tout autre service)

Last updated