Compartir a través de


Supervisión del estado y auditoría de la integridad de las reglas de análisis

Para garantizar una detección completa, ininterrumpida y sin alteraciones de amenazas en el servicio Microsoft Sentinel, realice un seguimiento del estado y la integridad de las reglas de análisis. Mantenga su funcionamiento óptimo mediante la supervisión de sus conclusiones de ejecución, consultando los registros de estado y auditoría, y usando la repetición manual para probar y optimizar las reglas.

Configure notificaciones de eventos de estado y auditoría para las partes interesadas competentes, que luego puedan tomar medidas. Por ejemplo, defina y envíe mensajes de correo electrónico o de Microsoft Teams, cree vales en el sistema de vales, etc.

En este artículo se describe cómo se usan las características de seguimiento de estado y auditoría de Microsoft Sentinel para realizar un seguimiento del estado y la integridad de las reglas de análisis desde Microsoft Sentinel.

Para obtener información sobre la información de reglas y la nueva ejecución manual de reglas, vea Supervisión y optimización de la ejecución de las reglas de análisis programadas.

Resumen

  • Registros de estado de las reglas de análisis de Microsoft Sentinel:

    • Este registro captura eventos que registran la ejecución de reglas de análisis y el resultado final de estas ejecuciones (si se han realizado correctamente o no y, en caso de error, el motivo).
    • Para cada ejecución de una regla de análisis, el registro también registrará:
      • Cuántos eventos capturó la consulta de la regla.
      • Indica si el número de eventos ha superado el umbral definido en la regla, lo que hace que la regla active una alerta.

    Estos registros se recopilan en la tabla SentinelHealth de Log Analytics.

  • Registros de auditoría de las reglas de análisis de Microsoft Sentinel:

    • Este registro captura los eventos que registran los cambios realizados en cualquier regla de análisis, incluidos los detalles siguientes:
      • Nombre de la regla que se cambió.
      • Qué propiedades de la regla se cambiaron.
      • Estado de la configuración de la regla antes y después del cambio.
      • El usuario o la identidad que realizó el cambio.
      • Dirección IP de origen y fecha y hora del cambio.
      • ...y muchos más.

    Estos registros se recopilan en la tabla SentinelAudit de Log Analytics.

Uso de las tablas de datos SentinelHealth y SentinelAudit

Para obtener datos de auditoría y estado de las tablas descritas anteriormente, primero debe activar la característica de mantenimiento de Microsoft Sentinel para el área de trabajo. Para más información, consulte Activación del seguimiento de estado para Microsoft Sentinel.

Una vez que active la característica de estado, la tabla de datos SentinelHealth se crea en el primer evento de éxito o error generado para las reglas de automatización y los cuadernos de estrategias.

Descripción de los eventos de la tabla SentinelHealth y SentinelAudit

Los siguientes tipos de eventos de estado de la regla de análisis se registran en la tabla SentinelHealth:

  • Ejecución de la regla de análisis programada.
  • Ejecución de la regla de análisis de NRT.

Para más información, vea Esquema de columnas de la tabla SentinelHealth.

La tabla SentinelAudit registra los siguientes tipos de eventos de auditoría de reglas de análisis:

  • Cree o actualice la regla de análisis.
  • Regla de análisis eliminada.

Para más información, consulte Esquema de columnas de la tabla SentinelHealth.

Ejecución de consultas para detectar problemas de estado e integridad

Para obtener los mejores resultados, compile las consultas en las funciones precompiladas para estas tablas, _SentinelHealth() y _SentinelAudit() en lugar de consultar las tablas directamente. Estas funciones mantienen la compatibilidad con versiones anteriores de las consultas si se realizan cambios en el esquema de las tablas.

Como primer paso, filtre las tablas de los datos relacionados con las reglas de análisis. Utilice el parámetro SentinelResourceType.

_SentinelHealth()
| where SentinelResourceType == "Analytics Rule"

