martes, marzo 13, 2012

Marmita 1.3: Detector de ataques man in the middle

Durante el Master de Seguridad de la UEM del curso 2009-2010, uno de los proyectos que propuse fue la realización de un detector de ataques man in the middle, con una aproximación de Host IDSDaniel Romero e Ignacio Merino presentaron dentro de ese proyecto la aplicación Marmita, y así resumían ellos su proyecto:
Los ataques Man In The Middle utilizando la técnica de ARP Spoofing son unos de los métodos más utilizados por usuarios malintencionados para robo de todo tipo de datos en una red. En este proyecto, tras realizar un análisis exhaustivo del comportamiento y desarrollo de las herramientas más utilizadas para realizar este tipo de ataques, y basándose en sus principales características, se ha desarrollado una aplicación que mediante el análisis de paquetes y el estudio de las direcciones ARP que se asocian a un ordenador es capaz de identificar si un usuario está siendo atacado.
Desde entonces Marmita quedó en standby y se usó internamente para evitar bromas de los compañeros, a la espera de limar algunos pequeños errores. Con la publicación de la herramienta DHCP ACK Injector se nos ocurrió que estaría genial detectar este tipo de ataques y que la mejor opción era añadir esta detección como parte de Marmita.

Así que le tocó al señor Thor hacer los últimos ajustes y tras un tiempo puliendo detalles e implementando la detección de ataques MITM vía Rogue DHCP y DHCP ACK Injector hoy publicamos Marmita 1.3. Es una herramienta totalmente gratuita que podéis descargar desde aquí.

Marmita funciona esnifando los paquetes de la interfaz de red seleccionada y analizando aquellos paquetes bien sean ARP o DHCP en busca de posibles ataques MITM. Cuando detecta un ataque muestra una alerta y la información del atacante que haya podido obtener:

Figura 1: Alerta de Marmita, de un ataque ARP Poisoning

La herramienta permite varias configuraciones, pudiendo elegir los tipos de ataques que se desean detectar, si se desea que se mitiguen los ataques ARP Poisoning, así cómo la posibilidad de iniciar Marmita con Windows - algo que os recomendamos si vais de red en red -. En la ventana principal además existen distintos paneles con información sobre ARP y DHCP así como todos los logs.

Figura 2: Configuración de Marmita

Es probable que en el futuro ampliemos esta herramienta para detectar ataques de envenenamiento de vecinos en IPv6 o la existencia de múltiples servidores DHCP en iPv6 para detectar Rogues y los ataques SLAAC en IPv6, que es lo que tenemos en roadmad para esta herramienta - para cuando nos aburramos en el SOCtano y estemos buscando cosas nuevas que hacer -

Podéis descargar Marmita desde la web de herramientas de Informática64. También aprovecho para informaros de que hemos en esa misma página hemos publicado una actualización de DHCP ACK Injector que soluciona un un par de bugs que nos habéis reportado.

Saludos Malignos!

24 comentarios:

  1. Buen aporte, sin duda. Y duda se quedo sin marmita

    ResponderEliminar
  2. Gracias. Un saludo

    ResponderEliminar
  3. Hoooombre!!! Después de tanto y tanto tiempo en la sombra, está bien que al final haya salido mi pequeña a la luz :P

    Un Saludo!

    ResponderEliminar
  4. Mira que siempre he querido detectar estos ataques de manera fácil y rápida. Gracias!

    ResponderEliminar
  5. muy util! graciass

    ResponderEliminar
  6. Después de detectar el ataque puede hacer algo más o sólo avisa?. Me interesa la herramienta pero no la he probado.

    ResponderEliminar
  7. Dani, yo sigo pensando que se deberia haber llamado mARPmita xDD

    ResponderEliminar
  8. Felicitaciones..... voy a probar la herramientas... me hacia mucha falta algo así en mi red.

    ResponderEliminar
  9. @Penúltimo anónimo: Da la posibilidad de solucionar el ataque añadiendo una entrada estática en la tabla ARP. Para ello te pedirá elevación de privilegios.

    mARPmita muy bueno jaja

    ResponderEliminar
  10. Y no se me acaba ahi el repertorio Oca, yo queria hacer un frontend para arpon que se llamara marmota o mARPmota xD.

    Al final me lio me lio... y no lo hago nunca xD.

    ResponderEliminar
  11. @Anónimo: como bien a dicho Thor, lo soluciona añadiendo una ruta estática. Aunque para no tener problemas, cuando MARMITA detecta que el ataque ha finalizado, te elimina de la tabla ARP la entrada.

    @Ole ya estamos con las excusas jejejeej Si algún día te da por hacerlo avísame e!! Yo pensé en migrar MARMITA a Python pero buffff jajajaj

    Un Saludo!!

    ResponderEliminar
  12. El reporte de los ataques es 100% fiable??

    Es decir, si puede en algún caso dar falsos positivos.

    Me interesa bastante la aplicación, puede ser de mucha utilidad.

    Gran trabajo, gracias.

    ResponderEliminar
  13. @Onubense No, da falsos positivos por ejemplo cuando un equipo arranca una máquina virtual.

    Saludos.

    ResponderEliminar
  14. @Thor Entendido!!

    Thanks

    ResponderEliminar
  15. Hola, me he dado cuenta que cuando se realiza el ataque a otra maquina que es mía igual detecta el ataque y se registra en los logs, se puede calibrar eso?

    ResponderEliminar
  16. Muy buen programa, lástima que no me detecte al tarjeta wifi para comprobarlo! Tengo una atheros pci.

    Saludos

    ResponderEliminar
  17. Vereis tengo una gran duda.Tengo en mi equipo virtual box y 2 maquinas virtuales.La cuestion es que tengo una conexion de isp normal(cable de toda la vida) y cuando pongo el marmita(lo tengo para que se inicie por defecto) me dice aveces que detectó ARP Poisoning.Pero si no tengo rourer!? y solo tengo 1 ordenador no tengo lan ni nada,como puede decirme que me estan atacando ?? Es un falso positivo?? Por favor ayudenme que estoy desesperado no se que demonios le esta pasando a mi pc.Por favor amigos,he acudido aqui porque no se que esta pasando...

    ResponderEliminar
  18. Hola en Windows 7 64 bits funciona ? Porque no me trae las placas para carputar en cambio en 32 bits si. Ya probe la compatibilidad y ser administrador pero nada.

    ResponderEliminar
  19. He descargado Marmita 1.3 del foro El Hacker para hacer experimentos con mi red, atacarme a mi mismo y ver si soy capaz de detectar el ataque.

    Pero no hay manera de hacerlo funcionar ya que tras instalarlo me dice una y otra vez que no encuentra Winpcap 4.x y yo tengo instalado el Winpcap 4.1.3 pero por lo visto no le vale.

    Entre en la página de Winpcap pero no encuentro ese Winpcap 4.x.

    En fin, que voy a tener que darlo por imposible.

    Un saludo

    ResponderEliminar
  20. Me da el siguiente error 0106 : El indice estaba fuera de intervalo .
    Debe ser un valor no negativo e inferior al tamaño de la coleccion
    Nombre del parametro : index

    El caso es que antes me iba a bien y de repente me sale este error .

    Como puedo solucionarlo ?

    ResponderEliminar
  21. Buen trabajo, aunque creo que ya lo incluyen varios antivirus del mercado para windows.

    Como solución opensource, está bien.

    No estaría de más publicarlo en algún repositorio con el código.

    -- Algún día...

    ResponderEliminar
  22. не могли бы вы обновить ссылку и программу.

    ResponderEliminar