La visualización de la información es tan importante como la información en sí misma. Demasiada información, sin la posibilidad de analizarla correctamente, no sirve de mucho. Por esto, quería dedicar esta entrada a mi chica unas herramientas que muestran, de una forma visualmente atractiva, alertas de seguridad generadas por Snort. No esperéis potentes interfaces gráficas haciendo data mining, agregando información, categorizándola, procesándola, correlándola y alertando de lo más importante que está ocurriendo en nuestra red. Para eso hay que recurrir a soluciones profesionales que conllevan un coste más o menos considerable.
En esta ocasión os voy a mostrar una herramienta de código libre que nos ofrece una interfaz visualmente atractiva, aprovechando la potencia de una herramienta del omnipresente Google. Esta herramienta se llama SnoGE y está desarrollada por Leon Ward, un ingeniero de seguridad que trabaja en Sourcefire, empresa que está detrás del proyecto Snort. Este script procesa las alertas generadas por Snort en formato Unified2 y genera un fichero KML. ¿Qué es un fichero KML? Para quien no lo sepa, se trata de un fichero XML especialmente diseñado por Google para representar objetos en su GoogleEarth. Y es ahí donde está la gracia del proyecto SnoGE: con un sencillo script escrito en Perl, es posible montar una interfaz gráfica muy atractiva que nos permite ver desde dónde nos están atacando; ideal para cuando vengan periodistas ávidos de ver ataques informáticos en tiempo real u otra fauna no técnica, al estilo de la película “Juegos de Guerra” o las diseñadas por Mark Coleran.
De acuerdo, admito que no se trata de una herramienta imprescindible en la gestión de incidentes o en la respuesta temprana ante ellos; esta herramienta únicamente muestra la alerta y el origen. No muestra agregaciones, ni criticidades, ni más información que pudiera ser útil a la hora de detectar un ataque potencialmente crítico a nuestra infraestructura. Pero visualmente es muy atractiva y puede mostrar las alertas en el momento en el que se producen.
SnoGE cuenta con dos modos principales de operación: uno estático y otro en tiempo real. El estático se ejecuta una única vez, leyendo de uno o varios archivos Unified2, mientras que en tiempo real se le indica el directorio donde se guardan las alertas de Snort para que las vaya analizando, de forma similar a Barnyard2.
Utilizando esta última opción, se le puede indicar el tiempo de refresco y el número de alertas a mostrar. Esto es importante ya que, si se cuenta con muchas alertas, se puede volver algo lento.
Una vez generado el archivo KML, sólo nos quedaría representarlo. La forma más impactante es abrir el fichero KML directamente con GoogleEarth o utilizar este visor, que permite insertarlo en una página web y visualizarlo instalando el plugin para GoogleEarth desde el navegador. De esta forma, se consiguen una interfaz 3D muy potente y atractiva. Algo similar a esto:
Otra opción más sencilla, la cual no requiere de complementos adicionales, es verla en 2D. Para verla en 2D sin necesidad de tener instalado GoogleEarth ni ningún plug-in, podemos utilizar las librerías de JavaScript geoxml.
En ambas opciones se debe indicar el tiempo de refresco de la página. El sistema, de forma conceptual, lo componen los siguientes elementos:
- El archivo Unified2, del que se leen las alertas.
- El fichero KML, resultante de la ejecución del script.
- El fichero del servidor, en caso de utilizar el refresco automático, que se encarga de leer el anterior según el tiempo indicado.
- El código HTML que contiene el módulo o el código JavaScript que representa el archivo KML.
Bueno, simplemente quería presentar estas dos opciones, fáciles de implantar, aunque la instalación no se aborde aquí por no extenderme. He seguido las indicaciones de los respectivos desarrolladores y no he tenido problemas para instalarlos. Aunque no haya demasiada información al respecto, la que se incluye en cada proyecto es más que suficiente. Resumiendo, SnoGE: una solución sencilla, barata y atractiva para mostrar los ataques recibidos a personas no técnicas.
Por lo demás, pasen muy buen fin de semana.
Que grande Nelo!
+1