bash

ehoyos/

main

cowsay "Bienvenido"

Flujo de automatización para cuarentena de instancias EC2 con GuardDuty, EventBridge y Lambda

Este proyecto implementa una solución de seguridad para instancias EC2 utilizando AWS GuardDuty en combinación con EventBridge y Lambda. El objetivo es automatizar el proceso de cuarentena de instancias comprometidas, garantizando una respuesta rápida y eficiente ante posibles amenazas.

Arquitectura de la Solución

Imagen de la arquitectura de la solución

1. Comportamiento o Tráfico Malicioso: En este escenario, un atacante genera tráfico malicioso hacia la instancia EC2 con el objetivo de comprometerla.

2. Detección de Amenazas: AWS GuardDuty está configurado para monitorear el entorno de AWS en busca de actividades maliciosas o no autorizadas. Si detecta una amenaza relacionada con una instancia EC2 genera un "hallazgo" (finding).

3. Captura del Evento: Una regla de Amazon EventBridge está configurada para escuchar específicamente los hallazgos generados por GuardDuty. Cuando un hallazgo coincide con el patrón de la regla, se activa.

4. Acción de Cuarentena: La función Lambda, al recibir los detalles de la instancia EC2 comprometida, modifica su configuración de red. Esto implica cambiar el grupo de seguridad de la instancia por uno de "cuarentena". Este grupo de seguridad tiene reglas muy restrictivas que aíslan la instancia, bloqueando todo el tráfico de entrada y salida para evitar que la amenaza se propague.

5. Notificación: Cuando se detecta una amenaza y se toma la acción de cuarentena, se envía una notificación a los administradores del sistema a través de Amazon SNS (Simple Notification Service). Esta notificación incluye detalles sobre la instancia afectada y la naturaleza de la amenaza.

Despliegue de la solución

Diagrama de red para la aplicación Flask en AWS

Todos los componentes de la arquitectura se desplegarán en la nube de AWS utilizando Terraform. Durante el despliegue, se enviará un correo electrónico a la dirección que proporcione el usuario en el archivo "terraform.tfvars". Este correo es para la confirmación a la suscripción de SNS (Simple Notification Service). La notificación será enviada cuando GuardDuty detecte una posible amenaza y la instancia EC2 afectada se ponga en cuarentena.

Simulación de Amenazas

Imagen de la arquitectura de la solución

Para generar un hallazgo de seguridad en GuardDuty, se ejecutará el comando: "dig xmr.pool.minergate.com" desde la instancia EC2. Este comando simula un comportamiento malicioso al solicitar la dirección IP de un dominio asociado a un servidor de minería de criptomonedas a través de una consulta al servidor DNS.

Conclusiones

La combinación de AWS GuardDuty, AWS Lambda y Amazon SNS permite crear una respuesta automatizada, rápida y eficiente ante posibles amenazas de seguridad en la infraestructura de AWS. El proceso se beneficia de las capacidades de GuardDuty para monitorear continuamente el entorno y detectar amenazas con el uso de aprendizaje automático. Cuando se identifica una actividad maliciosa, GuardDuty activa un flujo de trabajo automatizado que utiliza AWS Lambda para ejecutar una acción específica, como poner en cuarentena la instancia de EC2 afectada. Finalmente, Amazon SNS notifica al equipo de seguridad sobre el hallazgo y la acción de remediación, lo que asegura que el incidente se resuelva con mínima intervención manual y se reduzca significativamente el tiempo de exposición a los riesgos.

Repositorio en GitHub del Proyecto

Puedes encontrar el código fuente de la infraestructura en mi repositorio de GitHub: ec2-quarantine

Sitio alojado en un 🪣 S3 de AWS

Powered by Reflex

Built with Reflex