Repositorio académico para el estudio de amenazas de seguridad informática. 14 módulos independientes en Python, cada uno con simulación, defensa y documentación.
Solo para uso educativo en entorno controlado.
graph TB
subgraph "Punto de entrada"
TUI["python tui.py<br/>Interfaz visual interactiva (Textual)"]
end
subgraph "core/"
SETUP["lab_setup.py<br/>generador de archivos de prueba"]
BASE["base_module.py<br/>ABCs BaseThreat / BaseDefense"]
end
subgraph "modulos/common/ — Utilidades compartidas"
COMMON["paths.py, utils.py<br/>cleanup.py, generators.py"]
end
subgraph "tui/"
TUIMOD["main.py, views.py<br/>styles.py, config.py"]
end
subgraph "modulos/ — 14 amenazas"
M01["01_ransomware"]
M02["02_wiper"]
M03["03_keylogger"]
M04["04_worm"]
M05["05_trojan"]
M06["06_backdoor"]
M07["07_rootkit"]
M08["08_botnet"]
M09["09_steganography"]
M10["10_fileless"]
M11["11_logic_bomb"]
M12["12_cryptominer"]
M13["13_supply_chain"]
M14["14_dns_tunneling"]
end
TUI --> TUIMOD
TUIMOD --> M01 & M02 & M03 & M04 & M05 & M06 & M07
TUIMOD --> M08 & M09 & M10 & M11 & M12 & M13 & M14
M01 & M02 & M03 & M04 & M05 & M06 & M07 --> COMMON
M08 & M09 & M10 & M11 & M12 & M13 & M14 --> COMMON
TUIMOD --> SETUP
- Python 3.10+
textual:pip install textual
# 1. Generar archivos de prueba
python core/lab_setup.py
# 2. Abrir la interfaz visual interactiva
python tui.py
# 3. Limpiar todo el entorno al finalizar
python core/lab_setup.py --clean
Cada módulo es autocontenido e incluye el script de emulación ({nombre}.py), el script de remediación ({defensa}.py) y su documentación teórica profunda.
| # | Módulo | Vector de Amenaza | Pilar CIA Afectado | Control CIS de Mitigación |
|---|---|---|---|---|
| 01 | ransomware | Cifrado criptográfico de archivos locales | Disponibilidad | CIS 11: Recuperación de Datos (Backups) |
| 02 | wiper | Destrucción y corrupción masiva del disco | Disponibilidad | CIS 11: Resiliencia y Restauración |
| 03 | keylogger | Intercepción de periféricos de entrada | Confidencialidad | CIS 05: Protección de Credenciales |
| 04 | worm | Autoreplicación lateral en red local | Disponibilidad | CIS 12: Gestión de Infraestructura de Red |
| 05 | trojan | Ofuscación de carga útil en binario legítimo | Integridad | CIS 02: Inventario de Activos de Software |
| 06 | backdoor | Persistencia oculta y conexión reversa C2 | Confidencialidad | CIS 04: Gestión de Accesos Seguros |
| 07 | rootkit | Evasión por manipulación de llamadas al sistema | Integridad | CIS 10: Defensas ante Malware (EDR/Heurística) |
| 08 | botnet | Reclutamiento zombi y orquestación DDoS | Disponibilidad | CIS 13: Monitoreo y Control de Redes |
| 09 | steganography | Exfiltración encubierta de datos en medios | Confidencialidad | CIS 03: Protección de Datos (DLP) |
| 10 | fileless | Ejecución volátil residente en memoria | Integridad | CIS 10: Monitoreo del Comportamiento en Memoria |
| 11 | logic_bomb | Detonación de carga por condición lógica/tiempo | Disponibilidad | CIS 08: Gestión de Registros de Auditoría |
| 12 | cryptominer | Secuestro y degradación de recursos de CPU | Disponibilidad | CIS 08: Auditoría y Monitoreo de Procesos |
| 13 | supply_chain | Inyección maliciosa en dependencias | Integridad | CIS 15: Gestión de Proveedores de Servicio |
| 14 | dns_tunneling | Canal encubierto de C2 saltando el Firewall | Confidencialidad | CIS 13: Filtrado de Conexiones y DNS |
sequenceDiagram
participant E as Estudiante
participant T as tui.py (Textual)
participant S as core/lab_setup.py
participant M as modulos/XX/
E->>T: python tui.py
T->>E: Renderiza interfaz visual (Paneles + Datos CIA/CIS)
E->>T: Selecciona módulo y presiona [Enter]
T->>S: Verifica que existan archivos de prueba
T->>M: Ejecuta subproceso (simulacion.py) de forma asíncrona
M-->>T: Envía salida estándar en tiempo real
T->>E: Muestra output en el panel de logs
E->>T: Presiona [D] para mitigar
T->>M: Ejecuta subproceso ({defensa}.py)
M-->>T: Limpieza y restauración completada
T->>E: Actualiza panel de logs con éxito
modulos/XX_nombre/
├── README.md # Teoría profunda (Tríada CIA + Controles CIS)
├── {nombre}.py # Código educativo ejecutable
└── {defensa}.py # Detección + mitigación + limpieza
Cada script de simulación soporta de forma interna:
--help— muestra ayuda--clean— elimina artefactos generados
flowchart LR
DRY["DRY<br/>modulos/common/ compartido"]
SAFE["SAFE<br/>solo en directorio lab"]
EDU["EDU<br/>paso a paso explicado"]
MOD["MODULAR<br/>14 modulos independientes"]
DRY --> SETUP["lab_setup.py unico"]
DRY --> COMMON["paths.py, utils.py<br/>cleanup.py, generators.py"]
SAFE --> CHECK["verifica archivos de prueba"]
SAFE --> CLEAN["TUI/Setup reversa todo"]
EDU --> BANNER["información en panel TUI"]
EDU --> STEP["output asíncrono en logs"]
MOD --> ISOLATE["cada modulo autocontenido"]
- Clonar el repositorio.
- Ejecutar
python core/lab_setup.pypara generar el entorno seguro con archivos de prueba. - Navegar el laboratorio visual interactivo mediante
python tui.py. - Cada módulo cuenta con documentación que profundiza en la teoría del malware, su impacto de gobernanza y bibliografía.
- Al finalizar la práctica, limpiar el entorno con:
python core/lab_setup.py --clean.
MIT — Uso exclusivamente educativo y académico