Si lo desea, puede filtrar aún más la lista por un tipo determinado de regla de análisis. Para esto, use el parámetro SentinelResourceKind.

| where SentinelResourceKind == "Scheduled"

# OR

| where SentinelResourceKind == "NRT"

Aquí encontrará algunas consultas de ejemplo que le ayudarán a ponerse en marcha:

  • Busque reglas que sean "autodesactivado":

    _SentinelHealth()
    | where SentinelResourceType == "Analytics Rule"
    | where Reason == "The analytics rule is disabled and was not executed."
    
  • Cuente las reglas y las ejecuciones que se realizaron correctamente o con errores, por motivo:

    _SentinelHealth()
    | where SentinelResourceType == "Analytics Rule"
    | summarize Occurrence=count(), Unique_rule=dcount(SentinelResourceId) by Status, Reason
    
  • Buscar actividad de eliminación de reglas:

    _SentinelAudit()
    | where SentinelResourceType =="Analytic Rule"
    | where Description =="Analytics rule deleted"
    
  • Busque la actividad en las reglas, por nombre de regla y nombre de actividad:

    _SentinelAudit()
    | where SentinelResourceType =="Analytic Rule"
    | summarize Count= count() by RuleName=SentinelResourceName, Activity=Description
    
  • Busque la actividad en las reglas, por nombre del autor de la llamada (la identidad que realizó la actividad):

    _SentinelAudit()
    | where SentinelResourceType =="Analytic Rule"
    | extend Caller= tostring(ExtendedProperties.CallerName)
    | summarize Count = count() by Caller, Activity=Description
    

Vea más información sobre los siguientes elementos usados en los ejemplos anteriores, en la documentación de Kusto:

Para más información sobre KQL, consulte Introducción al Lenguaje de consulta Kusto (KQL).

Otros recursos:

Reglas programadas

Cuando se produce un error en una regla de programación, se reintenta cinco veces más en la misma ventana exacta. La regla no omite la ventana ni pierde una alerta, siempre que al menos uno de los seis intentos sea correcto.

El error en uno de los seis intentos indica un retraso en el desencadenamiento de alertas. La consulta siguiente calcula el retraso exacto:

_SentinelHealth()
| where SentinelResourceType == @"Analytics Rule" 
| where SentinelResourceKind == "Scheduled"
| extend startTime = todatetime(ExtendedProperties["QueryStartTimeUTC"]), executionStart = todatetime(ExtendedProperties["executionStart"])
| extend delay = datetime_diff('minute', startTime, executionStart)

Para buscar errores completos (es decir, una ventana que se omitió), use la consulta siguiente:

_SentinelHealth()| where SentinelResourceType == @"Analytics Rule" 
| where SentinelResourceKind == "Scheduled"
| where Status != "Success"
| extend startTime = tostring(ExtendedProperties["QueryStartTimeUTC"])
| summarize failuresByStartTime = count() by startTime, SentinelResourceId
| where failuresByStartTime == 6
| summarize count() by SentinelResourceId

Esta consulta busca ejecuciones de reglas de análisis programadas en las que ninguno de los seis reintentos se ha realizado correctamente. Puede identificar un reintento si examina la hora de inicio de la ventana de la regla, ya que los reintentos siempre examinan la hora de inicio original. Esta consulta proporciona la cantidad de ventanas omitidas para cada regla analítica. Esperamos que las ventanas omitidas sean poco frecuentes. Si ve que tiene reglas de análisis con ventanas omitidas, use las consultas para comprender el motivo del error de estas reglas específicas y la tabla de razones de errores y mitigaciones para corregirlas.

Reglas de NRT

El mecanismo de reintento para las reglas de NRT se comporta de forma diferente a las reglas programadas. Si se produce un error en la ejecución de una regla, el sistema también considera la ventana con errores en la siguiente ejecución (un minuto más tarde). Este comportamiento continúa durante un máximo de 60 errores (una hora).

