Seguridad

Cómo realizar un ataque Man in the Middle (MITM) sobre el protocolo SSH

Ataque de hombre en el medio sobre SSH con SSH-MITM y ettercap: instalación, envenenamiento ARP, captura de la sesión y refuerzo de la seguridad de OpenSSH.

· 3 min de lectura · nivel avanzado

Buenos días,

Es esencial saber cómo se realiza un ataque de hombre en el medio para medir la importancia de aplicar las contramedidas de protección del servicio SSH.

Le propongo empezar a trabajar sobre el siguiente entorno:

  • Un servidor Kali Linux -> Atacante
  • Un servidor SSH en Linux -> Objetivo 1
  • Un cliente SSH Windows o Linux -> Objetivo 2

Paso 1: Descarga e instalación de SSH-MITM

Para empezar, hay que actualizar la lista de paquetes de nuestro Kali Linux:

apt update

A continuación habrá que descargar el programa SSH-MITM desde GitHub:

git clone https://github.com/jtesta/ssh-mitm

Habrá que realizar varios pasos: acceder al directorio de instalación, definir el

formato de idioma US-utf8 y luego lanzar el script de instalación:

cd ssh-mitm
export LANG=en_US.utf-8
sudo ./install.sh

El comando « export LANG=en_US.utf-8 » exporta, mediante una variable de entorno, el idioma predeterminado utilizado en el momento de la instalación de la herramienta (inglés con una codificación UTF-8). Sin esta exportación, un mensaje de error impide la instalación.

./ permite lanzar el script de shell install.sh presente en la carpeta ssh-mitm.

Durante esta instalación, es posible que se le pida instalar AppArmor para restringir los derechos de ssh-mitm en la máquina. Si es así, acepte la propuesta.

Ahora podemos lanzar el servicio ssh-mitm, que escuchará en el puerto 2222:

sudo ./start.sh

Es fácil comprobar cuáles son los servicios vinculados a los puertos abiertos con:

ss -ltnp

Paso 2: Realización del ataque MITM con ettercap

Las dos direcciones IP deben sustituirse por las de su servidor SSH Linux y las de su cliente SSH Windows o Linux.

sudo ettercap -i eth0 -T -M arp /192.168.x.x// /192.168.x.x//
  • -T: lanza ettercap en modo texto
  • -M: indica que se lanza un ataque de tipo «Man in the middle»
  • 192.168.x.x: servidor SSH / 192.168.x.x: cliente SSH -> direcciones IP de las víctimas
Illustration 1 — Comment effectuer une attaque Man in the Middle - MITM sur le protocole SSH

Le propongo lanzar Wireshark en nuestro Kali Linux para comprobar la eficacia del envenenamiento de la tabla ARP (ARP Poisoning).

Illustration 2 — Comment effectuer une attaque Man in the Middle - MITM sur le protocole SSH

Paso 3: Recuperación de la información transmitida por SSH

En primer lugar es necesario detener el ataque pulsando « h » y después « q ».

El archivo generado /home/ssh-mitm/shell_session_0.txt contiene el conjunto de la información que ha transitado entre el cliente y el servidor SSH durante el ataque de hombre en el medio.

Illustration 3 — Comment effectuer une attaque Man in the Middle - MITM sur le protocole SSH

También a veces es posible encontrar los inicios de sesión utilizados directamente desde el archivo auth.log, que contiene los registros de autenticación del Kali Linux.

Puede visualizarlo así:

cat /var/log/auth.log

Paso 4: Refuerzo de la seguridad del servicio OpenSSH

Diríjase al siguiente artículo: Cómo reforzar la seguridad del servicio OpenSSH con las claves de cifrado SSH