¿Puedo detectar un ataque MITM?

35

Basado en esta pregunta aquí: ¿Los ataques de "hombre en el medio" son extremadamente raros?

¿Es posible detectar ataques de hombre en el medio y, de ser así, cómo se podría hacer?

Además, ¿qué sucede si el ataque se está produciendo a través de la conexión a la red local, como las líneas telefónicas? ¿Hay alguna forma de detectarlo?

    
pregunta TigerCoding 23.02.2012 - 13:07
fuente

6 respuestas

21

Mientras navega, puede verificar cada vez que el certificado que le presenta el sitio web sea emitido por una CA legítima o un certificado falso emitido por alguna CA en el que su navegador confíe. Obviamente no es posible hacerlo manualmente. Por lo tanto, hay herramientas que lo hacen por usted.

Cert Patrol y Perspective son complementos del navegador que hacen eso esencialmente. Mantienen una nota de qué nombres de dominio son problemas por los cuales las CA (por ejemplo, Google = > Thwate, etc.) y muchos otros parámetros relacionados con los certificados y alertarán al usuario si la CA cambia o la clave pública en el certificado cambios

Obviamente, no se trata de la detección de MITM, se parecen más a los esquemas de prevención al detectar que hay algo extraño en el certificado presentado por el sitio web.

También mientras se conecta a un servidor SSH, solicita la huella digital del servidor. Me alarmaría si mi cliente ssh me presenta una nueva huella digital después de que me haya conectado previamente a un servidor. La clave de host del servidor se guarda en el archivo conocido_hosts después de la primera conexión, la única razón por la que el cliente me está pidiendo que vuelva a validar la huella dactilar es porque el servidor SSH se ha reiniciado / actualizado O ME ESTÉ MITMed.

La paranoia absoluta exige que llames al administrador del sistema por teléfono y confirmes la huella dactilar al haciéndolo hablar la clave.

    
respondido por el CodeExpress 23.02.2012 - 16:54
fuente
10

¿Puedes detectar un ataque MitM? Depende del tipo de sistema que esté siendo atacado y del tipo de ataque.

Digamos que un atacante sofisticado ha obtenido el control de un enrutador ascendente entre usted e Internet en general y redirige su tráfico a servidores falsos bajo su control para un MitM (por ejemplo, captura solicitudes de DNS y brinda respuestas falsas a sus servidores o usos) Traducción de direcciones de red (NAT)).

Ahora digamos que va a http://www.facebook.com y se dirige a una página de inicio de sesión http bajo el control de los atacantes. Es previsible que el atacante pueda abrir una página que imite la página de inicio de sesión de Facebook, capture su información de autenticación y use esa información para conectarse al Facebook real, y luego dirija el contenido desde el Facebook real a su navegador. Esto podría hacerse casi aparentemente, con la excepción de que la acción de publicación de formulario oculta no se encuentra https en la página de inicio de sesión inicial. Digamos que en su lugar, su configuración es usar siempre https para Facebook, y usted fue a https://www.facebook.com . El ataque MitM enviaría banderas rojas al navegador, ya que el atacante no tendrá un certificado de confianza para facebook.com. Por supuesto, muchos usuarios ignorarían estas advertencias del navegador (como a veces ocurren por razones benignas, como una clave caducada o un sitio de intranet que no usa una clave autofirmada). Todo esto asumió que el atacante no ha logrado además piratear Facebook y obtener sus certificados privados O comprometer a una CA (autoridad de certificación) para que pueda generar certificados falsos en los que confía la mayoría de los navegadores web O, previamente, modifique su navegador web para que confíe / no No advertir sobre certificados no válidos.

En general, con http es casi imposible detectar ataques MitM, pero con https su navegador debería detectar y advertirle automáticamente, a menos que el atacante ya haya comprometido su sistema o el sistema en el otro extremo (incluido la CA como un sistema en el otro extremo).

