Demo_CVE-2025-3248 — PoC educativo
Propósito: Simular la vulnerabilidad (CVE-2025-3248) en un entorno aislado para aprender sobre seguridad de la información: montar un laboratorio, observar el comportamiento explotable y discutir medidas de mitigación.
⚠️ DECLARACIÓN LEGAL Y ÉTICA (SOLO USO ÉTICO)
- Todo el contenido de este repositorio es exclusivamente para fines académicos/de investigación.
- Está terminantemente prohibido utilizar el código fuente/las técnicas incluidas para interferir con sistemas que no sean de tu propiedad o sin autorización por escrito.
- Los autores/colaboradores no se hacen responsables de cualquier consecuencia derivada del uso indebido.
- Al utilizar este repositorio, aceptas los términos anteriores.
Índice
Introducción
El repositorio proporciona:
- Un servicio demo vulnerable que se ejecuta en Docker (puerto predeterminado
7860).
- Código PoC (exploit.py) para enviar solicitudes que demuestran la explotación solo en tu laboratorio.
- Documentación para montar el entorno, ejecutar pruebas, observar y probar medidas de defensa.
Arquitectura del laboratorio
- Todas las pruebas se realizan en tu máquina o en una red de laboratorio que controlas.
- No expongas este servicio a internet.
Componentes del repositorio
docker-compose.yml — Monta el contenedor de la aplicación demo vulnerable.
exploit.py — Cliente PoC que demuestra la activación del fallo (solo para uso en laboratorio).
LICENSE — Licencia de uso.
README.md — La documentación que estás leyendo.
Requisitos del sistema
- Docker y Docker Compose (plugin).
- Python 3.10+ y
pip (para ejecutar el PoC).
- Permisos para ejecutar Docker (
sudo en Linux o usuario perteneciente al grupo docker).
Inicio rápido
A. Montar el laboratorio con Docker
git clone https://github.com/Kiraly07/Demo_CVE-2025-3248.git
cd Demo_CVE-2025-3248
# Iniciar el servicio demo (en segundo plano)
docker compose up -d
# Verificar el contenedor
docker compose ps
# Ver los logs cuando sea necesario
docker compose logs -f
B. Instalar dependencias para el PoC
python -m venv venv
# Linux/macOS
source venv/bin/activate
# Windows PowerShell
# .\venv\Scripts\Activate.ps1
pip install --upgrade pip
pip install requests colorama argparse
(Opcional) crear requirements.txt:
requests
colorama
argparse
C. Ejecutar el PoC en el laboratorio local
# Ejemplo básico
python exploit.py -u http://[TARGET]:7860
Nota importante: Apunta --url únicamente a localhost/tu máquina de laboratorio. No ataques objetivos fuera del alcance permitido.
Personalización de la configuración
- Puerto del servicio: Ajústalo en la sección
ports: de docker-compose.yml.
- Red Docker: Puedes añadir una red separada para aislar el contenedor (recomendado en laboratorios complejos).
- Proxy inverso: Si es necesario, colócalo detrás de Nginx y expónlo solo localmente (127.0.0.1 o red interna).
Limpieza
# Detener y eliminar contenedores/volúmenes
docker compose down -v
# (Opcional) Eliminar venv
deactivate 2>/dev/null || true
rm -rf venv
Notas de defensa / mitigación
- Actualiza el software a la versión parcheada cuando haya avisos oficiales.
- Limita la superficie de ataque: abre solo los puertos necesarios; colócalo detrás de un proxy inverso con autenticación.
- Principio de mínimo privilegio para el contenedor:
- Ejecútalo con un usuario sin privilegios.
- Restringe capabilities, activa el sistema de archivos raíz de solo lectura si es posible.
- Separa la red, no montes discos sensibles.
- Monitoreo y registros: activa los access logs; rastrea patrones sospechosos; alerta temprana.
- WAF/IDS/IPS: aplícalos donde corresponda; valida siempre las entradas (input validation).
Solución de problemas
- Puerto 7860 ocupado: cambia el mapeo de puertos (p. ej. 8080:7860) en docker-compose.yml.
- No se puede iniciar el contenedor: revisa los logs con docker compose logs -f.
- Falta de permisos de Docker: usa sudo o añade el usuario al grupo docker.
- Error al instalar paquetes de Python: actualiza pip y verifica el proxy/firewall interno.
Ruta de aprendizaje sugerida
- Lee docker-compose.yml para entender la superficie de ataque/las dependencias.
- Ejecuta el PoC contra el laboratorio local y registra las solicitudes/respuestas HTTP.
- Prueba medidas de mitigación y vuelve a ejecutar el PoC para evaluar su efectividad.
- Escribe un informe: causa raíz del fallo, cadena de explotación, impacto y recomendaciones.
Licencia
- Consulta el archivo LICENSE en la raíz del repositorio.
Reiteración del compromiso de uso ético
Este repositorio se creó solo con fines educativos.
No lo utilices para fines no autorizados. Solicita siempre permiso explícito antes de realizar pruebas de seguridad en cualquier sistema que no sea de tu propiedad.