Dado que un error de una ejecución específica solo refleja un retraso de un minuto, no examine los errores únicos. En su lugar, use la siguiente consulta para supervisar el retraso de cada regla analítica:

_SentinelHealth()
| where SentinelResourceKind == "NRT"
| extend startTime = todatetime(ExtendedProperties["QueryStartTimeUTC"]), endTime = todatetime(ExtendedProperties["QueryEndTimeUTC"]), alertsCreated = toint(ExtendedProperties["AlertsGeneratedAmount"])
| where alertsCreated == 0 
| extend ruleDelay = datetime_diff('minute', endTime, startTime)
| project TimeGenerated, ruleDelay, SentinelResourceId
| render timechart

También puede definir una regla de análisis para desencadenar alertas sobre retrasos significativos (por ejemplo, si una regla de NRT tiene un retraso de más de 10 minutos).

Estados, errores y pasos sugeridos

Para la ejecución programada de reglas de análisis o la ejecución de reglas de análisis NRT, es posible que vea cualquiera de los siguientes estados y descripciones:

  • Correcto: la regla se ejecutó correctamente y generó <n> alertas.

  • Correcto: la regla se ejecutó correctamente, pero no alcanzó el umbral (<n>) necesario para generar una alerta.

  • Fallo: estas descripciones explican el fallo de regla y lo que puede hacer sobre él.

    Descripción Corrección
    Error interno del servidor al ejecutar la consulta.
    El tiempo de espera de ejecución de la consulta se ha agotado.
    No se encontró una tabla a la que se hace referencia en la consulta. Compruebe que el origen de datos pertinente esté conectado.
    Error semántico al ejecutar la consulta. Para intentar restablecer la regla de análisis, puede editarla y guardarla (sin cambiar la configuración).
    Una función a la que llamó la consulta se denomina con una palabra reservada. Quite o cambie el nombre de la función.
    Error de sintaxis al ejecutar la consulta. Para intentar restablecer la regla de análisis, puede editarla y guardarla (sin cambiar la configuración).
    El área de trabajo no existe.
    Esta consulta usa demasiados recursos del sistema y no se pudo ejecutar. Revise y ajuste la regla de análisis. Consulte nuestra descripción general del Lenguaje de consulta Kusto y la documentación de procedimientos recomendados.
    No se encontró una función llamada por la consulta. Compruebe que existe en el área de trabajo de todas las funciones a las que llama la consulta.
    No se encontró el área de trabajo usada en la consulta. Compruebe que todas las áreas de trabajo de la consulta existan.
    No tiene permisos para ejecutar esta consulta. Para intentar restablecer la regla de análisis, puede editarla y guardarla (sin cambiar la configuración).
    No tiene permisos de acceso a uno o varios de los recursos de la consulta.
    La consulta hace referencia a una ruta de acceso de almacenamiento que no se encontró.
    Se denegó el acceso a la consulta a una ruta de acceso de almacenamiento.
    En esta área de trabajo se definen varias funciones con el mismo nombre. Quite o cambie el nombre de la función redundante y restablezca la regla editándola y guardándola.
    Esta consulta no devolvió ningún resultado.
    No se permiten varios conjuntos de resultados en esta consulta.
    Los resultados de la consulta contienen un número incoherente de campos por fila.
    La ejecución de la regla se retrasó por tiempos de ingesta de datos prolongados.
    La ejecución de la regla se ha retrasado por problemas temporales.
    La alerta no se pudo enriquecer debido a incidencias temporales.
    La alerta no se ha enriquecido por problemas de asignación de entidades.
    < número> entidades se han quitado de la alerta <nombre> debido al límite de tamaño de alerta de 32 KB.
    < número> entidades se han quitado de la alerta <nombre> debido a problemas de asignación de entidades.
    La consulta produjo <número> eventos, lo cual supera el máximo de <límite> resultados permitidos para las reglas de <tipo de alerta> con configuración de agrupación por eventos de alerta por fila. La alerta por fila se generó para los primeros <límite-1> eventos y se generó una alerta agregada adicional para tener en cuenta todos los eventos.
    - <número> = número de eventos que devuelve la consulta
    - <límite> = actualmente 150 alertas para las reglas programadas, 30 para las reglas de NRT
    - <tipo de regla> = programada o de NRT

