Laboratorio Vulnerable de CI/CD en AWS
Last updated
Was this helpful?
Last updated
Was this helpful?
Hace unos años, replicar un ambiente o subir un laboratorio llevaba muchas horas de trabajo, porque se necesitaba instalar OS, aplicaciones, configuraciones, etc. Hoy en día, con Cloud, contenedores, IaC (Infraestructura como código) se puede hacer en algunos minutos. Hoy exploraremos un laboratorio de un ambiente de CI/CD vulnerable y cómo podemos “jugar” y aprender con él de una manera 100% práctica.
Como se ilustró hace un tiempo, realizamos un despliegue rápido de un laboratorio para Blue Team llamada , con el cual se puede aprender mucho de un entorno similar a uno empresarial sobre las tareas de un Analista de Ciberseguridad. Hoy haremos algo, aún más rápido en una instancia de AWS EC2 para un rol de Pentester o .
Los proyectos “Goat” han llegado a ser muy populares por ser versiones muy vulnerables. ha lanzado un “” donde se puede aprender de una manera didáctica sobre vulnerabilidades en un pipeline en Jenkins.
Utilizando una instancia EC2 t2.xlarge en Amazon Linux creamos un servidor, por temas de rendimiento se recomienda 16GB de RAM.
Se instalan las dependencias requeridas (Docker y Docker-Compose). Se puede incluir en el User Data, en la sección “Advanced”.
Una vez la instancia EC2 se ha levantado, se realiza la conexión por SSH y se ejecuta lo siguiente para levantar los contenedores (no es necesario clonar el repo):
Esperar unos minutos…
¡Y listo! Ya tenemos un entorno de laboratorio en EC2 y Docker.
De acuerdo con las instrucciones, podemos ingresar a los contenedores:
Se debe modificar el Security Group en AWS para tener acceso. No se deben abrir los puertos (es un entorno vulnerable), sólo se recomienda utilizar la opción para “My IP”. En este ejemplo, mi IP sería la 1.1.1.1
La interfaz de CTFd para ver los retos y verificar nuestras respuestas:
El Jenkins vulnerable:
Estamos listos para “romper” el pipeline, si hay algún problema con el laboratorio se pueden bajar los contenedores y volver a subir en unos pocos minutos.
Finalmente, recordar que tener un entorno de laboratorio local o en nube como AWS es fundamental para aprender, ya que permite la práctica, reduce el riesgo, facilita la experimentación y fomenta la creatividad e innovación. Un entorno de laboratorio como el CI/CD Goat proporciona un espacio seguro y práctico para experimentar y aplicar conceptos alrededor de la seguridad del SDLC (ciclo del desarrollo de software).
Conceptos - OpenAI GPT -
CI/CD Goat -
Top 10 CI/CD Risks -