Siguiente ejemplo: ssh . Nuevamente, usa par de llaves del servidor público-privado para autenticar las computadoras. Por lo tanto, si con frecuencia ssh en mi máquina de trabajo desde la computadora de mi casa, la computadora de mi casa grabó y confió en la clave pública de mi máquina de trabajo (que se guarda en un archivo ~/.ssh/known_hosts ). Si intenté un ataque MitM cuando me conecto desde mi máquina doméstica, ssh notaría inmediatamente que la máquina MitM no tenía la clave privada de mi máquina de trabajo y no me permitiría iniciar sesión (a menos que eliminara específicamente la clave pública de mi lista known_hosts ; que solo haría si, por ejemplo, actualice a una máquina nueva o cambie la clave del servidor). Una vez más, los ataques MitM sobre ssh son muy fáciles de detectar, a menos que el atacante ya haya ingresado en mi máquina de trabajo como root y haya copiado la clave privada a su host O ya haya ingresado a mi máquina doméstica y haya cambiado la clave pública de mi máquina de trabajo registrado en ~/.ssh/known_hosts O es la primera vez que me conecto al servidor (y no tengo el servidor en mi known_hosts ni reconozco la huella digital del host).

    
respondido por el dr jimbob 23.02.2012 - 16:35
fuente
4

La detección del esquema MitM es el objetivo básico de cualquier protocolo de autenticación. Para que eso funcione necesitas:

  • Una forma segura de obtener la información de autenticación (certificado del servidor, clave compartida, ...)
  • Verifique la autenticidad del mensaje intercambiado con el servidor.

El servidor debería hacer lo mismo con el cliente. Con un esquema simétrico, debe hacerse fácilmente. Cuando utilice protocolos asimétricos como SSL, debe:

  • Obtenga el certificado del servidor y sea capaz de autenticarse correctamente
  • Comuníquese con el servidor utilizando su clave pública incrustada en ese certificado, para que nadie pueda descifrar el mensaje
  • El servidor y usted acordarán un secreto único compartido para usar un cifrado simétrico para futuras conexiones.
respondido por el M'vy 23.02.2012 - 15:46
fuente
3

No , no puedes, hay muchas maneras de hacerlo.

Muchas respuestas aquí le dirán cómo comprobar los ataques MITM específicos , lo que creo que no es el punto .

Un MITM no significa que el atacante intentará descifrar su flujo de datos y le presentará una clave / huella diferente. Es solo un nodo entre usted y su host de destino.

Hay muchas formas de entrar en una situación MITM, cada una puede evitarse con una administración de red adecuada, todos los nodos entre usted y su host de destino deben estar protegidos . Cada red debe estar diseñada para resistir todos los MITM posibles, incluido el abuso de los protocolos de enrutamiento, la falsificación de ARP, la falsificación de DNS, simplemente instalar un puente físico, etc.

Para lograr seguridad, no debe importar estar atrapado en un ataque MITM, no puede confiar en la suerte y en la suerte, y no puede controlar Internet. Debe asumir que se encuentra en un entorno hostil, a menos que se haya comprobado que una auditoría adecuada . El uso de protocolos seguros como TLS, SSH y, potencialmente, IPSec, puede hacer que su red sea más segura, autenticar y cifrar sus datos. Sin embargo, siempre es vulnerable en algún momento y la mayoría de las veces proviene de una configuración incorrecta o de una falla en el protocolo / implementación en sí.

En resumen, no detectes MITM, sino:

  • Asegure su LAN o pídale a alguien que lo haga
  • Configure protocolos de túneles seguros para acceder a redes y sistemas seguros distantes

La detección de MITM es posible, pero está relacionada con lo que usa, la seguridad del puerto para CISCO IOS o simplemente usar SNORT en cualquier caja de Unix. Posiblemente no puede obtener una lista exhaustiva, simplemente coincide con una situación determinada y, además, los atacantes siempre son lo suficientemente creativos para encontrar algo en lo que no pensaron, así que consulte los 2 consejos anteriores.

    
respondido por el Aki 24.02.2012 - 08:10
fuente
0

Puedes consultar tu tabla ARP. O puedes mirar el buen sitio web. TUTORIALES MITM [ enlace que explica en profundidad qué es un hombre en el medio y cómo evitarlo. Supongo que leer su tutorial te dará una excelente idea sobre lo que está sucediendo y cómo prevenirlo, así como también cómo detectarlos.

    
respondido por el noktec 23.02.2012 - 15:01
fuente
-2

Vaya al CMD y escriba arp -a. Si la dirección MAC del enrutador es la misma que la de cualquier otro nodo (dispositivo), entonces el dispositivo es el "MAN en el medio". Que simple.

    
respondido por el Kristiyan 28.01.2017 - 16:00
fuente

Lea otras preguntas en las etiquetas