miércoles, 18 de septiembre de 2019

Helk...Salgamos de caza. Ejemplo Sysmon y logs de Windows

Estimados amigos de Inseguros !!!

En el capítulo de hoy vamos hablar de una herramienta, o framework, o al final no se que !!! relacionado con el mundo de la respuesta a incidentes, el blue/red/purple team, Mitre, y todas estas cosas que llevo un tiempo manejando.

The Hunting ELK es el hilo conductor pero espero que esto sea algo más que un how-to de instalación :-)

Creo que todos conocemos la suite ELK, un motor de base de datos no relacional, un gestor de logs y una interfaz gráfica. Lo están usando empresas de todo tipo para monitorizar sus eventos, desde entornos de desarrollo, hasta empresas de seguridad, servicio IT, muchas empresas implementan ELK.

Aunque la propia Elastic ofrece una solución SIEM completa bajo la tecnología base, y aunque en tu organización manejes un SIEM de las marcas populares, lo hagas como lo hagas, al final el tamaño importa. Tanto si licencias por tamaño en bbdd, por logs/día, por equipos monitorizados, al final, tener una ingesta de datos grande, con suficiente retención en el tiempo para poder "tirar" de eventos pasados hará que la cuenta de costes crezca.

Contar con una solución ELK intermedia o incluso final para la gestión de logs puede ser interesante o al menos un elemento a estudiar. Me refiero a tener ELK como repositorio de larga duración de logs y nuestro SIEM. Sobre nuestro SIEM por ejemplo en el caso de Splunk podríamos trabajar con el filtrado antes de indexar, para recibir información valiosa, pero tener una suite ELK para investigar casos concretos.

Os pongo un ejemplo, imaginar el consumo de logs de una regla ACCEPT en el firewall. Sin duda, para analizar qué ha pasado o como ha sucedido algo, es información de alto valor, pero sin duda, consumirá muuuuuchos datos/dinero de nuestra cuenta de costes.

Podemos pasar en bruto a nuestro ELK toda esta información, que al final nos costará Gigas de disco, y hacer los famosos user-cases y consultas específicas antes del indexado de datos (En Splunk se tarifica por dato indexado, no recibido) para establecer ese equilibrio entre datos que necesito y datos que tengo.

Entonces, una vez planteada la necesidad o visión, por qué H elk... HELK incorpora nuevos elementos para mejorar las capacidades analíticas del stack ELK y sus consultas.

Por ejemplo, el machine learning !! es raro el Siem que no proporciona este tipo de funcionalidades, o por ejemplo los playbooks para la respuesta a incidentes organizada, o usar tecnologías de "graph" para poder visualizar relaciones que a simple vista nos proporcionen información o indicadores. Al final todo esto lo implementamos a base de módulos.





El proceso de instalación no dista del proceso que indica al autor en el repositorio, cosa que no siempre es así !!!


Para realizar la ingesta de datos en un servidor Windows, vamos a realizar los pasos como lo haríamos con un stack ELK

Accedemos a la web de WinLogBeat y procedemos a instalar el cliente en nuestro servidor Windows. Se recomienda usar el fichero de configuración específico para el proyecto.

Aunque se que lo haces, pero por si acaso, abre el fichero de configuración y revisa donde esta la ip del servidor Kafka, tu HELK e introduce la ip de tu instancia.

Instalamos el servicio y lo iniciamos.

Si quieres sacarle el máximo provecho a las capacidades de detección que tenemos con HELK, sabrás que tener SYSMON corriendo y medianamente configurado es un requisito, y más, cuando tenemos Dashboards específicos que nos sugieren el uso de Sysmon.

Si no estais muy puestos con el asunto, os recomiendo usar una de las exportaciones que se generan en el proyecto https://github.com/olafhartong/sysmon-modular y empeceis a investigar vuestro setting de SYSMON más apropiado.

Lo más sencillo es probar la detección de algún ataque conocido, vamos a ver por ejemplo si detectamos logs relacionados con Mimikatz.



Para darle un poco más de juego al asunto, vamos a usar la herramienta APTsimulator de Florian Roth para generar algo de ruido y ver cómo se comporta nuestra detección basada en Sysmon y Windows tradicional.


Como es normal, comprobamos que todos los logs están llegando bien a HELK y todo dependerá de tus Data sources, el detectar más o menos elementos de los ataques.

Seguiremos escribiendo sobre esta potente herramienta y le daremos caña a los dashboards y las alertas.

Gracias por leerme !!!