AWS - Secrets Manager Persistence

HackTricks 지원하기

Secrets Manager

더 많은 정보는 확인하세요:

AWS - Secrets Manager Enum

리소스 정책을 통해

리소스 정책을 통해 외부 계정에 대한 액세스 권한을 부여할 수 있습니다. 자세한 정보는 Secrets Manager Privesc 페이지를 확인하세요. 비밀을 액세스하려면 외부 계정이 비밀을 암호화하는 KMS 키에 액세스해야 합니다.

Secrets Rotate Lambda를 통해

자동으로 비밀을 회전하기 위해 구성된 Lambda가 호출됩니다. 공격자가 코드를 변경하여 새로운 비밀을 직접 유출할 수 있습니다.

이는 해당 작업을 위한 람다 코드가 보일 수 있는 방법입니다:

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
HackTricks 지원

Last updated