¿Qué es un ataque de intermediario (MITM)? Cómo evitarlo
Un ataque de intermediario (man-in-the-middle, MITM) es aquel en el que un atacante se introduce discretamente entre dos partes que creen estar hablando directamente entre sí. Desde esa posición, el atacante puede leer el tráfico, y a menudo cambiarlo, sin que ninguna de las dos lo note. Es una de las ideas más antiguas de la seguridad de redes y, gracias a los kits de phishing modernos, una de las más relevantes de nuevo hoy.
Qué es de verdad un ataque de intermediario
El rasgo que lo define es la interceptación de un canal de comunicación. En lugar de entrar en un portátil o un servidor, el atacante se coloca en el camino por el que viajan los datos y retransmite los mensajes entre los dos extremos. Como retransmite la conversación fielmente, los dos lados siguen funcionando con normalidad, y precisamente por eso los ataques MITM son tan difíciles de detectar. El atacante se convierte en un proxy silencioso que puede espiar credenciales, tokens de sesión y datos sensibles, y manipular contenido, por ejemplo desviando un pago o inyectando código malicioso.
Los ataques MITM importan porque socavan a la vez la confidencialidad y la integridad. Todo lo que pasa por el atacante queda expuesto, y todo lo que altera es considerado fiable por el destinatario. La causa de fondo es casi siempre la misma: el canal no estaba bien cifrado, el cifrado no se imponía o nunca se verificó la identidad del otro extremo.
Cómo funciona: las principales técnicas
- Suplantación ARP. En una red local, los dispositivos usan ARP para asociar las direcciones IP con las direcciones de hardware. Un atacante envía respuestas ARP falsificadas para que las máquinas de las víctimas crean que la del atacante es la puerta de enlace y le hagan pasar primero su tráfico.
- Wifi falsas y «gemelos malvados». El atacante monta un punto de acceso inalámbrico con el mismo nombre que uno legítimo, o con uno verosímil. Los dispositivos que se conectan envían todo su tráfico a través de hardware controlado por el atacante.
- Suplantación de DNS. Manipulando la resolución de nombres, el atacante hace que un nombre de host legítimo apunte a un servidor que controla, de modo que la víctima se conecta al atacante creyendo que ha llegado al sitio real.
- SSL stripping. Muchas sesiones empiezan por HTTP en texto plano antes de pasar a HTTPS. Un atacante en el camino puede interceptar esa primera petición y mantener a la víctima en HTTP sin cifrar mientras habla HTTPS con el servidor real, leyéndolo todo en claro.
- Kits de phishing adversary-in-the-middle. La variante moderna y de mayor impacto. Un kit de proxy inverso aloja una copia idéntica de una página de inicio de sesión en un dominio parecido. Cuando la víctima inicia sesión, el kit retransmite en tiempo real la contraseña y el paso de autenticación multifactor al servicio real y roba la cookie de la sesión autenticada, lo que derrota muchas formas de MFA.
Las clases de ataque que hay que reconocer
Ayuda agrupar los MITM según dónde se produce la interceptación. Los ataques de capa de red (suplantación ARP y DNS, puntos de acceso falsos) ponen al atacante en el camino del tráfico. Los ataques de capa de transporte (SSL stripping, ataques de degradación, certificados falsificados o emitidos por error) derrotan o evitan el cifrado que debería proteger el canal. Los ataques de capa de aplicación (phishing adversary-in-the-middle) engañan a la persona para que se conecte a través del atacante desde el principio. Situar un ataque en su capa te dice cuál es el control adecuado, un hábito útil que puedes desarrollar con un ejercicio de modelado de amenazas estructurado.
Cómo evitar los ataques de intermediario
Ningún control detiene todas las variantes, así que la defensa es por capas. El objetivo es un canal que verifique tanto el cifrado como la identidad, de extremo a extremo.
- Impón TLS en todas partes, con HSTS. Sirve todo por HTTPS y envía la cabecera HTTP Strict Transport Security para que los navegadores se nieguen a hablar en texto plano con tu dominio. Así se cierran las vías del SSL stripping y de la degradación. Revisa tu configuración con un recorrido de bastionado de TLS.
- Valida los certificados, y fíjalos donde importe. Los clientes deben rechazar los certificados no válidos, caducados o no confiables en lugar de saltarse los avisos. En los enlaces sensibles entre máquinas, el pinning de certificados y el TLS mutuo (en el que los dos extremos presentan y verifican certificados) dificultan mucho la suplantación.
- Usa una VPN en las redes no confiables. En cualquier wifi pública o no gestionada, envía el tráfico por el túnel de una VPN de confianza para que un atacante local solo vea tráfico VPN cifrado, lo que neutraliza la suplantación ARP y los puntos de acceso falsos.
- Despliega MFA resistente al phishing. Las passkeys FIDO2 y las llaves de seguridad de hardware vinculan la autenticación al origen del sitio real, así que una credencial presentada a un dominio proxy falla, lo que derrota a los kits adversary-in-the-middle que retransmiten los códigos de un solo uso y las aprobaciones push. Si sigues con códigos o push, esta es la mejora que más importa; consulta nuestra guía sobre las passkeys FIDO2 para la plantilla.
- Protege la resolución de nombres. Usa DNSSEC y resolvers de confianza que validen, para que las respuestas no puedan falsificarse en silencio, y vigila los cambios inesperados en tus registros DNS.
- Refuerza los endpoints y a las personas. Mantén los dispositivos parcheados, desactiva la conexión automática a redes abiertas y forma a la gente para que nunca ignore los avisos de certificados o de seguridad.
La conclusión
Un ataque de intermediario es un fallo del cifrado o de la verificación de la identidad en el camino entre dos partes. Las defensas se alinean contra esas dos debilidades: cifra e imponlo (TLS, HSTS, VPN) y verifica quién está al otro lado (validación de certificados, TLS mutuo, MFA resistente al phishing, DNSSEC). Júntalas y el punto intermedio de tus conexiones deja de ser un lugar en el que a un atacante le compense situarse.
Preguntas frecuentes
¿Qué es un ataque de intermediario? Es un ataque en el que alguien se sitúa en secreto entre dos partes que creen estar hablando directamente, retransmitiendo y potencialmente alterando todo lo que pasa entre ellas. Apunta al canal de comunicación y no a los extremos.
¿Cómo se colocan los atacantes en medio? Metiéndose en el camino del tráfico: suplantación ARP en una red local, wifi falsas o «gemelos malvados», suplantación de DNS, SSL stripping o un proxy de phishing adversary-in-the-middle.
¿Lo detiene HTTPS? Un TLS bien impuesto con HSTS y certificados validados detiene el MITM clásico, porque cifra el canal y verifica el servidor. No ayuda si se permiten las degradaciones o si los usuarios se saltan los avisos.
¿Cómo se elude la MFA, y qué lo impide? Los kits de phishing retransmiten los códigos de un solo uso y roban las cookies de sesión en tiempo real. La MFA resistente al phishing, como las passkeys FIDO2, vinculada al origen del sitio real, lo derrota.
¿Qué debo hacer en una wifi pública? Usa solo HTTPS, no ignores nunca los avisos de certificados, usa el túnel de una VPN de confianza, mantén los dispositivos parcheados y usa MFA resistente al phishing en las cuentas importantes.
Preguntas frecuentes
¿Qué es un ataque de intermediario?
Un ataque de intermediario (man-in-the-middle, MITM) es aquel en el que un atacante se sitúa en secreto entre dos partes que se comunican (por ejemplo, un usuario y un sitio web, o dos servidores) de modo que todo el tráfico pasa por él. Cada lado cree que habla directamente con el otro, pero el atacante puede leer los datos y a menudo modificarlos por el camino. Los ataques MITM apuntan al propio canal de comunicación en lugar de entrar en un extremo, y tienen éxito cuando el canal no está cifrado, usa un cifrado débil o sin validar, o cuando nunca se verifica correctamente la identidad.
¿Cómo se colocan los atacantes en medio de una conexión?
De varias formas, y todas ponen al atacante en el camino del tráfico. En una red local pueden envenenar ARP para que las máquinas de las víctimas envíen el tráfico al atacante en lugar de a la puerta de enlace real. En redes inalámbricas pueden montar un punto de acceso falso o un «gemelo malvado» que parezca un punto de acceso legítimo. Pueden suplantar el DNS para que un nombre de host apunte a un servidor controlado por el atacante. Pueden hacer SSL stripping, rebajando una sesión HTTPS a HTTP en texto plano. Y cada vez más usan kits de phishing adversary-in-the-middle que hacen de proxy de la página de inicio de sesión real, capturan la contraseña y retransmiten en tiempo real el paso de autenticación multifactor y la cookie de sesión.
¿HTTPS detiene los ataques de intermediario?
Un TLS bien desplegado (el protocolo que hay detrás de HTTPS) es la defensa más importante, porque cifra el canal y permite al cliente verificar el certificado del servidor. Pero solo ayuda si de verdad se impone. Si un sitio permite HTTP en texto plano, un atacante puede rebajar la conexión antes de que se negocie el cifrado; HSTS existe precisamente para evitarlo, indicando a los navegadores que rechacen las conexiones que no sean HTTPS. HTTPS tampoco ayuda si un usuario se salta un aviso de certificado, o si el atacante controla un certificado en el que el cliente confía por error. Así que HTTPS detiene el MITM clásico solo cuando el cifrado se impone de extremo a extremo, los certificados se validan y se bloquean las degradaciones.
¿Cómo se elude la MFA en un ataque de intermediario?
La MFA tradicional basada en un código de un solo uso o en una aprobación push puede retransmitirse. Un kit de phishing adversary-in-the-middle se sitúa entre la víctima y el sitio real: la víctima introduce su contraseña y su código de un solo uso en la página proxy del atacante, el kit los reenvía de inmediato al sitio real y captura la cookie de sesión resultante, que permite entrar al atacante sin volver a necesitar el código. La MFA resistente al phishing, como las passkeys FIDO2, lo derrota porque la autenticación criptográfica está vinculada al origen del sitio real, así que una credencial presentada a un dominio proxy parecido sencillamente no funciona.
¿Cómo puedo protegerme en una wifi pública?
Trata toda red pública o no confiable como si alguien estuviera mirando. Asegúrate de que todos los sitios y aplicaciones que usas van por HTTPS (los navegadores modernos te avisan si no), no te saltes nunca los avisos de certificados y envía tu tráfico por el túnel de una VPN de confianza para que, aunque alguien esté en el camino, solo vea tráfico VPN cifrado. Mantén tus dispositivos parcheados, desactiva la conexión automática a redes abiertas y usa MFA resistente al phishing en las cuentas importantes para que una sesión capturada no pueda reutilizarse sin más.