AWS - Secrets Manager Persistence

htARTE (HackTricks AWS Red Team Expert)에서 제로부터 영웅까지 AWS 해킹 배우기!

다른 방법으로 HackTricks를 지원하는 방법:

Secrets Manager

자세한 정보는 확인하세요:

pageAWS - 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
htARTE (HackTricks AWS Red Team 전문가)로부터 AWS 해킹을 제로부터 전문가까지 배우세요 htARTE (HackTricks AWS Red Team Expert)!

HackTricks를 지원하는 다른 방법:

最終更新