El CyberLand Labs Script es una herramienta diseñada para facilitar la gestión de máquinas virtuales en entornos Docker, con un enfoque particular en retos de seguridad informática como Capture The Flag (CTF). Este script interactivo permite tanto a jugadores como a creadores administrar, importar, crear y personalizar máquinas, con soporte para escenarios avanzados como pivoting y configuraciones de servicios automatizados.
-
🎮 Perfil Jugador: Importa y ejecuta máquinas CTF listas para jugar.
-
🛠️ Perfil Creador: Crea máquinas personalizadas, configura servicios y exporta máquinas en formato
.tar
. -
📂 Gestión Completa de Docker:
- Importa, inicia, conecta, elimina contenedores e imágenes.
- Configura servicios para iniciar automáticamente en contenedores.
-
🌐 Soporte Multimáquina: Importa y ejecuta múltiples máquinas para escenarios avanzados como pivoting.
-
⚙️ Configuración de Servicios: Define servicios que se ejecutan automáticamente al iniciar una máquina.
-
🔃 Gestión de Actualizaciones: Si existe una nueva versión del script, al iniciarlo te preguntará si quieres actualizarlo.
- Docker instalado en el sistema. Si no lo tienes, consulta Docker Docs.
- Permisos de administrador o acceso con
sudo
para ejecutar el script. - Ambiente Linux o cualquier entorno compatible con Bash.
Clona este repositorio en tu máquina:
git clone https://github.com/Rannden-SHA/CyberLand-Labs.git
cd CyberLand-Labs
Asegúrate de dar permisos de ejecución al script:
chmod +x cyberland.sh
Para iniciar el script, ejecuta:
sudo bash cyberland.sh
Este es el punto de entrada del script. Desde aquí puedes acceder a:
- Perfil Jugador: Para jugar máquinas CTF.
- Perfil Creador: Para crear y personalizar máquinas.
- Comprobar Requisitos: Verifica si Docker está instalado y configurado correctamente.
- Créditos: Información sobre los desarrolladores del proyecto.
- Salir
Diseñado para quienes desean resolver desafíos en máquinas preconfiguradas.
- Importar Máquinas CTF: Carga máquinas desde archivos
.tar
. - Iniciar Máquinas: Ejecuta automáticamente las máquinas importadas.
- Listar y Administrar Máquinas: Visualiza y administra las imágenes y contenedores disponibles.
- Limpieza Completa: Elimina todas las imágenes y contenedores de Docker.
- Selecciona "Importar máquina/s desde archivo local" en el menú.
- Proporciona la ruta al archivo
.tar
de la máquina. - El script importará y ejecutará automáticamente la máquina.
- Conecta a la máquina usando su dirección IP:
- Usa herramientas como
ping
onmap
para identificar puertos y servicios. - Accede al CTF y comienza a resolver los retos.
- Usa herramientas como
El menú del creador está diseñado para quienes desean crear o personalizar máquinas CTF.
- Selecciona "Crear nueva máquina".
- Proporciona:
- Nombre de la máquina (único y sin espacios).
- Imagen base (ej.
ubuntu:20.04
). - Puertos a exponer (separados por comas, ej.
22,80
). - Contenido de las flags para
user.txt
yroot.txt
.
- La máquina se construirá como una nueva imagen de Docker.
- Opcionalmente, el script te preguntará si deseas:
- Iniciar un contenedor para configuraciones adicionales.
- Exportar la máquina en formato
.tar
.
- Selecciona "Configurar servicios en una imagen".
- Escribe el nombre de la imagen que deseas configurar.
- Proporciona una lista de servicios separados por espacios (ej.
apache2 ssh mysql
). - El script generará una nueva imagen con los servicios configurados para iniciarse automáticamente.
- Tras crear o modificar una máquina, selecciona "Exportar imagen Docker a archivo .tar".
- La imagen se guardará en el formato
nombre_imagen.tar
.
Este submenú permite gestionar imágenes y contenedores de Docker.
- Importar: Carga máquinas desde archivos
.tar
. - Iniciar: Arranca una máquina (imagen Docker).
- Conectar: Conéctate a un contenedor en ejecución.
- Eliminar: Elimina imágenes o contenedores.
- Limpieza Completa: Borra todas las imágenes y contenedores.
- Importa un archivo
.tar
con la opción "Importar máquina/s desde archivo local". - El script nos mostrará la ip para conectarnos a la máquina.
- Selecciona "Crear nueva máquina" en el perfil creador.
- Usa una imagen base como
ubuntu:20.04
. - Configura las flags, los puertos y guarda los cambios.
- Entra en la máquina, haz los cambios que necesites y guárdala.
- Exporta la máquina y súbela en https://cyberlandsec.com/cyberland-labs/ dándole al botón de subir máquina.
- Solución: Asegúrate de haber configurado correctamente los servicios con
configurar_servicios
.
- Solución: Instala Docker siguiendo las instrucciones de Docker Docs.
Las contribuciones son bienvenidas. Por favor, realiza un fork del repositorio, realiza tus cambios y envía un pull request.
- CEO de CyberLand Labs: Adrián Gisbert
🌐 Más Información: CyberLand Labs
¡Explora, aprende y conquista en CyberLand Labs!