IBM VEST Workshops

Desarrollo de reglas de detección de anomalías

Introducción

La detección de anomalías permite alertar a los operadores de amenazas no documentadas y que, por tanto, no pueden detectarse con métodos de vigilancia de indicadores bien definidos. Estas amenazas pueden detectarse mediante la supervisión de un volumen inusual de actividades. IBM QRadar SIEM le permite crear reglas de detección de anomalías para supervisar las desviaciones de la línea de base de las actividades esperadas.

En estos ejercicios, desarrollará una regla de detección de anomalías de tipo Anomalía. Comprueba la desviación del número de eventos que coinciden con una búsqueda agrupada respecto a la media móvil ponderada. La regla se dispara en el ejercicio cuando los datos de la muestra superan el porcentaje de desviación configurado en la regla de anomalía.

Prepararse para la norma sobre anomalías

Para cada regla de detección de anomalías, una búsqueda agrupada proporciona los datos de la serie temporal que el Motor de Detección de Anomalías (ADE) utilizará para detectar cualquier desviación estadística. En este ejercicio, usted crea una búsqueda agrupada. Para confirmar que su búsqueda funciona según lo previsto, alimentará datos de muestra a QRadar SIEM. Después de que QRadar SIEM haya descubierto el tipo de fuente de registro de los datos de muestra, creará automáticamente una fuente de registro.

Si está utilizando la VPN WireGuard configurada en 101: Configuración de demostración de QRadar para acceder al entorno de demostración, podrá realizar las siguientes actividades desde su estación de trabajo. Si no ha configurado el acceso VPN puede realizar las actividades desde el servidor de salto.

Alimentación de datos de muestra a QRadar SIEM

QRadar SIEM necesita procesar datos de muestra para crear el ejemplo utilizado en esta guía de laboratorio. Realice los siguientes pasos para iniciar el script aplicable:

  1. Inicie sesión en el servidor QRadar:
ssh root@172.16.60.10
bash

La contraseña es: Q1d3m0

  1. Envía el mensaje syslog preparado a QRadar:
cd /labfiles/extended/labfiles
bash
chmod +x ./sendSpike.sh
bash
./sendSpike.sh
bash

El directorio /labfiles/extended/labfiles fue subido al servidor QRadar en los ejercicios 103: Configuración Avanzada de Laboratorio.

Después de unos 25 mensajes syslog, QRadar descubre que se originan en un sistema que ejecuta Linux. QRadar crea automáticamente una fuente de registro del tipo de fuente de registro del SO Linux mientras usted realiza la siguiente tarea.

Crear una búsqueda agrupada

Las reglas de detección de anomalías comprueban los resultados de una búsqueda agrupada de eventos o flujos.

  1. Vuelva a la consola de QRadar:
  • Abra su navegador en: https://172.16.60.10.
  • Inicia sesión como admin con la contraseña Q1d3m0.Demo.
  1. Vaya a la pestaña Actividad de registro.
  2. Localice la lista desplegable Buscar a la izquierda en la barra de herramientas.
  3. En la lista desplegable Buscar, seleccione Nueva búsqueda.

Como resultado, la pestaña Actividad de registro muestra el formulario para crear una nueva búsqueda.

  1. Desplázate hacia abajo.
  2. En la sección Intervalo de tiempo, seleccione Reciente y Última hora.

Este intervalo de tiempo no es relevante para la regla de anomalía. Sin embargo, si selecciona un intervalo de tiempo muy corto para Reciente o selecciona Último intervalo (actualización automática), podría perderse la confirmación visual de que su búsqueda funciona según lo previsto porque el resultado de la búsqueda está vacío si el script que alimenta los datos de muestra ya ha finalizado hace un tiempo.

No seleccione Tiempo Real (streaming) porque no permite la agrupación.

  1. Desplácese hasta la sección Definición de columnas y realice los siguientes pasos:

    a. En la lista Columnas, elimine las dos propiedades siguientes:

    • Fuente IP
    • Nombre de usuario

    b. En la lista Columnas disponibles, añada las mismas propiedades a la lista Agrupar por.

  2. Desplácese hasta la sección Parámetros de búsqueda y realice los siguientes pasos:

a. Para Parámetro, seleccione Categoría [Indexado]. b. Para Tipo de parámetro, seleccione Es. c. Para Operador, seleccione Igual a. d. Para Categoría de alto nivel, seleccione Autenticación. e. Para Categoría de bajo nivel, seleccione Escalada de privilegios superada.Haga clic en Añadir filtro.

  1. Para ejecutar la nueva búsqueda, pulse el botón Buscar.

Como resultado, la pestaña Actividad del registro muestra el resultado de la búsqueda.

  1. Para guardar la nueva búsqueda, haga clic en Guardar criterios en la barra de herramientas.

Como resultado, se abre la ventana Guardar criterios.

  1. En la ventana Guardar criterios, realice los siguientes pasos:

a. Para Search Name, introduzca Exercise: PrivEsc por IP de Origen y Nombre de Usuario

La mejor práctica es introducir nombres que describan lo que hace una búsqueda. Sin embargo, para este laboratorio, puede introducir un nombre de búsqueda más corto porque el nombre no se utiliza en ninguna parte.

