GCP - Secrets Manager Enum

Support HackTricks

Secret Manager

O Secret Manager do Google é uma solução semelhante a um cofre para armazenar senhas, chaves de API, certificados, arquivos (máx. 64KB) e outros dados sensíveis.

Um segredo pode ter diferentes versões armazenando diferentes dados.

Os segredos por padrão são criptografados usando uma chave gerenciada pelo Google, mas é possível selecionar uma chave do KMS para usar na criptografia do segredo.

Quanto à rotação, é possível configurar mensagens para serem enviadas ao pub-sub a cada número de dias, o código que escuta essas mensagens pode rotacionar o segredo.

É possível configurar um dia para exclusão automática, quando o dia indicado for atingido, o segredo será automaticamente excluído.

Enumeração

# 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 Privilégios

Na página a seguir, você pode verificar como abusar das permissões do secretmanager para escalar privilégios.

Pós Exploração

Persistência

Uso indevido de rotação

Um atacante poderia atualizar o segredo para parar as rotações (para que não seja modificado), ou fazer rotações muito menos frequentes (para que o segredo não seja modificado) ou publicar a mensagem de rotação em um pub/sub diferente, ou modificar o código de rotação que está sendo executado (isso acontece em um serviço diferente, provavelmente em uma Cloud Function, então o atacante precisará de acesso privilegiado sobre a Cloud Function ou qualquer outro serviço)

Support HackTricks

Last updated