SSH-MITM para Auditorías SSH Simplificadas
SSH-MITM para Auditorías SSH Simplificadas

SSH-MITM: Auditorías SSH Simplificadas

SSH-MITM es un servidor SSH man in the middle para auditorías de seguridad y análisis de malware.

Soporta la autenticación por contraseña y por clave pública y SSH-MITM es capaz de detectar, si un usuario es capaz de iniciar sesión con autenticación por clave pública en el servidor remoto. Esto permite que SSH-MITM acepte la misma clave que el servidor de destino. Si la autenticación de clave pública no es posible, la autenticación volverá a la autenticación por contraseña.

Cuando la autenticación de clave pública es posible, se necesita un agente reenviado para iniciar sesión en el servidor remoto. En el caso de que no se haya reenviado ningún agente, SSH-MITM puede redirigir la sesión a un honeypot.

Uso de SSH-MITM
Uso de SSH-MITM

Características

  • autenticación con clave pública
  • aceptar la misma clave que el servidor de destino
  • secuestro y registro de sesiones de terminal
  • almacenamiento y sustitución de archivos durante las transferencias de archivos SCP/SFTP
  • redirección de puertos
  • auditoría de clientes contra vulnerabilidades conocidas
  • soporte de plugins

Instalación de SSH-MITM

SSH-MITM puede instalarse como Ubuntu Snap, PIP-Package o AppImage e incluso funciona en dispositivos Android.

A través de Snap:

#instalar ssh-mitm como paquete snap
sudo snap install ssh-mitm

A través de pip:

#instalar ssh-mitm como paquete pip de python
python -m pip install ssh-mitm

Instalar como AppImage:

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

Inicio Rápido

Para iniciar SSH-MITM, todo lo que tienes que hacer es ejecutar este comando en tu terminal de elección.

ssh-mitm --remote-host 192.168.0.x:PORT

Ahora vamos a intentar conectarnos. SSH-MITM está escuchando en el puerto 10022.

ssh -p 10022 testuser@proxyserver

Verás las credenciales en la salida del registro.

INFO     Remote authentication succeeded
    Remote Address: 127.0.0.1:22
    Username: testuser
    Password: secret
    Agent: no agent

Secuestro de Sesión

Obtener las credenciales en texto plano es sólo la mitad de la diversión. Cuando un cliente se conecta, el ssh-mitm inicia un nuevo servidor, que se utiliza para secuestrar la sesión.

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

Para secuestrar la sesión, puedes usar tu cliente ssh favorito.

ssh -p 34463 127.0.0.1

Intenta ejecutar algunos comandos en la sesión secuestrada o en la sesión original.

La salida se mostrará en ambas sesiones.

SSH es Seguro

SSH-MITM no rompe el cifrado. SSH es seguro, siempre que verifique la huella digital. SSH-MITM solo puede interceptar una sesión si se aceptó la huella digital. Si un usuario no acepta la huella digital, SSH-MITM no puede leer ni modificar ningún dato, excepto las partes de texto sin formato del protocolo.

Autenticación con Clave Pública

SSH-MITM es capaz de verificar si un usuario puede iniciar sesión con autenticación de clave pública en el servidor remoto. Si la autenticación de clave pública no es posible, SSH-MITM recurre a la autenticación por contraseña. Este paso no requiere un agente reenviado.

Para un inicio de sesión completo en el servidor remoto sigue siendo necesario el reenvío de agentes. Si no se reenvía ningún agente, SSH-MITM puede redirigir la conexión a un honeypot.

ssh-mitm --fallback-host username:password@hostname:port

Mi Carro Close (×)

Tu carrito está vacío
Ver tienda