Introducción al Elastic Stack - Fundamentos de SIEM y Monitoreo de Seguridad
Objetivo: Comprender qué es el Elastic Stack, sus componentes principales (Elasticsearch, Logstash, Kibana y Beats), y cómo puede utilizarse como una solución SIEM para monitoreo y análisis de seguridad.
🧩 ¿Qué es el Elastic Stack?
El Elastic Stack (anteriormente llamado ELK Stack) es un conjunto de herramientas open source creadas por Elastic que permiten recoger, procesar, almacenar, analizar y visualizar datos en tiempo real.
Está formado principalmente por tres componentes:
-
Elasticsearch 🧠 → motor de búsqueda y análisis.
-
Logstash ⚙️ → herramienta de ingesta y transformación de datos.
-
Kibana 📊 → interfaz visual para consultas y dashboards.
-
Beats 📦 (componente adicional) → agentes ligeros para enviar datos desde endpoints.
Entrar
http://[Target IP]:5601
📈 Flujo típico:
Beats → Logstash → Elasticsearch → Kibana

🧱 Arquitectura General del Elastic Stack
El Elastic Stack puede complementarse con herramientas adicionales:
-
Kafka / RabbitMQ / Redis → para buffering y resiliencia.
-
nginx → para control de acceso y seguridad.

La arquitectura puede adaptarse tanto a entornos on-premise como a Elastic Cloud (SaaS).
🔍 Componentes Principales
🧠 Elasticsearch
-
Motor distribuido y basado en JSON con APIs RESTful.
-
Se encarga del indexado, almacenamiento y consultas de datos.
-
Permite realizar búsquedas avanzadas y análisis complejos.
⚙️ Logstash
-
Recolecta, transforma y transporta registros (logs).
-
Puede recibir datos desde archivos, sockets, syslog, etc.
-
Utiliza filtros para modificar o enriquecer eventos antes de enviarlos a Elasticsearch.
🔄 Pipeline de Logstash:
-
Input → Recepción de datos.
-
Filter → Procesamiento o transformación.
-
Output → Envío a Elasticsearch (u otros destinos).
📊 Kibana
-
Herramienta de visualización y análisis.
-
Permite crear dashboards, gráficos, tablas y ejecutar consultas.
-
Se usa principalmente como interfaz de los analistas SOC.
📦 Beats
-
Pequeños shippers instalados en endpoints para enviar datos.
-
Ejemplos:
-
Filebeat → envía logs.
-
Metricbeat → envía métricas del sistema.
-
🛡️ Elastic Stack como Solución SIEM
El Elastic Stack puede funcionar como un SIEM al recolectar, almacenar, correlacionar y visualizar eventos de seguridad (firewalls, IDS, endpoints, etc.).
🔐 Implementación típica:
-
Logstash ingesta datos de seguridad.
-
Elasticsearch indexa y almacena la información.
-
Kibana visualiza eventos y crea dashboards personalizados.
-
KQL (Kibana Query Language) permite buscar y correlacionar eventos.

💬 Lenguaje de Consultas en Kibana (KQL)
El KQL es una forma sencilla e intuitiva de buscar dentro de los índices de Elasticsearch.
📘 Ejemplo básico:
event.code:4625
➡️ Muestra eventos con el código 4625 (intento de inicio de sesión fallido en Windows).
📙 Ejemplo combinado:
event.code:4625 AND winlog.event_data.SubStatus:0xC0000072
➡️ Filtra los intentos de login fallidos en cuentas deshabilitadas.
📅 Ejemplo con tiempo:
event.code:4625 AND winlog.event_data.SubStatus:0xC0000072 AND @timestamp >= "2023-03-03T00:00:00.000Z" AND @timestamp <= "2023-03-06T23:59:59.999Z"
🧠 KQL admite:
-
🔤 Búsqueda libre de texto.
"svc-sql1" -
⚖️ Operadores lógicos (
AND,OR,NOT). -
🔢 Comparaciones (
:>,:<,:!). -
🧩 Wildcards y regex (
admin*).

🔎 Cómo Identificar Campos y Datos Disponibles
-
Usar la vista Discover en Kibana para explorar los campos y ver estructuras de datos.
-
Consultar la documentación oficial de Elastic, especialmente:
-
Elastic Common Schema (ECS)
-
Winlogbeat Fields
-
Filebeat Fields
-
🧭 Elastic Common Schema (ECS)
ECS (Elastic Common Schema) define un vocabulario estándar para todos los datos del Elastic Stack.
🔍 Ventajas:
-
Vista unificada de múltiples fuentes.
-
Búsquedas más eficientes y consistentes.
-
Correlación entre diferentes tipos de eventos.
-
Visualizaciones coherentes en Kibana.
-
Compatibilidad total con Elastic Security y Elastic Observability.
🧪 Ejercicio Práctico
Objetivo: Identificar el usuario deshabilitado con intentos fallidos de inicio de sesión.
Entrar en:
Entrar en:
http://[Target IP]:5601

En el panel izquierdo, hacer clic en Discover.

En el calendario, seleccionar “Last 15 years” y aplicar

Elegir el índice windows*.

Ejecutar la consulta:
event.code:4625 AND winlog.event_data.SubStatus:0xC0000072 AND @timestamp >= "2023-03-03T00:00:00.000Z" AND @timestamp <= "2023-03-06T23:59:59.999Z"
El resultado muestra el usuario:
anni

Usuario con login fallido y cuenta deshabilitada.
🏁 Conclusión
El Elastic Stack es una herramienta poderosa para la gestión de logs y análisis de seguridad.
Usado correctamente, puede funcionar como un SIEM moderno, ofreciendo:
-
Correlación de eventos en tiempo real 🕵️♂️
-
Dashboards dinámicos y alertas personalizadas 🚨
-
Contexto unificado mediante ECS 🧩