
Despliegue de honeypot SSH de interacción media que captura tráfico real de fuerza bruta, descargas de malware y comportamiento de atacantes. Incluye grabación de sesiones TTY, recolección de credenciales e inteligencia de amenazas contrastada con 159 fuentes.
Un honeypot Cowrie de interacción media desplegado en un VPS Linux alquilado con internet pública, diseñado para atraer, registrar y analizar tráfico real de fuerza bruta SSH. Durante una ventana de captura de 8 días, el sensor registró 37,477 sesiones de 1,582 IPs atacantes únicas, capturando 794 descargas de malware — cada observación cotejada contra 159 fuentes académicas e industriales públicas.
| 📊 Informe en vivo — HTML interactivo | 📜 Logs/ — registros diarios de Cowrie | 📸 ScreenShots/ — capturas de sesión |
| 🏗️ docs/ — diagrama de arquitectura | 🗂️ Reports/ — fuente del informe | 🐛 Abrir el análisis renderizado |
El honeypot reside en un VPS Linux alquilado. El tráfico de internet público en tcp/22 es redirigido silenciosamente mediante NAT a Cowrie en tcp/2222, mientras que el demonio real de OpenSSH se mueve a un puerto de gestión no estándar (tcp/49222) accesible solo con una clave privada. Para un atacante, la máquina parece un servidor Debian vulnerable en el puerto 22; para el administrador, es completamente accesible en un puerto separado y silencioso.

Dos carriles a través de la misma máquina: el carril del atacante (arriba) atraviesa las reglas NAT de iptables y termina en Cowrie, que escribe en registros TTY y una carpeta de cuarentena. El carril del administrador (abajo) pasa directamente a través de iptables al demonio real de OpenSSH en tcp/49222. Los dos caminos nunca se tocan.
Fuente del vector:
docs/architecture.svg

Captura en vivo: múltiples IPs atacantes golpeando tcp/2222 simultáneamente — CONNECTs (cian), LOGIN SUCCESS / FAILED, y los pares de credenciales que intentaron. El mismo minuto, múltiples campañas.

Secuencia completa de comandos post-inicio de sesión de un atacante — chattr -ia ~/.ssh, el implante de clave mdrfckr, cat /proc/cpuinfo, uname, lscpu, crontab -l. Capturado textualmente con marcas de tiempo de milisegundos y un ID de sesión.

Vista agregada de muchas sesiones: conexiones (cian), inicios de sesión fallidos (rojo), inicios de sesión exitosos (verde), comandos (amarillo), transferencias de archivos (púrpura). El patrón repetitivo del implante de clave mdrfckr + chattr -ia .ssh es visible a través de distintas IPs atacantes — misma campaña, diferentes bots.

La descarga característica del criptominero RedTail XMRig: seis archivos en una sesión desde 213.209.159.158 — instaladores clean.sh y setup.sh, más cuatro binarios ELF específicos de arquitectura (redtail.arm7, redtail.arm8, redtail.i686, redtail.x86_64) cubriendo routers, IoT, x86 heredado y servidores en una sola descarga.
ls, wget, cat /proc/cpuinfo registrado con marcas de tiempo de alta resoluciónwget / curl son interceptados y puestos en cuarentena bajo downloads/🌍 Principales regiones de origen: Hong Kong (Alibaba Cloud) · China (ChinaNet) · Bulgaria (IT7 Networks) · Rusia (Aeza Group, sancionada)
🐛 Principales campañas identificadas: Criptominero RedTail XMRig · familia de implantes de clave SSH mdrfckr · reclutadores IoT derivados de Mirai · firma de propagador SSH 3245gs5662d34
Análisis completo con gráficos interactivos, mapeo MITRE ATT&CK y discusión por hallazgo con fuentes → Abrir el informe en vivo.
cowriesudo useradd -m -s /bin/bash cowrie
sudo passwd -l cowrie
su - cowrie
git clone https://github.com/cowrie/cowrie.git
cd cowrie
python3 -m venv cowrie-env
source cowrie-env/bin/activate
pip install --upgrade pip
pip install -r requirements.txt
sshd real fuera del puerto 22 (antes de agregar cualquier regla NAT)sudo sed -i 's/^#\?Port .*/Port 49222/' /etc/ssh/sshd_config
sudo systemctl restart sshd
⚠️ Verifica desde un segundo terminal que aún puedas iniciar sesión en el puerto 49222 antes de continuar.
sudo iptables -t nat -A PREROUTING -p tcp --dport 22 -j REDIRECT --to-port 2222
sudo iptables-save | sudo tee /etc/iptables/rules.v4
bin/cowrie start
SSH-Honeypot-Research/
├── README.md ← estás aquí
├── docs/
│ ├── architecture.png ← diagrama de arquitectura (renderizado)
│ └── architecture.svg ← diagrama de arquitectura (fuente vectorial)
├── Logs/ ← registros diarios de Cowrie (cowrie_YYYY-MM-DD.log)
│ ├── cowrie_2026-05-08.log
│ ├── cowrie_2026-05-09.log
│ └── ... (8 días en total)
├── Reports/
│ └── honeypot_report.html ← informe interactivo completo
└── ScreenShots/ ← capturas de sesión, instantáneas de registros, cargas útiles
├── live session.png ← flujo multi-IP de CONNECT/LOGIN
├── CMD1.png · CMD2.png ← secuencias de comandos post-inicio de sesión capturadas
├── sh1.png · sh2.png ← vistas agregadas de registros diarios
└── RedTail Payload.png ← descarga característica del criptominero de 4 arquitecturas
Cotejado contra 159 fuentes académicas e industriales — la lista completa anotada está en la sección de Referencias del informe en vivo. Anclas académicas clave:
Este honeypot fue desplegado únicamente con fines de investigación defensiva. Todos los artefactos capturados (IPs, cargas útiles, credenciales) son observados de manera pasiva a partir de tráfico entrante no solicitado. El honeypot no inicia escaneos, no toma represalias y no aloja ningún servicio más allá del listener Cowrie en un entorno aislado. Reutilice la configuración de manera responsable y dentro de la ley aplicable.
Construido con Cowrie. 🛠️
| Capa | Qué hace | Por qué |
|---|
Usuario no privilegiado cowrie | El honeypot se ejecuta como un usuario del sistema sin sudo, sin shell de host | Un compromiso en el peor caso de la caja de arena no obtiene acceso al host |
| Entorno virtual Python | Árbol de dependencias aislado y fijo (Twisted, cryptography, etc.) | Sin conflicto con el Python del sistema; desmontaje y reconstrucción limpios |
| Sistema de archivos simulado | Las escrituras del atacante van a una superposición efímera de Cowrie | El disco real nunca se toca, incluso en sesiones largas |
| Redirección NAT con iptables | La regla PREROUTING reescribe el tráfico entrante de tcp/22 a tcp/2222 | Cowrie se vincula a un puerto alto (no necesita root); el engaño permanece invisible |
| Migración del puerto de gestión | El sshd real se mueve a tcp/49222, autenticación solo con clave | El ruido de fuerza bruta contra el demonio real cae a cero |
| Métrica | Valor |
|---|
| Sesiones totales | 37,477 |
| IPs atacantes únicas | 1,582 |
| Inicios de sesión fallidos | 14,968 |
| Inicios de sesión a shell | 22,720 |
| Comandos de shell capturados | 21,968 |
| Descargas de malware | 794 |
| Fuentes externas cotejadas | 159 |