16 diciembre 2015

Maltrail: Herramienta para monitorización de red y detección de amenazas





Hacía días que tenía echado el ojo a esta herramienta que ví en el twitter de “nosequién” (mis disculpas a quien corresponda, porque suelo poner los créditos de estas cosas, pero sinceramente no recuerdo la fuente).

En este caso, se trata de maltrail, una herramienta opensource, hecha en Python, destinada a analizar el tráfico de red con el fin de detectar y registrar posibles amenazas. Hasta aquí todo bien, y seguro que diréis: pues otro Snort o Suricata, ¿no?. Pues la respuesta es: parcialmente sí.

La diferencia es la categorización de las amenazas, las diversas fuentes de las que tira (si la dirección IP tiene mala reputación en diferentes fuentes abiertas), la inteligencia para identificar actividad sospechosa, la identificación de malware que intenta llamar a casa, así como la presentación de panel de detección que muestra, me ha resultado especialmente interesante, o cuanto menos, complementario a la pila de paneles web de diversas herramientas destinadas a monitorizar la seguridad.



Muestra diversas estadísticas como número de amenazas, tendencias de eventos clasificados como riesgo alto/medio/bajo, gráficas de tarta por severidad, por top de fuentes atacantes, etc,...

El tipo de despliegue es como el de cualquier IDS, es decir, sondas de detección que envían eventos a un único servidor, por lo que es totalmente viable una arquitectura distribuida, o incluso aprovechar, sondas existentes que estén analizando tráfico con otras herramientas open source, para integrar un proceso más. He podido comprobar que no incrementa de forma excesiva los recursos necesarios de la máquina por lo que en un tráfico “normal” es una opción interesante.



Entre los puntos positivos, y a destacar:
  • Dispone de una documentación bastante completa. Para lo sencillo que es de configurar (un único fichero con pocas opciones), la documentación existente es muy buena y más que suficiente sobre las virtudes de la herramienta
  • Posibilidad de escuchar en un interfaz o en todos los de la máquina sensor.
  • Impresionante la GUI. De verdad. Lo que más me gusta es la facilidad de filtrado de eventos, así como la interacción que permite con cada columna, dependiendo de qué se trate. Por ejemplo búsqueda de la dirección IP atacante en duckduckgo para búsqueda de la IP en diferentes fuentes de análisis  de reputación como robtex, whois.domaintools, mxtoolbox, etc,... 
  • Plug and play: sólo tiene un paquete como dependencia.
  • Open source 
Como puntos mejorables:
  • La gestión de usuarios me parece uno de los puntos flacos… Está dentro del único fichero, y para cambiar la contraseña hay que ejecutar un .py que te convierta la contraseña a un hash, que habrá que copiar en el fichero.
  • Por defecto, la gestión web viene en HTTP, aunque se puede configurar fácilmente para que sea HTTPS. A mi entender una herramienta de seguridad debería venir en HTTPS por defecto, aunque el certificado sea autofirmado.


Sin duda, una herramienta que merece la pena tener en el kit de elementos de seguridad perimetral

Podéis descargarla directamente de github en: https://github.com/stamparm/maltrail/