b. No es necesario para este ejercicio pero es útil en caso de que necesite localizar su búsqueda fácilmente, seleccione Incluir en mis búsquedas rápidas.

c. Para guardar los criterios de búsqueda, pulse OK.

Como resultado, se cierra la ventana Guardar criterios y se abre la ventana Búsqueda guardada.

d. Haga clic en Aceptar.

Como resultado, se cierra la ventana Búsqueda guardada.

Creación de una regla de anomalía

En este ejercicio, se crea la regla de anomalía y se configuran sus pruebas y la respuesta de la regla.

Parada para alimentar datos de muestra

Después de crear una regla de anomalía en este ejercicio, la verificará en el siguiente. La verificación necesita empezar desde cero. Por lo tanto, deje de alimentar datos de muestra a QRadar SIEM porque las pruebas de la nueva regla de anomalía coinciden inmediatamente con los datos de muestra una vez que se crea la regla. Para terminar el script, que alimenta datos de muestra, realice los siguientes pasos:

  1. Trae la ventana del terminal al frente.

    La ventana de terminal muestra la salida del script que alimenta datos de muestra a QRadar SIEM.

  2. Confirme que el script ha finalizado. Si no lo ha hecho, escriba control-c (o Ctrl-c dependiendo de su teclado)

  3. No cierre la ventana del terminal.

Iniciar el asistente de reglas

Para empezar a crear una regla de anomalía, que utilice la búsqueda agrupada del ejercicio anterior, realice los siguientes pasos:

  1. Trae el navegador al frente.
  2. En la pestaña Actividad de registro, en la lista desplegable Reglas de la barra de herramientas, seleccione Añadir regla de anomalía...

Como resultado, QRadar abre el Asistente de Reglas mientras permanece en la pestaña Actividad de Registro.

Si Añadir regla de anomalía aparece en gris es porque no ha seleccionado ninguna consulta.

  1. En la página de bienvenida del Asistente para reglas, lea el texto introductorio y seleccione Omitir esta página al ejecutar este asistente para reglas.
  2. Para navegar al Editor de Pila de Prueba de Reglas, haga clic en Siguiente dos veces.

Si no puede hacer clic en el enlace Siguiente para avanzar a la página siguiente en el asistente, pruebe a utilizar el navegador Firefox. Es posible que no funcione en Chrome.

Tarea 3 Configurar los parámetros de la prueba

El Editor de Pila de Pruebas de Regla ya ha añadido automáticamente la prueba esencial para una regla de anomalía. Para configurar los parámetros de la prueba, siga estos pasos:

  1. Para abrir una ventana de selección de la propiedad para la que desea calcular los promedios de intervalo, haga clic en el parámetro [esta propiedad acumulada].
  2. En la ventana, seleccione la propiedad acumulada Recuento de Eventos (Suma).
  1. Para añadir la propiedad acumulada a la prueba, haga clic en Enviar.

La ventana se cierra.

  1. El segundo parámetro es [1 min]. Configura la duración del intervalo. No modifique este parámetro.
  2. El tercer parámetro es [40]%. Configura por encima de qué desviación del intervalo actual de la media móvil ponderada de los intervalos anteriores la prueba se evalúa como verdadera. Deje el parámetro sin modificar.
  3. El último parámetro de la prueba configura para qué intervalo de tiempo el motor de detección de anomalías calcula la media móvil ponderada en intervalos.

El Editor de pila de prueba de reglas ha seleccionado automáticamente [24 horas] para el último parámetro. Para abrir una ventana para seleccionar otro intervalo de tiempo, haga clic en el parámetro.

  1. En la ventana, seleccione el intervalo de 5 minutos.
  1. Para actualizar el parámetro, haga clic en Enviar.

La ventana se cierra.

  1. Verifique que su Editor de Pila de Prueba de Reglas se parece a la siguiente captura de pantalla.

Sugerencia: En los entornos de TI del mundo real, es probable que se produzca un número inusual de escaladas de privilegios en determinados momentos de forma legítima, por ejemplo, cuando se ejecutan procesos operativos automatizados. Por lo tanto, añada pruebas de tiempo para ejecutar una regla de detección de anomalías únicamente en los momentos en los que una desviación de una media móvil ponderada indique un problema.

Proporcionar un valor mínimo para cada intervalo

Normalmente, las pruebas estadísticas sólo conducen a resultados útiles cuando llega un mínimo de eventos o flujos relevantes por intervalo. Para las reglas de detección de anomalías en su entorno, los mínimos están probablemente en los cientos o miles. Este ejemplo necesita trabajar con un número relativamente pequeño de eventos de muestra. Por lo tanto, realice los siguientes pasos para requerir un mínimo de 8 eventos por intervalo:

  1. Haga clic en el icono verde de signo más (+) situado junto a la siguiente prueba:

cuando el valor del intervalo comprobado es mayor o igual que 0

  1. Para abrir una ventana para introducir un número como mínimo, haga clic en el parámetro [0].
  2. En la ventana, para Proporcionar un valor mínimo para cada intervalo, sustituya el 0 por 8
  1. Para configurar la prueba mínima, haga clic en Enviar.

