Skip to content

Latest commit

 

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CTF_BCSC

Repositorio del CTF de ciberseguridad original de cyberzaintza, actualizado para que funcione con versiones recientes de Docker y librerías.

Estructura del reto

  • Nivel 1: Stack Django + Postgres + Nginx/HTTPS y un servicio Go H2C. Punto de entrada principal en docker-compose.yml.
  • Nivel 2: Bot Playwright y backend Django con JWT que interactúan con el nivel 1.
  • Nivel 3: Binario ELF interactivo que habla con el backend del nivel 4.
  • Nivel 4: Django + Apache que sirven ficheros y un formulario de subida de .tar.gz.
  • Nivel 5: Django con endpoint oculto para pruebas de comandos.
  • Bonus: Contenedor Ubuntu con knockd/SSH para reto adicional.

Cambios aplicados sobre el reto original

  • Ajustes en Dockerfiles para que las imágenes Python 3.8 funcionen con versiones recientes de pip y Twisted (pins <25) y sus dependencias en Alpine.
  • Instalación explícita de toolchains/headers (gcc, musl, libffi, openssl, rust/cargo) para compilar dependencias en contenedores Python.
  • Limpieza y pequeñas correcciones de compatibilidad para evitar fallos de build/arranque con Docker moderno.

Requisitos

  • Docker y Docker Compose Plugin (o docker-compose) instalados en Linux.
  • Permiso para ejecutar contenedores (usuario en el grupo docker o usar sudo).
  • Git para clonar el repositorio.

Instalación rápida de Docker (Debian/Ubuntu)

sudo apt-get update
sudo apt-get install -y ca-certificates curl gnupg lsb-release
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/$(. /etc/os-release; echo "$ID")/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/$(. /etc/os-release; echo "$ID") \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# (Opcional) añadir tu usuario al grupo docker y reabrir sesión:
sudo usermod -aG docker "$USER"

Instalación alternativa (Kali/Debian rolling sin repo oficial de Docker)

Si el repo oficial devuelve 404 (como en Kali), instala desde los paquetes de la distribución y respeta el orden (primero Docker Engine, luego Compose):

sudo apt update
sudo apt install -y docker.io
sudo systemctl enable --now docker
sudo apt install -y docker-compose
# (Opcional) añadir tu usuario al grupo docker y reabrir sesión:
sudo usermod -aG docker "$USER"

Puesta en marcha (Linux)

# 1) Clonar el repositorio
git clone https://github.com/jagumiel/CTF_BCSC.git
cd CTF_BCSC

# 2) Construir las imágenes
docker compose build        # o: docker-compose build

# 3) Levantar los servicios
docker compose up           # o: docker-compose up

# 4) (Opcional) Añadir al /etc/hosts si quieres resolver el dominio interno
# echo "127.0.0.1 blacksheep.hacker" | sudo tee -a /etc/hosts

Los contenedores se organizan en dos redes (no-internet e internet) y crean volúmenes persistentes para base de datos y datos web. Consulta docker-compose.yml para ver puertos y dependencias entre servicios.

Notas

  • Este repositorio no incluye pasos de resolución; sólo monta la infraestructura del CTF.
  • Ejecuta los retos en un entorno aislado (p. ej. VMWare / VirtualBox) dado que los servicios son deliberadamente vulnerables.

Créditos

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages