Monitorización de hosts silenciosos

Disponible en:

En este documento se explican los métodos que usa la monitorización de hosts silenciosos (SHM) de Google Security Operations para identificar los hosts de tu entorno que han dejado de comunicarse.

Un host silencioso puede indicar posibles interrupciones del recolector.

Usar una regla de detección para SHM

Te recomendamos que configures una regla de detección para SHM.

Este método monitoriza los campos de datos de marketing unificados (como hostname, ip o mac) y activa una alerta cuando no se han recibido los valores esperados en un periodo determinado.

Reglas de detección de ejemplo para SHM

En esta sección se incluyen reglas de detección de ejemplo para SHM que puedes usar o adaptar a tus necesidades específicas. Por ejemplo, puede modificar el periodo, usar otros campos (como ip) o dividir la regla de otras formas.

Detectar hosts silenciosos por nombre de host

En el siguiente ejemplo se detectan hosts silenciosos mediante hostname:

  • Analiza ventanas de 20 minutos.
  • Monitoriza los hosts mediante ip, hostname y mac.
  • Genera alertas si no se han recibido eventos de un host en los últimos 10 minutos, pero no silenciosas en los últimos 20 minutos.
rule shm_using_hostname {
 meta:

 events:
   $event.metadata.event_timestamp.seconds > timestamp.current_seconds() - 1200
   // $identifier_hash = hash.sha256(strings.concat($event.principal.ip[0], $event.principal.hostname, $event.principal.mac[0]))
   $silent_hostname = $event.principal.hostname
 match:
   $silent_hostname over 10m
 outcome:
   $max_event_time = max($event.metadata.event_timestamp.seconds)
   $max_diff = timestamp.current_seconds() - $max_event_time
 condition:
   $event and $max_diff > 600
}

Detectar recolectores silenciosos mediante etiquetas de ingestión

A continuación, se muestra un ejemplo de regla de detección para SHM:

  • Analiza ventanas de 20 minutos.
  • Identifica el silencio mediante la etiqueta de ingestión ingestion_source.
  • Identifica los valores de una zona horaria especificada (en este ejemplo, Asia/Calcutta) que han estado inactivos durante los últimos 10 minutos, pero no durante los últimos 20 minutos.
rule shm_using_ingestion_label {
 meta:

 events:
   $event.metadata.event_timestamp.seconds > timestamp.current_seconds() - 1200
   $event.metadata.ingestion_labels.key = "ingestion_source"
   $silent_ingestion_source = $event.metadata.ingestion_labels.value
 match:
   $silent_ingestion_source over 20m
 outcome:
   $max_time_seconds = max($event.metadata.event_timestamp.seconds)
   $max_diff_seconds = timestamp.current_seconds() - $max_time_seconds
   $max_timestamp = timestamp.get_timestamp($max_time_seconds, "SECOND", "Asia/Calcutta")
   $current_timestamp = timestamp.get_timestamp(timestamp.current_seconds(), "SECOND", "Asia/Calcutta")
 condition:
   $event and $max_diff_seconds > 600
}

Usar Google Cloud Monitoring con etiquetas de ingestión para SHM

Este método usa Google Cloud Monitoring para monitorizar las tasas de ingestión de registros en función de las etiquetas de ingestión de SHM.

En esta sección se describe cómo configurar este método con Bindplane. Para ello, sigue estos pasos:

  1. Configurar Bindplane para SHM con Google Cloud Monitoring
  2. Configurar el umbral de Google Cloud Monitoring para SHM

Después de configurar una canalización de registros que aplique etiquetas de ingestión para SHM, puede configurar alertas de Google Cloud Monitoring por recopilador para cuando la tasa de ingestión sea inferior a un umbral especificado. Puede configurar las alertas para que se envíen a varios lugares fuera de Google SecOps e integrarlas en un flujo de trabajo.

Ventajas de este método:

  • Monitoriza el tiempo de ingestión, no el tiempo del evento.
  • Aprovecha las funciones avanzadas de alertas de Cloud Monitoring.

Inconvenientes de este método:

  • Requiere una configuración independiente fuera de Google SecOps.
  • Limitado por el número de etiquetas de ingesta.

Configurar Bindplane para SHM con Google Cloud Monitoring

Estos son los requisitos previos para configurar Bindplane para SHM con Google Cloud Monitoring:

Para configurar Bindplane para SHM con Google Cloud Monitoring, sigue estos pasos:

  1. Envía el nombre de host del servidor de recogida como un atributo en cada entrada de registro.
  2. En la pestaña Registro, selecciona Procesadores > Añadir procesadores > Copiar campo.
  3. Configura el procesador Copiar campo:
    • Introduce una breve descripción del recurso.
    • Elige el tipo de telemetría Logs.
    • Asigna el valor Resources al campo Copy From.
    • Asigna el valor host.name al campo Resource field.
    • Asigna el valor Attributes al campo Copy To field.
    • Defina el campo Attributes Field, por ejemplo, en chronicle_ingestion_label["ingestion_source"].

Configurar el umbral de Google Cloud Monitoring para SHM

Define un umbral en función de la tasa de ingestión esperada. Los umbrales más bajos detectan interrupciones del recopilador, mientras que los más altos detectan lagunas en los registros de la parte superior.

Después de configurar el umbral de Google Cloud Monitoring para SHM, le recomendamos que monitorice la métrica Chronicle Collector > Ingestion > Total Ingestion Log Count. Para obtener instrucciones detalladas sobre cómo configurar una muestra, consulta Configurar una política de muestra para detectar agentes de recogida de datos de SecOps de Google silenciosos.

Usar un panel de control de Google SecOps para SHM

Usa un panel de control de Google SecOps para ver los recuentos diarios de los hosts de monitorización que han dejado de enviar datos.

Este método es ideal para obtener resúmenes diarios de alto nivel, pero no admite alertas y los resultados tienen una latencia de hasta 6 horas.

¿Necesitas más ayuda? Recibe respuestas de los miembros de la comunidad y de los profesionales de Google SecOps.