Uso de la auditoría y libro de seguimiento de estado

  1. Para que el libro esté disponible en el área de trabajo, instale la solución de libro desde el centro de contenido de Microsoft Sentinel:

    1. En el portal de Microsoft Sentinel, seleccione Centro de contenido (versión preliminar) en el menú Administración de contenido.

    2. En el Centro de contenido, escriba estado en la barra de búsqueda y seleccione Análisis de estado y auditoría entre las soluciones del libro en Independiente en los resultados.

      Recorte de pantalla de la selección del libro de análisis de estado del centro de contenido.

    3. Seleccione Instalar en el panel de detalles y, a continuación, seleccione Guardar que aparece en su lugar.

  2. Cuando la solución indique que está instalada, seleccione Libros en el menú Administración de amenazas.

    Recorte de pantalla de la indicación de que la solución del libro de análisis de estado está instalada desde el centro de contenido.

  3. En la galería Libros, seleccione la pestaña Plantillas, escriba estado en la barra de búsqueda y seleccione Análisis de estado y auditoría entre los resultados.

    Recorte de pantalla de la selección del libro de análisis de estado de la galería de plantillas.

  4. Seleccione Guardar en el panel de detalles para crear una copia editable y utilizable del libro. Cuando se cree la copia, seleccione Ver libro guardado.

  5. Una vez en el libro, seleccione primero la suscripción y el área de trabajo que desea ver (es posible que ya estén seleccionadas) y, a continuación, defina TimeRange para filtrar los datos según sus necesidades. Use el conmutador de alternancia Mostrar ayuda para mostrar la explicación en contexto del libro.

    Recorte de pantalla de la pestaña Información general del libro de estado de las reglas de análisis.

Este libro tiene tres secciones con pestañas:

Pestaña de información general

En la pestaña Información general se muestran los resúmenes de estado y auditoría:

  • Resúmenes de estado del estado de las ejecuciones de reglas de análisis en el área de trabajo seleccionada: número de ejecuciones, número de operaciones correctas y con errores, y detalles del evento de error.
  • Resúmenes de auditoría de actividades sobre reglas de análisis en el área de trabajo seleccionada: número de actividades a lo largo del tiempo, número de actividades por tipo, y número de actividades de diferentes tipos por regla.

Pestaña Estado

La pestaña Salud le permite explorar eventos de salud específicos.

