Interceptar información sensible? ¿Obtener acceso no autorizado a varias aplicaciones y sistemas? ¿Interrumpir el funcionamiento normal? Todo esto y mucho más realizan ataques como Man in the Middle.

Hoy comenzamos una serie de artículos dedicados a los ataques del "hombre en el medio" (y varios relacionados) contra protocolos y canales de transmisión típicos que se encuentran en casi cualquier empresa. Para comenzar, considere los niveles básicos: físico y canal.
¿Interesado en? Bienvenido a cat.
Poco de teoría
Man in the Middle (también conocido como "ataque de hombre en el medio", también conocido como "ataque intermediario") en el caso general es un tipo de ataque destinado a violar la confidencialidad y, en algunos casos, la integridad de la información. Describa esquemáticamente un ataque "típico" de la siguiente manera:

La figura principal son las líneas de naranja y rojo. Naranja es la ruta de datos prevista, el rojo es la ruta real. El medio o protocolo de transmisión no es importante en este caso. Alice puede ser, por ejemplo, un cliente de Wi-Fi, y Bob puede ser un punto de acceso de Wi-Fi. De una forma u otra, siempre hay un tercero que realiza cualquier acción con la información transmitida.
¿Por qué extrañamos el canal de transmisión? Porque todos los niveles del modelo de red OSI están sujetos a este ataque en un grado u otro. Lo confirmaremos más a fondo.
Procedemos a considerar los ataques del primer y segundo nivel de OSI: físico y de canal.
Practica
CobreComencemos con lo más simple: obtener datos de un par trenzado. Esto no es exactamente MitM, es un olfateo clásico, pero en este caso es un "requisito previo" para ataques más serios. De hecho, para tomar datos de un cable de par trenzado, digamos, 100Base-T, es suficiente tener un enrutador adicional en el que pueda instalar algún tipo de DD-WRT / OpenWRT o cualquier otro análogo. Hace algún tiempo esto ya fue mencionado
aquí .
Una forma más confiable es usar dispositivos especiales. Pero tiene desventajas:
- Con la seguridad física adecuada (ACS, videovigilancia) y un buen conocimiento de los empleados sobre las acciones, en el caso de la aparición de objetos "sospechosos", el riesgo de detectar dichos dispositivos es extremadamente alto.
- Un atacante obtiene acceso solo a los datos que viajan a través del cable al que está conectado. Si el cable está conectado a la cabina del guardia, lo más probable es que el delincuente pueda observar imágenes de varias cámaras y sesiones periódicas de Youtube, pero no datos financieros de SAP.
- Tercero, y lo más importante, encriptación de tráfico. De hecho, ahora casi cualquier servidor, cualquier servicio funciona a través de TLS o utiliza algún análogo para la protección criptográfica de los datos transmitidos. Sin una clave, no descifraremos los datos transmitidos. Y en el caso de usar TLS 1.3 o TLS 1.2 en los algoritmos Diffie-Hellman, incluso esto no ayudará.
Todo esto lleva al hecho de que tal sniffing puede no traer los resultados deseados al atacante. Se requerirá una conexión más "flexible", es decir, "incrustación" en la línea de datos. Por ejemplo, así, un poco arrogante:

