
ENDGAME C2 FRAMEWORK — mando y control impulsado por IA para operaciones profesionales de red team
ENDGAME es un framework profesional de comando y control construido para compromisos autorizados de red team, pruebas de penetración e investigación educativa en seguridad. Diseñado para simular técnicas realistas de adversarios, evaluar la cobertura de detección y ayudar a los equipos de seguridad a comprender sus brechas defensivas, con una Consola de IA integrada que convierte el lenguaje natural en comandos ejecutados y analiza automáticamente cada resultado.
Hecho con IA, pensado y dirigido por un humano.
🌐 endgamec2framework.com · 📄 Documentación



git clone https://github.com/endgamec2framework/endgame
cd endgame
./install.sh
Vuelve a ejecutar ./install.sh para actualizar: obtendrá el código más reciente y recompilará conservando los certificados y los perfiles de operador.
Guía de configuración completa: Documentación → Instalación
La Consola de IA de ENDGAME es una funcionalidad de primera clase que integra un copiloto de IA directamente en el flujo de trabajo del operador. No es un chatbot añadido como complemento: vive en el mismo panel que tus terminales de agentes, conoce el conjunto completo de comandos C2 y dispone de contexto en tiempo real sobre el objetivo: hostname, SO, usuario, privilegios y transporte.
🤖 en el panel inferior de la consola, junto a tus pestañas de terminal habituales.