Recorte de pantalla de la selección de la pestaña de estado en el libro de análisis de estado.

  • Filtre los datos de toda la página por estado (éxito o fallo) y tipo de regla (programado o NRT).
  • Consulte las tendencias de ejecuciones de reglas correctas y erróneas (según el filtro de estado) durante el período de tiempo seleccionado. Puede usar el "pincel de tiempo" en el gráfico de tendencias para ver un subconjunto del intervalo de tiempo original. Recorte de pantalla de las ejecuciones de reglas analíticas a lo largo del tiempo en el libro de análisis de estado.
  • Filtrar el resto de la página por motivo.
  • Consulte el número total de ejecuciones de todas las reglas de análisis, mostradas proporcionalmente por estado en un gráfico circular.
  • A continuación se muestra una tabla que muestra el número de reglas de análisis únicas que se ejecutaron, desglosadas por tipo de regla y estado.
    • Seleccione un estado para filtrar los gráficos restantes para ese estado.
    • Para borrar el filtro, seleccione el icono "Borrar selección" (parece un icono "Deshacer") en la esquina superior derecha del gráfico. Recorte de pantalla del número de reglas ejecutadas por estado y tipo en el libro de análisis de estado.
  • Ver cada estado, con el número de posibles motivos para ese estado. (Solo se mostrarán los motivos representados en las ejecuciones en el período de tiempo seleccionado).
    • Seleccione un estado para filtrar los gráficos restantes para ese estado.
    • Para borrar el filtro, seleccione el icono "Borrar selección" (parece un icono "Deshacer") en la esquina superior derecha del gráfico. Recorte de pantalla del número de razones únicas por estado en el libro de análisis de estado.
  • A continuación, vea una lista de esos motivos, con el número de ejecuciones de reglas totales combinadas y el número de reglas únicas que se ejecutaron.
    • Seleccione un motivo para filtrar los gráficos siguientes en función de ese motivo.
    • Para borrar el filtro, seleccione el icono "Borrar selección" (parece un icono "Deshacer") en la esquina superior derecha del gráfico. Recorte de pantalla de ejecuciones de reglas por motivo único en el libro de análisis de estado.
  • Después, se presenta una lista de las reglas de análisis únicas que se ejecutaron, con los resultados más recientes y las líneas de tendencia de su éxito y fallo (dependiendo del estado seleccionado para filtrar la lista).
    • Seleccione una regla para explorar en profundidad y mostrar una nueva tabla con todas las ejecuciones de esa regla (en el período de tiempo seleccionado).
    • Para borrar esa tabla, seleccione el icono "Borrar selección" (parece un icono "Deshacer") en la esquina superior derecha del gráfico. Recorte de pantalla de la lista de reglas únicas ejecutadas, con estado y líneas de tendencia, en el libro de análisis de estado.
  • Si selecciona una regla en la lista, aparecerá una nueva tabla con los detalles de salud de la regla seleccionada. Recorte de pantalla de la lista de ejecuciones de la regla de análisis seleccionada, en el libro de análisis de estado.

Pestaña Auditoría

La pestaña Auditoría permite explorar en profundidad determinados eventos de auditoría.

Recorte de pantalla de la selección de la pestaña de auditoría en el libro de análisis de estado.

  • Filtrar los datos de toda la página por tipo de regla de auditoría (programada/fusión).
  • Ver las tendencias de la actividad auditada en las reglas de análisis durante el período de tiempo seleccionado. Puede usar el "pincel de tiempo" en el gráfico de tendencias para ver un subconjunto del intervalo de tiempo original. Recorte de pantalla de la actividad de auditoría de tendencias en el libro de análisis de estado.
  • Ver el número de eventos auditados, desglosados por actividad y tipo de regla.
    • Seleccione una actividad para filtrar los gráficos siguientes para esa actividad.
    • Para borrar el filtro, seleccione el icono "Borrar selección" (parece un icono "Deshacer") en la esquina superior derecha del gráfico. Recorte de pantalla del número de eventos de auditoría por actividad y tipo en el libro de análisis de estado.
  • Ver el número de eventos auditados por nombre de regla.
    • Seleccione un nombre de regla para filtrar la tabla siguiente para esa regla y para explorar en profundidad y mostrar una nueva tabla con toda la actividad de esa regla (en el período de tiempo seleccionado). (Ver después de la captura de pantalla siguiente).
    • Para borrar el filtro, seleccione el icono "Borrar selección" (parece un icono "Deshacer") en la esquina superior derecha del gráfico. Recorte de pantalla de los eventos auditados por nombre de regla y autor de la llamada en el libro de análisis de estado.
  • Ver el número de eventos auditados por autor de llamada (la identidad que realizó la actividad).
  • Si seleccionó un nombre de regla en el gráfico anterior, aparece otra tabla que muestra las actividades auditadas en esa regla. Seleccione el valor que aparece como un vínculo en la columna ExtendedProperties para abrir un panel lateral que muestre los cambios realizados en la regla. Recorte de pantalla de la actividad de auditoría para la regla seleccionada en el libro de trabajo de análisis de estado.

Pasos siguientes