GCP - Secrets Manager Enum

Aprende hacking en AWS desde cero hasta experto con htARTE (Experto en Red Team de HackTricks en AWS)!

Otras formas de apoyar a HackTricks:

Secret Manager

Google Secret Manager es una solución tipo bóveda para almacenar contraseñas, claves API, certificados, archivos (máximo 64KB) y otros datos sensibles.

Un secreto puede tener diferentes versiones que almacenan datos diferentes.

Los secretos por defecto están encriptados usando una clave gestionada por Google, pero es posible seleccionar una clave de KMS para encriptar el secreto.

En cuanto a la rotación, es posible configurar mensajes para ser enviados a pub-sub cada cierto número de días, el código que escucha esos mensajes puede rotar el secreto.

Es posible configurar un día para la eliminación automática, cuando se alcanza el día indicado, el secreto se eliminará automáticamente.

Enumeración

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

Escalada de privilegios

En la siguiente página puedes ver cómo abusar de los permisos de secretmanager para escalar privilegios.

pageGCP - Secretmanager Privesc

Post Explotación

pageGCP - Secretmanager Post Exploitation

Persistencia

pageGCP - Secret Manager Persistence

Uso indebido de rotación

Un atacante podría actualizar el secreto para detener las rotaciones (para que no se modifique), o hacer rotaciones mucho menos frecuentes (para que el secreto no se modifique) o publicar el mensaje de rotación en un pub/sub diferente, o modificar el código de rotación que se está ejecutando (esto ocurre en un servicio diferente, probablemente en una Función en la Nube, por lo que el atacante necesitará acceso privilegiado sobre la Función en la Nube u otro servicio)

Última actualización