🔒 Registro cerrado · Apertura oficial próximamente · Acceso exclusivo para alumnos activos
Iniciar SesiónEQL, secuencias de eventos
5 tareas · 40 min · Principiante
Martes 20 de octubre, Trilladora del Gualivá. Un filtro dice qué eventos hay; una secuencia dice qué pasó después de qué. EQL, el lenguaje de eventos de Elasticsearch, sirve para lo segundo: pide eventos de varias categorías, en orden y dentro de una ventana de tiempo. Esta sala te enseña a leer y a escribir consultas EQL con los eventos del día y a medir qué cambia cuando se toca la ventana. En Elastic Security se escriben en la pestaña de correlación de la línea de tiempo y en las reglas de correlación. La consola solo ejecuta las consultas que aparecen escritas en el texto, tal como están; todo es lectura de eventos de ejemplo.
Objetivo de la sala
Martes 20 de octubre, Trilladora del Gualivá. Un filtro dice qué eventos hay; una secuencia dice qué pasó después de qué. EQL, el lenguaje de eventos de Elasticsearch, sirve para lo segundo: pide eventos de varias categorías, en orden y dentro de una ventana de tiempo. Esta sala te enseña a leer y a escribir consultas EQL con los eventos del día y a medir qué cambia cuando se toca la ventana. En Elastic Security se escriben en la pestaña de correlación de la línea de tiempo y en las reglas de correlación. La consola solo ejecuta las consultas que aparecen escritas en el texto, tal como están; todo es lectura de eventos de ejemplo.Una consulta EQL de un solo evento empieza por la categoría y sigue con where y una condición: process where process.name == "powershell.exe". La categoría es la de event.category (proceso, red, archivo, autenticación) y la condición usa campos ECS.
Hay dos operadores de igualdad con una diferencia que importa. == compara exactamente, mayúsculas incluidas; : no distingue mayúsculas y admite comodines. Ejecuta las tres consultas del laboratorio que preguntan por PowerShell, con == y con :, y compara cuántas filas devuelve cada una.
Responde para continuar
Escribes process.name == "PowerShell.exe" y no sale ninguna fila, aunque el programa sí se ejecutó. ¿Por qué?
Una secuencia lista los eventos en el orden en que deben ocurrir, cada uno entre corchetes: sequence [ evento A ] [ evento B ]. Con by se exige que todos compartan un valor, como el equipo: sequence by host.name. Con with maxspan=2m se exige que todo ocurra dentro de dos minutos desde el primer evento.
Ejecuta la secuencia de PowerShell lanzado por un procesador de texto seguida de una conexión a una dirección externa, primero con maxspan=2m y después con maxspan=10s. La segunda no devuelve nada, y esa diferencia está en las horas de las dos filas de la primera.
Responde para continuar
Escribe cuántos segundos pasan entre el primer evento de la secuencia y el segundo.
Ver pista de ayuda
Resta las dos horas de las filas de la secuencia que sí devuelve resultado.
Con with runs=N se pide que un mismo evento se repita N veces seguidas dentro de la secuencia. Sirve para describir una racha: cuatro fallos y después un acierto, sin tener que escribir cuatro corchetes iguales.
Ejecuta la consulta que pide cuatro fallos de autenticación de una misma cuenta, seguidos de un acierto, en menos de dos minutos. Solo una cuenta cumple las dos exigencias a la vez.
Responde para continuar
Escribe la cuenta que cumple la secuencia de cuatro fallos y un acierto.
Ver pista de ayuda
Ejecuta la consulta con with runs=4 y lee la columna user.name.
Sin by, una secuencia junta eventos de cuentas y equipos distintos, y el resultado se llena de coincidencias que no son una historia. Con by se declara qué dato tienen que compartir los eventos para que sean la misma historia: el equipo, la cuenta o la dirección.
Elegir el campo del by es parte de la regla y se decide con la pregunta de qué entidad vive la secuencia. Una racha de fallos es de una cuenta; un shell y una conexión son de un equipo.
Responde para continuar
¿Para qué sirve escribir `sequence by host.name` en una consulta de secuencia?
Ejecuta la consulta que pide un fallo de autenticación seguido de un acierto, sin by, sin runs y sin maxspan. Cada par que sale es una secuencia, de dos filas. En el laboratorio la columna secuencia numera los pares.
Esa consulta, como regla, estaría abierta a muchos errores: un error de tecleo seguido de la corrección es también un fallo seguido de un acierto. Contar cuántos pares salen mide el ruido de una regla tan abierta.
Responde para continuar
Escribe cuántas secuencias devuelve la consulta sin by, sin runs y sin maxspan.
Ver pista de ayuda
Cuenta los números distintos de la columna secuencia.
Whoami-Labs Pro
Whoami-Labs Pro utiliza cookies
Utilizamos cookies y almacenamiento local para el funcionamiento del sitio, seguridad de sesión y, si lo autorizas, analítica y marketing. Puedes aceptar, rechazar o personalizar. Política de Privacidad
Preferencias
Configuraciones de cookies
Elige qué categorías permitir. Las esenciales siempre están activas. Consulta la Política de Privacidad.
Esenciales
Siempre activas · sesión, CSRF, tema y esta preferencia
Necesarias para iniciar sesión, proteger formularios (CSRF) y recordar tu elección de cookies y tema. Sin ellas la plataforma no funciona de forma segura.
Analíticos
Hoy no activos en la plataforma; listos para cuando se conecten
Nos ayudan a entender uso de cursos y páginas. Si los activas, se usarán cuando conectemos analítica; hasta entonces no se carga ningún tracker.
Marketing
Hoy no activos; campañas futuras solo con tu permiso
Comunicaciones o campañas. No activos hoy en la plataforma; quedarán listos si los conectamos y solo si los permites.