Este método tiene muchas desventajas. Por ejemplo, es fácil de detectar en presencia de varios medios de protección u ojos incrédulos, sospechosos de la aparición de algo nuevo en el lugar de trabajo. Pero también tiene una ventaja: control total y la capacidad de modificar los datos transmitidos. Simularemos un ataque en la vida real. Tomará 2 cosas: mi máquina de trabajo, en la que está escrito este texto, mi computadora portátil con
Arch a bordo, aunque cualquier distribución de Linux debería funcionar. Las conexiones “mi máquina de trabajo” - “computadora portátil” y “computadora portátil” - “red de área local” se realizarán por cable, para lo cual se conecta un adaptador de red USB a la computadora portátil. Usaremos
brctl para configurar el puente, aunque dicha funcionalidad ha sido anunciada incluso por
NetworkManager .
Configurar el puente:
Si al mismo tiempo desea obtener una dirección IP, simplemente configure algún
dhclient en br0 o use sus manos para configurar una IP estática (# ip ad add XXXX / X dev br0).
Entonces, se ha creado una interfaz de puente en la computadora portátil, una computadora está conectada a la interfaz USB, la interfaz principal va a la red local. Lanzamos cualquier software para interceptar el tráfico (por conveniencia,
usaré Wireshark con una GUI) y observaremos lo siguiente:
Figura 1. Wireshark en acciónComo puede ver, aquí está todo el volcado de tráfico de la máquina con la dirección 192.168.139.206 (para las pruebas, creé una red de prueba). En la configuración actual (sin
MAC-pinning , por ejemplo) nadie notará mi presencia en la red. Este ataque le permite obtener mucha información, incluidos inicios de sesión / contraseñas, por ejemplo, para el sitio
diary.ru :
Figura 2. OoopsDe hecho, todo es un poco más complicado.
diary.ru es uno de los pocos sitios que no redirige al usuario a HTTPS encriptado. Es más difícil lidiar con HTTPS que con tráfico abierto. Y la mayor parte del tráfico que capté está encriptado, lo que en realidad es bueno para el usuario, pero no muy bueno para mí en este momento.
¿Cómo protegerte? Hay varias opciones, cada una con sus propias características:
- La fijación de MAC no ayudará: los MAC simulan todo lo que no es perezoso. En el mismo Linux, puede usar el macchanger y en Windows a través del Administrador de dispositivos;
- La autenticación 802.1X es una gran cosa. Pero hay un par de matices: en el modo de olfateo más simple, no protegerá, ya que el atacante permanece "invisible" para la conexión, y desde el punto de vista del conmutador, solo el dispositivo bajo ataque está conectado al puerto de red. Otra cosa, en caso de un impacto en el tráfico, la posibilidad de revelar su presencia aumenta considerablemente, ya que ahora el tráfico comienza a fluir hacia la red a través del interruptor, al que pueden reaccionar varias medidas de seguridad. Todo se basa en el equipo utilizado (SIEM o algo similar) y las habilidades del personal de seguridad de la empresa;
- Las soluciones de análisis de comportamiento de usuarios y entidades (UEBA) le permiten localizar algo sospechoso en la red. Como en el caso de 802.1X, con el olfateo normal usted permanece invisible, pero cuando genera tráfico, lo dejarán. No se usa con tanta frecuencia, y todo nuevamente depende de las habilidades de los guardias de seguridad.
Surge la pregunta: ¿qué debo hacer si la computadora a la que quiero acceder está ubicada, por ejemplo, en interiores y el cable está debajo de las cámaras o está oculto? Nada complicado, solo recurra a los ataques de suplantación más simples. Al solicitar la dirección MAC de un host específico, el host atacante comienza a "enviar spam" a la red con paquetes ARP, en los que su MAC se especifica como la dirección de búsqueda, lo que obliga al atacante a conectarse a nuestro host.
Primero debe seleccionar un objetivo. En mi caso, será mi colega. Ahora usaremos un
ettercap muy antiguo, pero bastante funcional. Determinaremos la dirección IP del colega de cualquier forma, luego designaremos el objetivo del ataque. Por ejemplo, quiero averiguar qué DNS está buscando mi colega. Después de eso, manejo 2 direcciones IP en ettercap: la dirección del servidor DNS y, de hecho, la dirección de la víctima. Y ...
Figura 3. Captura de consultas DNSSe puede ver que mi colega está buscando información en el sitio web de Cisco y, al mismo tiempo, su sistema envía solicitudes de "servicio" para identificar varios sitios de MS.
Hay algunas buenas noticias. Una gran lista de equipos admite protección contra la falsificación de ARP, que puede negar tales ataques. Y si la compañía usa SOC o SIEM, entonces puedes intentar encontrar al atacante en persecución.
ÓpticaLas líneas de comunicación de fibra óptica son otro canal de comunicación extremadamente común en cualquier empresa. ¿Qué es la protección contra MitM?
La situación es doble. Si tomamos el cable más simple sin protectores especiales reforzados, entonces para un simple olfateo es suficiente doblarlo. Un dispositivo especial se "cuelga" en una curva. Parte de la luz va más allá del cable hasta nuestro dispositivo, desde donde recogemos todo el volcado.
Es bueno que la mayor parte del tráfico esté encriptado. ¿Pero y si no? De hecho, es difícil defenderse. Es más fácil aislar la óptica de tal manera que sea difícil acercarse a ella. Otra forma es usar un cable "protegido" más costoso, que incluye medidas especiales de protección que permiten detectar una violación de la cubierta del cable. Pero con la destreza adecuada, puede conectarse a él, y volver a tender el cable a menudo es algo extremadamente desagradable. Una forma efectiva es utilizar un equipo especial que responda a un cambio en el nivel de la señal cuando se produce una curva de fibra. El precio de emisión es alto. Bueno, quizás la mejor solución es usar el cifrado del tráfico transmitido.
Si queremos influir en el tráfico de alguna manera, entonces todo es más complicado. La forma más efectiva es la barra lateral, en la que se construye un equipo especial en el medio. La desventaja de este método es que necesitamos cortar el cable por un tiempo (lo suficientemente grande) con todas las consecuencias que pueden resultar, lo que puede confundir al personal de seguridad de la empresa. Pero con un trabajo exitoso, nosotros, en la mayoría de los casos, podremos influir en una gran cantidad de tráfico, ya que la fibra rara vez se coloca en las computadoras de los usuarios. Muy a menudo, este es un canal de transferencia de datos, por ejemplo, entre sucursales individuales de empresas.
Un artículo que cubre un número ligeramente mayor de conexiones de fibra también está disponible
aquí .
¿Qué hay de Wi-Fi?¡Y de todos modos e incluso más fácil! Comencemos con WPA2-PSK (conexión de contraseña). Para el "sigilo" del ataque, es importante cumplir con un requisito: debe conocer una contraseña real, esto permitirá que los dispositivos que están configurados para conectarse automáticamente a la red, sin ningún problema se conecten a la red "maliciosa". Entonces, elevamos el punto de acceso Wi-Fi con la misma contraseña y esperamos las conexiones. Si no desea esperar, puede comenzar a enviar paquetes de autorización, lo que obligará a los usuarios a desconectarse de los puntos de acceso actuales, y algunos de ellos para los que un punto de acceso malicioso será más poderoso lo obligarán a conectarse a usted. Para crear un punto, utilicé
hostapd , una poderosa herramienta para crear varias redes en varias configuraciones. Conecté la interfaz Wi-Fi al puente br0 para que los usuarios no noten que algo anda mal y puedan continuar trabajando con los servicios dentro de la red local. Estamos esperando un tiempo y disfrutamos de los resultados.
Figura 4. Ver el volcado del iPhoneWPA2 Enterprise (con autenticación a través de un servicio externo, como RADIUS) es mucho mejor en términos de seguridad. Si el PSK clásico puede que ni siquiera tenga acceso a la red local de la compañía (por ejemplo, si es una red invitada), para que Enterprise funcione, debe tener acceso al servidor de autenticación, que puede usarse con el mismo
NPS de Windows . Además, para que el punto de acceso funcione, se requiere un
certificado con una clave privada , lo cual es muy problemático de obtener. Por supuesto, puede emitir un autofirmado, pero esto puede causar algunos problemas, ya que en un mundo ideal, el dispositivo del cliente debe verificar este certificado. En general, es posible configurar dicho punto de acceso y hacer que los clientes se conecten a él, pero con grandes reservas. Lo más probable es que el atacante aún pueda atrapar.
¿Cómo proteger la red wifi? Use WPA2 Enterprise (preferiblemente con certificados) y configure el dispositivo cliente para verificar obligatoriamente el certificado del punto de acceso, emular el punto de acceso Evil Twin será mucho más difícil. Configure cuidadosamente su servidor de autenticación. Si es posible, use las capacidades de su equipo existente, por ejemplo, el Sistema inalámbrico de prevención de intrusiones de Cisco, cuya esencia en este caso es buscar puntos de acceso maliciosos y evitar que varios clientes se conecten a ellos.
En lugar de una conclusión
Para resumir un breve resumen. Como puede ver, de una forma u otra, los canales de transmisión de datos más comunes son susceptibles a los ataques MitM. ¿Cómo protegerte?
- usar encriptación; no es tan difícil y muy efectivo;
- la introducción de cualquier sistema de información (y la misma red Wi-Fi) no debería tener lugar bajo el lema "¡Si solo funciona!", especialmente si circula información realmente importante en el sistema, es necesario considerar el proceso desde el punto de vista de la protección de la información;
- Use equipo de protección o la funcionalidad del equipo utilizado. Cisco WIPS, varios IPS / IDS, UEBA, etc. Esto permitirá que, si no detiene el trabajo del atacante, lo detecte y tome medidas para capturar al criminal.
Pero, ¿qué pasa si el atacante es una persona "confiable"? ¿Un empleado de la empresa con acceso legítimo a la red local, pero que tiene pensamientos de sabotaje? ¿Qué puede hacer para analizar el tráfico encriptado y, lo más importante, cómo puede protegerse de esto? Hablaremos de esto en los siguientes artículos, volviendo nuevamente a nuestras consultas DNS y al tráfico HTTPS.