GCP - Secrets Manager Enum

Apoie o HackTricks

Gerenciador de Segredos

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

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

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

Em relação à 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 é atingido, o segredo será excluído automaticamente.

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

Escalação de Privilégios

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

GCP - Secretmanager Privesc

Pós-Exploração

GCP - Secretmanager Post Exploitation

Persistência

GCP - Secret Manager Persistence

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 com menos frequência (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 sendo executado (isso acontece em um serviço diferente, provavelmente em uma Função na Nuvem, então o atacante precisará de acesso privilegiado sobre a Função na Nuvem ou qualquer outro serviço)

Suporte ao HackTricks

Last updated