# AWS - EC2 Persistence {{#include ../../../../banners/hacktricks-training.md}} ## EC2 Para más información consulta: {{#ref}} ../../aws-services/aws-ec2-ebs-elb-ssm-vpc-and-vpn-enum/ {{#endref}} ### Security Group Connection Tracking Persistence Si un defensor detecta que una **instancia EC2 fue comprometida**, probablemente intentará **aislar** la **red** de la máquina. Puede hacerlo con un **Deny NACL** explícito (pero los NACLs afectan a toda la subred), o **cambiando el security group** para no permitir **ningún tipo de tráfico entrante o saliente**. Si el atacante tenía una **reverse shell originada desde la máquina**, incluso si el SG se modifica para no permitir tráfico entrante o saliente, la **conexión no se terminará debido a** [**Security Group Connection Tracking**](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html)**.** ### EC2 Lifecycle Manager Este servicio permite **programar** la **creación de AMIs and snapshots** e incluso **compartirlas con otras cuentas**.\ Un atacante podría configurar la **generación de AMIs or snapshots** de todas las imágenes o de todos los volúmenes **cada semana** y **compartirlas con su cuenta**. ### Scheduled Instances Es posible programar instancias para ejecutarse diariamente, semanalmente o incluso mensualmente. Un atacante podría mantener en ejecución una máquina con altos privilegios o acceso interesante que pudiera usar. ### Spot Fleet Request Las spot instances son **más baratas** que las instancias regulares. Un atacante podría lanzar una **small spot fleet request for 5 year** (por ejemplo), con asignación de **IP automática** y un **user data** que envíe al atacante **cuando la spot instance arranque** la **dirección IP**, y con un **IAM role de altos privilegios**. ### Backdoor Instances Un atacante podría obtener acceso a las instancias y backdoorearlas: - Usando un **rootkit** tradicional, por ejemplo - Añadiendo una nueva **public SSH key** (consulta [EC2 privesc options](../../aws-privilege-escalation/aws-ec2-privesc/README.md)) - Backdooring el **User Data** ### **Backdoor Launch Configuration** - Backdoor the used AMI - Backdoor the User Data - Backdoor the Key Pair ### EC2 ReplaceRootVolume Task (Stealth Backdoor) Swap the root EBS volume of a running instance for one built from an attacker-controlled AMI or snapshot using `CreateReplaceRootVolumeTask`. The instance keeps its ENIs, IPs, and role, effectively booting into malicious code while appearing unchanged. {{#ref}} ../aws-ec2-replace-root-volume-persistence/README.md {{#endref}} ### VPN Crear una VPN para que el atacante pueda conectarse directamente al VPC. ### VPC Peering Crear una conexión de peering entre el VPC de la víctima y el VPC del atacante para que pueda acceder al VPC de la víctima. {{#include ../../../../banners/hacktricks-training.md}}