AWS - Secrets Manager Persistence

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

Menadžer tajni

Za više informacija pogledajte:

pageAWS - Secrets Manager Enum

Putem politika resursa

Moguće je dodeliti pristup tajnama spoljnim nalozima putem politika resursa. Pogledajte Stranicu za privilegije menadžera tajni za više informacija. Imajte na umu da će spoljni nalog takođe trebati pristup KMS ključu koji enkriptuje tajnu kako bi pristupio tajni.

Putem Lambda funkcije za rotaciju tajni

Za automatsku rotaciju tajni poziva se konfigurisana Lambda. Ako bi napadač mogao promeniti kod, mogao bi direktno izfiltrirati novu tajnu sebi.

Evo kako bi kod Lambda funkcije za takvu akciju mogao izgledati:

import boto3

def rotate_secrets(event, context):
# Create a Secrets Manager client
client = boto3.client('secretsmanager')

# Retrieve the current secret value
secret_value = client.get_secret_value(SecretId='example_secret_id')['SecretString']

# Rotate the secret by updating its value
new_secret_value = rotate_secret(secret_value)
client.update_secret(SecretId='example_secret_id', SecretString=new_secret_value)

def rotate_secret(secret_value):
# Perform the rotation logic here, e.g., generate a new password

# Example: Generate a new password
new_secret_value = generate_password()

return new_secret_value

def generate_password():
# Example: Generate a random password using the secrets module
import secrets
import string
password = ''.join(secrets.choice(string.ascii_letters + string.digits) for i in range(16))
return password
Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

Last updated