Un ataque MITM (del inglés Man In The Middle) es un tipo de ataque cibernético en el que un hacker se interpone entre un usuario y la aplicación con la que intentas comunicarte, para espiar o hacerse pasar por una de las partes. El objetivo suele ser robar información personal, como credenciales de inicio de sesión, detalles de cuentas o números de tarjetas de crédito. Estos ataques generalmente se dirigen a usuarios de aplicaciones financieras, empresas SaaS, sitios de comercio electrónico y otros sitios web donde se requiere iniciar sesión.
Para poder entenderlo mejor, imagina que recibes una carta por correo postal con información de tu banco y el cartero que va a entregarte la carta a tu casa la abre, hace una copia de todo lo que hay en su interior y acto seguido la vuelve a cerrar para que no te des cuenta que la ha abierto.
El ataque MITM en los dispositivos actuales funciona de la misma manera, pero en lugar de interceptar la carta física se coloca entre tu ordenador y el servidor en el que te quieres comunicar.
La información obtenida durante un ataque podría usarse para robo de identidad, transferencias de fondos no aprobadas, cambios de contraseña ilícitos u otros fines nefastos. Además, se puede usar para afianzarse dentro de un perímetro seguro durante la etapa de infiltración de un ataque de amenaza persistente avanzada (APT).
Etapas del ataque Man In The Middle
Para que el ataque MITM sea satisfactorio tienen que haber dos fases distintas: intercepción del tráficoy descifrado de datos.
Intercepción del tráfico
El primer paso para interceptar el tráfico de usuarios es atacar la red del usuario antes de que llegue a su destino previsto. La forma más común de hacer esto es mediante la creación de puntos de acceso WiFi gratuitos y maliciosos que no están protegidos con contraseña. Una vez que una víctima se conecta a dicho punto de acceso, el atacante obtiene visibilidad completa de cualquier intercambio de datos en línea.
Los atacantes que deseen adoptar un enfoque más activo para la interceptación pueden lanzar uno de los siguientes ataques:
- La suplantación de IP involucra a un atacante que se disfraza como una aplicación alterando los encabezados de los paquetes en una dirección IP. Como resultado, los usuarios que intentan acceder a una URL conectada a la aplicación son enviados al sitio web del atacante.
- La suplantación de identidad ARP es el proceso de vincular la dirección MAC de un atacante con la dirección IP de un usuario legítimo en una red de área local utilizando mensajes ARP falsos. Como resultado, los datos enviados por el usuario a la dirección IP del host se transmiten al atacante.
- La suplantación de DNS, también conocida como envenenamiento de caché de DNS, consiste en infiltrarse en un servidor DNS y alterar el registro de direcciones de un sitio web. Como resultado, los usuarios que intentan acceder al sitio son enviados por el registro DNS alterado al sitio del atacante.
Descifrado de datos
Después de la intercepción, el tráfico SSL bidireccional debe descifrarse sin alertar al usuario ni a la aplicación. Para ello existen varios métodos:
- La suplantación de HTTPS envía un certificado falso al navegador de la víctima una vez que se realiza la solicitud de conexión inicial a un sitio seguro. Contiene una huella digital asociada con la aplicación comprometida, que el navegador verifica de acuerdo con una lista existente de sitios confiables. Luego, el atacante puede acceder a cualquier dato ingresado por la víctima antes de que se pase a la aplicación.
- SSL BEAST (Explotación de navegador contra SSL/TLS) tiene como objetivo una vulnerabilidad TLS versión 1.0 en SSL. Aquí, la computadora de la víctima está infectada con JavaScript malicioso que intercepta las cookies encriptadas enviadas por una aplicación web. Luego, el encadenamiento de bloques de cifrado (CBC) de la aplicación se ve comprometido para descifrar sus cookies y tokens de autenticación.
- El secuestro de SSL ocurre cuando un atacante pasa claves de autenticación falsificadas tanto al usuario como a la aplicación durante un protocolo de enlace TCP. Esto configura lo que parece ser una conexión segura cuando, de hecho, el hombre en el medio controla toda la sesión.
- La eliminación de SSL degrada una conexión HTTPS a HTTP al interceptar la autenticación TLS enviada desde la aplicación al usuario. El atacante envía una versión sin cifrar del sitio de la aplicación al usuario mientras mantiene la sesión segura con la aplicación. Mientras tanto, toda la sesión del usuario es visible para el atacante.
Prevención de ataques Man In The Middle
Para bloquear los ataques MITM, los usuarios deben seguir varios pasos prácticos, además de combinar métodos de encriptación y verificación para las aplicaciones.
Para los usuarios, esto significa:
- Evitar conexiones WiFi que no estén protegidas con contraseña.
- Prestar atención a las notificaciones del navegador que informan que un sitio web no es seguro.
- Cerrar sesión inmediatamente en una aplicación segura cuando no esté en uso.
- No utilizar redes públicas (p. ej., cafeterías, hoteles) al realizar transacciones confidenciales.
Para los operadores de sitios web, los protocolos de comunicación segura, incluidos TLS y HTTPS, ayudan a mitigar los ataques de suplantación de identidad mediante el cifrado y la autenticación sólidos de los datos transmitidos. Hacerlo evita la intercepción del tráfico del sitio y bloquea el descifrado de datos confidenciales, como tokens de autenticación.
Se considera una buena práctica que las aplicaciones usen SSL/TLS para proteger cada página de su sitio y no solo las páginas que requieren que los usuarios inicien sesión. Hacerlo ayuda a disminuir la posibilidad de que un atacante robe cookies de sesión de un usuario que navega en un sitio no seguro. sección de un sitio web mientras está conectado.