La ventana se cierra.

Configuración de la regla de anomalías

Normalmente, las pruebas estadísticas sólo conducen a resultados útiles cuando llega un mínimo de eventos o flujos relevantes por intervalo. Para las reglas de detección de anomalías en su entorno, los mínimos están probablemente en los cientos o miles. Este ejemplo necesita trabajar con un número relativamente pequeño de eventos de muestra. Por lo tanto, realice los siguientes pasos para requerir un mínimo de 8 eventos por intervalo:

  1. Desplácese hacia abajo para ver más claramente todos los campos relacionados con esta tarea.
  2. Para el nombre de la regla en el campo Aplicar, introduzca el siguiente nombre:
Exercise-Authentication: Unusual Privilege Escalations
bash

Nota: Este ejercicio utiliza el prefijo Ejercicio- para distinguir las reglas predefinidas de su propio desarrollo.

  1. Para asignar la regla personalizada al grupo Ejercicio, desplácese hacia abajo en la lista de grupos y seleccione Ejercicio.
  2. Para documentar la regla personalizada en el campo Notas, introduzca el siguiente texto:
This rule triggers when privilege escalations deviate considerably from their weighted moving average.
bash
  1. Para confirmar la entrada, pulse Intro.
  2. Verifique que su Asistente de Reglas se parece a la siguiente captura de pantalla.

Nota: Cuando necesite localizar todas las reglas de detección de anomalías y reglas personalizadas que haya desarrollado, vaya a Reglas en la pestaña Delitos, seleccione Reglas en la lista desplegable Mostrar y, a continuación, seleccione Ejercicio en la lista desplegable Grupo.

Observar las respuestas de las normas

Para que se cree un delito para las escaladas de privilegios inusuales que comprueba la regla de detección de anomalías, realice los siguientes pasos:

  1. Para navegar a la respuesta de la regla, haga clic en Siguiente.
  2. El Asistente de Reglas ya ha preparado la Respuesta a la Regla. Para este ejemplo, no realice ningún cambio.
  3. Para observar que la infracción sólo se puede indexar por Nombre del suceso, abra la lista desplegable Indexar infracción en función de.
  1. Desplácese hasta la sección Habilitar regla. No cambie nada. Lea la pista importante junto a la casilla de verificación.
  1. Para ir al Resumen de reglas, haga clic en Siguiente.
  2. Para crear la regla, haga clic en Finalizar.

Se cierra el Asistente para reglas.

Verificación de la regla de anomalías

En este ejercicio, usted verifica si su desarrollo crea una ofensa.

Alimentación de datos de muestra a QRadar SIEM

Para ejecutar el script, que alimenta datos de muestra, realice los siguientes pasos:

  1. Trae la ventana del terminal al frente.

La ventana del terminal sigue mostrando la salida de la ejecución del script anterior.

  1. Para alimentar repetidamente el mensaje syslog preparado a QRadar, ejecute el siguiente comando:
./sendSpike.sh
bash
  1. Deje que se ejecute el script y vuelva al navegador. No cierre la ventana del terminal.

Observar el delito

El script alimenta eventos a QRadar SIEM, que coinciden con su regla de anomalía. Durante los primeros cinco minutos, la tasa de eventos aumenta hasta alcanzar un pico. Después del pico, la tasa disminuye reflejando la tasa de aumento de los primeros cinco minutos.

La media del intervalo con el pico se desvía en un porcentaje superior al configurado en la regla de anomalía de la media móvil ponderada. Por lo tanto, QRadar SIEM crea una ofensa después de que el script se haya ejecutado durante unos seis minutos. Para observar la ofensa, realice los siguientes pasos:

  1. Vaya a la pestaña Infracciones.
  2. Para actualizar la lista de infracciones, haga doble clic en la pestaña Infracciones. El doble clic actualiza y restablece la configuración predeterminada de la ficha.

Nota: En este caso, puede lograr el mismo objetivo, si hace clic en el icono de doble flecha en la esquina superior derecha de la interfaz de usuario de QRadar SIEM. Sin embargo, está desactivado para esta simulación.

  1. Cuando aparezca la nueva ofensa, haz doble clic en ella.

Se abre el Resumen de Ofensas.

  1. Opcionalmente, haga clic en Anomalía en la barra de herramientas.

    Se abre una ventana aparte con los resultados de la búsqueda que utiliza su regla de anomalías.

  2. Revise el resultado de la búsqueda y cierre la ventana del navegador para volver a la ventana principal de la consola de QRadar.

  3. En el campo Recuento de eventos/flujos, haga clic en 5 eventos. El número de eventos puede variar.

    Se abre una ventana aparte con los eventos que la regla de anomalía despachó como Respuesta de regla.

  4. Para abrir los detalles del evento, desplácese hacia abajo y haga doble clic en el evento.

  5. Observe la sección Información sobre detección de anomalías. Solo aparece para los eventos que las reglas de detección de anomalías envían como Respuesta de regla.

Resumen

Ha completado con éxito este laboratorio creando y verificando una regla de anomalía en QRadar.