Este proyecto es un Framework de Ciberseguridad Educativa diseñado para demostrar los principios de captura de eventos, persistencia y exfiltración de datos en entornos controlados de laboratorio.
Important
DISCLAIMER ÉTICO: Este software ha sido desarrollado exclusivamente con fines educativos y de investigación. El uso de esta herramienta contra objetivos sin consentimiento previo es ilegal y poco ético. El autor no se hace responsable del mal uso de este código.
El proyecto sigue una estructura modular y escalable pensada para entornos DevSecOps profesonales:
| Carpeta | Propósito |
|---|---|
src/ |
Núcleo del framework y lógica de captura. |
tests/ |
Pruebas de integración y simulación de comportamiento. |
docs/ |
Documentación técnica detallada y políticas de ética. |
diagrams/ |
Visualización de flujos de datos y arquitectura. |
configs/ |
Archivos de configuración y dependencias. |
Este repositorio utiliza una estrategia de Diferenciación de Entornos:
- GitHub (Público): Escaparate para portafolio. Contiene la estructura, documentación, diagramas y pseudocódigo educativo para evitar la distribución de malware funcional.
- GitLab (Privado): Laboratorio de desarrollo. Contiene la implementación completa, payloads funcionales, tests automatizados y el pipeline de CI/CD con análisis estático de seguridad (SAST).
Important
El repositorio completo con todo el código funcional está disponible en GitLab para acceso completo.
https://gitlab.com/group-cybersecurity-lab/Keylogger-lab.git
El framework se controla mediante argumentos desde la terminal:
# Modo Educativo (Seguro / Dry Run) - Por defecto
python src/main.py --mode dry-run
# Modo Simulación (Test)
python src/main.py --mode test
# Modo Laboratorio (Activo) - Requiere acceso privado
python src/main.py --mode active --output logs/sesion_001.log| Argumento | Descripción |
|---|---|
--mode |
Selecciona el modo: dry-run, active o test. |
--output |
Especifica la ruta de salida para los logs (solo en modo active). |
El proyecto integra un flujo de trabajo automatizado en GitLab Cielo:
- Linting: Validación de estándares de código.
- SAST: Escaneo de vulnerabilidades con
bandit. - Unit Testing: Validación de módulos con
pytest.