Cualquier modelo disponible en tu instancia de Ollama funciona. Recomendados para contexto de red team:
qwen3.6:latest — predeterminado · rápido · buen seguimiento de instruccionesqwen3.6:35b-a3b-coding-mxfp8 — más grande · mejor razonamiento de código/comandosdeepseek-r1:8b / deepseek-r1:32b — modelos de razonamiento · buenos en cadenas de ataque de varios pasos✓ = implementado · 🔧 = en progreso / planificado · — = no disponible
Compilación para Linux (desde un host Linux: los agentes se compilan de forma nativa):
# Go
GOOS=linux GOARCH=amd64 go build -o agent_linux .
# Rust
cargo build --release --target x86_64-unknown-linux-gnu
# C
make -f Makefile.linux AGENT_SERVER_URL=https://<c2>:<port>
# Nim
./build_linux.sh
Transportes de los agentes: HTTP · HTTPS · mTLS · DNS · DoH · pipe SMB · TCP
Mesh relay: los agentes pueden registrarse como pivotes HTTP o TCP; cuando un agente pierde conectividad directa con el teamserver (≥ 3 fallos de beacon consecutivos), recurre automáticamente a cualquier peer conocido y retransmite su beacon a través del transporte existente de ese agente. El teamserver distribuye la lista de peers en cada respuesta de beacon para que los agentes siempre tengan un respaldo actualizado. A diferencia de las superposiciones P2P totalmente descentralizadas (libp2p/DHT), las rutas de relay en ENDGAME son designadas y registradas por el operador: el operador decide qué agente actúa como pivote, y la cadena de relay es siempre explícita y se puede detener bajo demanda.
Evasión: AMSI (VEH/DR0) · ETW blind · NTDLL unhook · Ekko XOR sleep masking · syscalls indirectas (Hell's Gate) · stack spoofing · API hashing (PEB walk) · PPID spoof · anti-sandbox · borrado de cabecera · UDRL phantom DLL · BLOCKDLLS · detección de quema de DNS canary
Inyección: hilo remoto · APC early-bird · secuestro de hilo · fork-and-run · hollowing
Post-explotación: captura de pantalla · keylogger · portapapeles · volcado de LSASS · robo de tokens · bypass de UAC · persistencia
Descubrimiento de red: ARP (devuelve MAC, sin elevación en Windows) · barrido de ping ICMP · sonda TCP, seleccionable por escaneo
Movimiento lateral: psexec · smbexec · atexec · wmi · dcom · winrm · ssh
MITRE ATT&CK: más de 50 comandos asignados a 12 tácticas · exportación de capa Navigator · matriz de técnicas en la GUI
Consulta la documentación completa para ver comandos, referencia de API, lista de IOC y guía del operador.
ENDGAME implementa mesh relay controlado en lugar de una superposición P2P totalmente descentralizada. Las rutas de relay son designadas por el operador: el operador elige qué agente actúa como pivote, y la cadena de relay es explícita, se puede detener bajo demanda y queda registrada, sin dependencia de infraestructuras DHT públicas como libp2p que los cortafuegos empresariales bloquean habitualmente.
Agentes multiplataforma: los cuatro agentes admiten ahora Windows y Linux. El agente Go admite además macOS. Las características específicas de plataforma (evasión en Windows, parcheo de AMSI/ETW, syscalls Hell's Gate, stack spoofing, robo de tokens, inyección de PE) son exclusivas de Windows y se compilan fuera en Linux; la compilación Linux conserva toda la funcionalidad de beacon, shell, operaciones de archivo, SOCKS5, escaneo de puertos, persistencia, recopilación de credenciales y pivote. Consulta la matriz de soporte de plataformas a continuación para ver el detalle por característica y el script build_linux.sh en cada directorio de agente para la compilación en Linux.
Canarios DNS: cada compilación de payload incorpora un subdominio canario único por compilación. Cuando un sandbox o escáner antivirus analiza dinámicamente el binario, la consulta DNS de inicio del agente resuelve canary.<token>.<c2_domain>, interceptada por el servidor DNS autoritativo del C2, y el operador recibe una alerta de quema en tiempo real a través del flujo de eventos. Los canarios se registran por compilación en la base de datos y nunca se reutilizan.
Syscalls indirectas + stack spoofing (Nim): syscalls.nim resuelve los SSN en tiempo de ejecución mediante Hell's Gate (lee mov eax,SSN de los stubs de ntdll) con respaldo de Halo's Gate para stubs parcheados por EDR. Cuando se encuentran tanto un gadget syscall;ret como un gadget call rel32;ret en la sección .text de ntdll, el agente pasa a stubs falsificados de 110 bytes que colocan la dirección del gadget en [RSP] antes de la syscall, haciendo que la pila de llamadas visible para el EDR parezca originarse dentro de ntdll en lugar de en el código del agente.
API hashing (C): api_resolve.c utiliza hashing DJB2 y un recorrido de la PEB InLoadOrderModuleList para resolver 33 funciones sensibles de WinAPI en tiempo de ejecución. Ninguna de estas funciones aparece en la tabla de importaciones del binario.



HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon tras ejecutar SharpUp. No se requiere exploit.
Esta herramienta es solo para pruebas de seguridad autorizadas, uso educativo y entornos de laboratorio. El uso contra sistemas sin autorización escrita explícita es ilegal y está estrictamente prohibido. Al usar este software aceptas la Política de uso ético.
Por favor, no abras issues sobre detección de EDR/AV. Las compilaciones predeterminadas incluyen IOC conocidos; consulta la documentación de IOC. Los operadores deben recompilar con certificados personalizados, flags de compilación y perfiles maleables para compromisos autorizados.
| Capacidad | Detalle |
|---|
| Integrada en el panel de consola | Se abre como pestaña: sin modal flotante ni cambio de contexto |
| Conocimiento completo de comandos C2 | El prompt del sistema incluye todos los comandos disponibles, el SO/arquitectura/privilegios del agente, el transporte y la cola de tareas actual |
| Respuestas en streaming | Los tokens se transmiten en tiempo real a medida que el modelo los genera |
| Bucle de autoanálisis | Tras cada ejecución de comando, la salida se envía automáticamente a la IA para su interpretación y recomendación del siguiente paso |
| Multisesión | Abre la Consola de IA para varios agentes simultáneamente: cada pestaña mantiene un historial de chat independiente |
| Independiente del proveedor | Funciona con Ollama (local, sin conexión) o con la API de Anthropic Claude, según lo configurado en la pestaña de IA |
| Confirmar antes de ejecutar | Cada comando sugerido requiere un clic explícito: la IA nunca envía tareas de forma autónoma |
| Componente | Resumen |
|---|
| Servidor | Binario Go · teamserver multioperador · op-log SQLite · API mTLS :31337 · alertas de quema de DNS canary |
| GUI web | Gráfico de kill-chain (auto-refresco) · consola de agente · Consola de IA · gestor de botín · asistente de IA · multioperador |
| Agente (Go) | Windows · Linux · macOS · 7 transportes · suite completa de evasión · API hashing (PEB walk, 22 fns fuera de IAT) · operaciones Kerberos · cargador PE en línea · CONFIG runtime · ~13 MB |
| Agente (Nim) | Windows · Linux · 7 transportes incl. pipe SMB · syscalls indirectas (Hell's Gate) · stack spoofing · NTDLL unhook · API hashing (PEB walk, 22 fns fuera de IAT) · cargador PE en línea · BOF + .NET CLR · keylogger · SOCKS5 · ISHELL · credenciales del navegador · movimiento lateral · anti-sandbox · ~1 MB |
| Agente (Rust) | Windows · Linux (x64) · 7 transportes · syscalls indirectas (Hell's Gate) · AMSI patch · sleep masking · API hashing · stack spoofing · NTDLL unhook · anti-sandbox · horario de trabajo · DNS canary · operaciones Kerberos · cargador PE en línea · BOF + .NET CLR · ISHELL · screenwatch · suite completa de inyección · BLOCKDLLS · PEB spoof · ETW patch · credenciales del navegador · keylogger · SOCKS5 · movimiento lateral (8 métodos) · ~507 KB |
| Agente (C) | Windows · Linux (x64) · 7 transportes · formato EXE + DLL · API hashing (PEB walk, 35 fns fuera de IAT) · PPID spoof · anti-sandbox · operaciones Kerberos · cargador PE en línea · NTDLL unhook · keylogger · SOCKS5 · ISHELL · credenciales del navegador · .NET CLR · BOF · movimiento lateral · ~130 KB |
| Cargadores | Stubs de shellcode en C / Go / Nim |
| Informes | HTML · JSON · CSV · capa de MITRE ATT&CK Navigator · resumen ejecutivo con IA |
| Go (Ekko) | Nim | Rust | C |
|---|
| Plataforma | Win · Linux · macOS | Win · Linux | Win · Linux | Win · Linux |
| Tamaño | ~13 MB | ~1.2 MB | ~507 KB | ~130 KB |
| Transportes | HTTP · HTTPS · mTLS · DNS · DoH · SMB · TCP | HTTP · HTTPS · mTLS · DNS · DoH · SMB · TCP | HTTP · HTTPS · mTLS · DNS · DoH · SMB · TCP | HTTP · HTTPS · mTLS · DNS · DoH · SMB · TCP |
| Formato DLL | ✓ | ✓ | ✓ | ✓ |
| Shell / operaciones de archivo / sysinfo | ✓ | ✓ | ✓ | ✓ |
| Subida / Descarga | ✓ | ✓ | ✓ | ✓ |
| Captura de pantalla | ✓ | ✓ | ✓ | ✓ |
| Screenwatch (en vivo) | ✓ | ✓ | ✓ | ✓ |
| Keylogger | ✓ | ✓ | ✓ | ✓ |
| Monitor de portapapeles | ✓ | ✓ | ✓ | ✓ |
| Volcado de LSASS (MINIDUMP) | ✓ | ✓ | ✓ | ✓ |
| AMSI patch | ✓ (VEH / DR0) | ✓ | ✓ xor-ret patch | ✓ |
| ETW blind | ✓ | ✓ + NtSetInfoProcess | ✓ EtwEventWrite patch | ✓ |
| NTDLL unhook | ✓ | ✓ | ✓ | ✓ |
| Syscalls indirectas | ✓ Hell's Gate + Halo's Gate | ✓ Hell's Gate + Halo's Gate | ✓ Hell's Gate + Halo's Gate | ✓ Hell's Gate + Halo's Gate |
| Stack spoofing | ✓ gadget RET precedido de call | ✓ stubs falsificados de 110 bytes | ✓ stubs falsificados de 110 bytes | ✓ stubs falsificados de 110 bytes |
| API hashing (eliminación de IAT) | ✓ DJB2 + PEB walk · 22 fns | ✓ DJB2 + PEB walk · 22 fns | ✓ DJB2 + PEB walk · 21 fns | ✓ DJB2 + PEB walk · 35 fns |
| Sleep masking | ✓ Ekko XOR + NOACCESS | ✓ XOR en secciones no ejecutables + NtDelayExecution | ✓ XOR + NtDelayExecution | ✓ XOR + NOACCESS |
| Anti-sandbox | ✓ modelo de puntuación de 12 comprobaciones | ✓ comprobaciones de CPU/RAM/disco/inactividad (-d:SandboxChecks) | ✓ puntuación de CPU/RAM/disco/usuario | ✓ modelo de puntuación |
| CONFIG runtime | ✓ sleep · jitter · horario de trabajo · método de inyección | ✓ sleep · jitter · horario de trabajo | ✓ sleep · jitter | ✓ sleep · jitter · horario de trabajo |
| Restricción por horario de trabajo | ✓ | ✓ | ✓ | ✓ |
| DNS canary | ✓ consulta de quema al inicio | ✓ consulta de quema al inicio | ✓ consulta de quema al inicio | ✓ consulta de quema al inicio |
| Borrado de cabecera PE | ✓ | ✓ | ✓ | ✓ |
| Borrado de HWBP | ✓ | ✓ | ✓ | ✓ |
| PPID spoof | ✓ | ✓ | ✓ | ✓ |
| BLOCKDLLS / PEB spoof | ✓ | ✓ | ✓ | ✓ |
| Silenciar EDR (ETW/hook) | ✓ | ✓ | ✓ | ✓ |
| Detección de hooks + HWBP | ✓ | ✓ | ✓ | ✓ |
| Kerberos (klist · ptt · purge) | ✓ API LSA | ✓ API LSA | ✓ API LSA | ✓ API LSA |
| Ejecución de PE en línea | ✓ cargador PE64 completo | ✓ cargador PE64 completo | ✓ cargador PE64 completo | ✓ cargador PE64 completo |
| Inyección de procesos | ✓ remota · APC · hijack · fork-and-run · hollow | ✓ remota · APC | ✓ remota · APC · hijack · fork-and-run · hollow | ✓ remota · APC |
| BOF / .NET CLR | ✓ | ✓ BOF + .NET CLR | ✓ BOF + .NET CLR | ✓ BOF + .NET CLR |
| Robo de tokens / suplantación | ✓ | ✓ | ✓ | ✓ |
| Almacén de tokens (guardar · reutilizar) | ✓ | ✓ | ✓ | ✓ |
| GETSYSTEM / bypass de UAC | ✓ | ✓ | ✓ | ✓ |
| Persistencia | ✓ | ✓ | ✓ | ✓ |
| Movimiento lateral | ✓ psexec · smbexec · atexec · wmi · dcom · winrm · ssh · runas | ✓ psexec · smbexec · atexec · wmi · dcom · winrm · ssh · runas | ✓ psexec · smbexec · atexec · wmi · dcom · winrm · ssh · runas | ✓ psexec · smbexec · atexec · wmi · dcom · winrm · ssh · runas |
| SOCKS5 / reenvío de puertos | ✓ | ✓ | ✓ | ✓ |
| SOCKS inverso | ✓ | ✓ | ✓ | ✓ |
| Escaneo de puertos | ✓ | ✓ | ✓ | ✓ |
| Mesh relay pivot | ✓ HTTP + TCP | ✓ HTTP + TCP | ✓ HTTP + TCP | ✓ HTTP + TCP |
| Recopilación de credenciales | ✓ GPP · WiFi · Navegador · NTDS | ✓ GPP · WiFi · Navegador · NTDS | ✓ WiFi · Navegador | ✓ GPP · WiFi · Navegador · NTDS |
| Operaciones de registro | ✓ | ✓ | ✓ | ✓ |
| ADS (leer · escribir · listar · eliminar) | ✓ | ✓ | ✓ | ✓ |
| Secuestro de COM | ✓ | ✓ | ✓ | ✓ |
| Timestomp | ✓ | ✓ | ✓ | ✓ |
| Shell interactivo (ISHELL) | ✓ | ✓ | ✓ | ✓ |
| MITRE ATT&CK | 50+ comandos · 12 tácticas | evasión · post-explotación · lateral | evasión · post-explotación · lateral | evasión · post-explotación · lateral |
| Característica | Windows (todos los agentes) | Linux (Go · Rust · C · Nim) | macOS (solo Go) |
|---|
| Beacon + beaconing (HTTP/HTTPS/mTLS/TCP/DNS) | ✓ | ✓ | ✓ |
| Shell / operaciones de archivo / subida / descarga | ✓ | ✓ | ✓ |
| SYSINFO / PS / ENV | ✓ | ✓ | ✓ |
| Escaneo de puertos | ✓ | ✓ | ✓ |
| SOCKS5 / SOCKS inverso / reenvío de puertos | ✓ | ✓ | ✓ |
| Mesh relay pivot (HTTP + TCP) | ✓ | ✓ | ✓ |
| Persistencia | ✓ registro/servicio/schtask | ✓ cron / systemd de usuario | ✓ LaunchAgent |
| Captura de pantalla | ✓ GDI | ✓ ImageMagick (si X11) | ✓ |
| Recopilación de credenciales | ✓ Navegador · WiFi · GPP · NTDS | ✓ Navegador (rutas Linux) | ✓ Navegador |
| Solo Windows (evasión) | |||
| AMSI patch / ETW blind | ✓ | — | — |
| Syscalls indirectas (Hell's Gate) | ✓ | — | — |
| Stack spoofing (stubs de 110 bytes) | ✓ | — | — |
| API hashing / eliminación de IAT | ✓ | — | — |
| Sleep masking (XOR + NOACCESS) | ✓ | — | — |
| NTDLL unhook | ✓ | — | — |
| PPID spoof / BLOCKDLLS / PEB spoof | ✓ | — | — |
| Robo de tokens / bypass de UAC | ✓ | — | — |
| Inyección de procesos | ✓ | — | — |
| Ejecución de PE en línea / .NET CLR | ✓ | — | — |
| Keylogger / monitor de portapapeles | ✓ | — | — |
| Movimiento lateral (8 métodos) | ✓ | — | — |
| Kerberos (klist/ptt/purge) | ✓ | — | — |