Volver a actualizaciones
Nuevo releaseSep 11, 2026

ssh-mitm v6.0.0

SSH-MITM - auditorías SSH simplificadas

Compartir

SSH-MITM - auditorías ssh simplificadas

SSH-MITM intercepting password login

Una herramienta interactiva de intercepción SSH para auditorías de seguridad autorizadas.
Intercepta sesiones, monitoriza el tráfico en vivo, inyecta comandos y manipula transferencias de archivos — todo en tiempo real.

Download as an AppImage     Download on Flathub     Get it from the Snap Store

OpenSSF Best Practices Code style: black CodeFactor Documentation Status PRs Welcome GitHub Follow me on GitHub

Aviso legal: SSH-MITM está destinado únicamente a auditorías de seguridad autorizadas, pruebas de penetración e investigación. No lo utilices contra sistemas que no poseas o para los que no tengas permiso escrito explícito para probar. La intercepción no autorizada del tráfico SSH puede ser ilegal en tu jurisdicción.


🎓 ¿Nuevo en SSH-MITM? Comienza con el tutorial interactivo

ssh-mitm tutorial

Abre una guía paso a paso basada en navegador — no se necesita servidor de destino. Cinco capítulos siguen una evaluación autorizada de Logfile Inc., que cubren intercepción de contraseñas, autenticación de clave pública, transferencias SFTP, ejecución de comandos y duplicación de sesiones en vivo.

SSH-MITM interactive tutorial


Inicio rápido

Colocado entre un cliente y su servidor SSH, SSH-MITM intercepta la conexión — terminando ambos extremos de forma independiente y reenviando todo el tráfico mientras otorga al auditor visibilidad y control totales:

SSH-MITM setup

1. Instalación

SSH-MITM no requiere instalación. Descarga el AppImage y estarás listo para empezar:

wget https://github.com/ssh-mitm/ssh-mitm/releases/latest/download/ssh-mitm-x86_64.AppImage
chmod +x ssh-mitm-x86_64.AppImage

Para otras opciones de instalación (pip, Flatpak, Snap) consulta la guía de instalación.

⚡ Obtén la última versión

La versión de PyPI puede ir con retraso. Instala directamente desde GitHub para obtener el tutorial interactivo y todas las mejoras recientes:

pip install git+https://github.com/ssh-mitm/ssh-mitm.git

2. Inicia SSH-MITM

Apunta SSH-MITM a tu host de destino — usa un sistema que estés autorizado a probar:

./ssh-mitm-x86_64.AppImage server --remote-host <target-host>

3. Enruta una conexión de cliente

Haz que el cliente SSH se conecte a través de SSH-MITM en el puerto 10022:

ssh -p 10022 user@mitm-host

SSH-MITM intercepta la sesión y registra las credenciales inmediatamente:

INFO     Remote authentication succeeded
    Remote Address: <target-host>:22
    Username: alice
    Password: secret
    Agent: no agent

SSH-MITM intercepting credentials

4. Conéctate a la sesión en vivo

Para cada conexión interceptada, SSH-MITM abre un shell espejo en un puerto local:

INFO     ℹ created mirrorshell on port 34463. connect with: ssh -p 34463 127.0.0.1

Conéctate a él desde una terminal separada:

ssh -p 34463 127.0.0.1

El shell espejo refleja la sesión en tiempo real. El auditor puede observar la actividad del usuario e inyectar comandos de forma independiente, sin afectar la conexión original.

Qué puede hacer SSH-MITM

CaracterísticaDescripción
Monitorización interactiva de sesionesConéctate a cualquier sesión interceptada mediante un shell espejo — observa e inyecta comandos en tiempo real
Manipulación de transferencias de archivosIntercepta transferencias SCP/SFTP, almacena copias o reemplaza archivos sobre la marcha
Intercepción de reenvío de puertosIntercepta túneles TCP y reenvío dinámico SOCKS 4/5
Suplantación de tokens FIDO2Intercepta la autenticación con tokens de hardware mediante el ataque de autenticación trivial (información de OpenSSH)
Intercepción de autenticaciónCaptura contraseñas; acepta la misma clave pública que el servidor de destino y recurre automáticamente a la autenticación por contraseña
Monitorización de sesiones MOSHIntercepta y descifra sesiones UDP MOSH (Mobile Shell); visualiza la terminal en vivo mediante un emulador VT100/ANSI integrado
Remoting de PowerShell (PSRP)Intercepta sesiones de remoting de PowerShell sobre SSH; registra comandos, salidas, errores y transiciones de estado; escribe transcripciones por sesión
Auditoría de clientesIdentifica vulnerabilidades conocidas en clientes SSH que se conectan solo a partir del comportamiento de negociación de claves
Soporte de pluginsExtiende y personaliza todo el comportamiento de intercepción con plugins

Casos de uso

  • Pruebas de penetración — audita activamente clientes y servidores SSH en compromisos autorizados; intercepta, manipula y reproduce sesiones
  • Investigación de seguridad — analiza el comportamiento de clientes SSH, flujos de autenticación y debilidades a nivel de protocolo de forma interactiva
  • Entornos de formación — demuestra técnicas MITM y secuestro de sesiones en configuraciones de laboratorio controladas
  • Análisis de malware — monitoriza e interactúa con sesiones SSH de clientes sospechosos en entornos aislados

Investigación de seguridad

SSH-MITM se desarrolló originalmente para investigar una debilidad fundamental en cómo los clientes SSH manejan la autenticación con tokens de hardware. La investigación reveló que los tokens FIDO2 — a menudo utilizados como segundo factor — pueden ser suplantados mediante una técnica llamada autenticación trivial.

El ataque explota el hecho de que los clientes SSH pueden ser forzados a un método de autenticación trivial — como keyboard-interactive sin avisos — que efectivamente concede acceso sin ninguna autenticación real. Esto elude por completo la protección del token de hardware, ya que el token nunca es desafiado. SSH-MITM puede simular esto contra cualquier cliente que no lo rechace explícitamente:

ssh-mitm server --enable-trivial-auth

Operando desde la posición de Man-in-the-Middle es posible observar el comportamiento del cliente SSH que es invisible desde cualquiera de los extremos. SSH-MITM se ha utilizado para descubrir 7 vulnerabilidades previamente desconocidas en software SSH ampliamente desplegado:

CVE-2026-60000 CVE-2022-38337 CVE-2022-38336 CVE-2021-36370 CVE-2021-36369 CVE-2021-36368 CVE-2021-36367

Última: CVE-2026-60000 — La autenticación GSSAPI de OpenSSH violaba RFC 4462 de maneras que permitían a un atacante eludir MaxAuthTries por completo, causando una denegación de servicio previa a la autenticación. La misma causa raíz también produjo un oráculo de validez de nombre de usuario y un bloqueo del proceso privilegiado, todo corregido en OpenSSH 10.4.

Charla en DeepSec 2021 — explicación completa del ataque:
Haz clic para ver en vimeo.com
Click to view video on vimeo.com

Descargar diapositivas de la presentación

No todos los resultados de esta investigación son vulnerabilidades — consulta Contribuciones ascendentes para ver las correcciones de endurecimiento contribuidas directamente a OpenSSH.

(volver arriba)

Contribuciones

¡Las contribuciones son bienvenidas! Por favor, lee CONTRIBUTING.md para obtener detalles sobre la configuración de desarrollo, el estilo de código y cómo enviar una solicitud de extracción.

(volver arriba)

Contacto

(volver arriba)

Contribuyentes

Categorías