Crea reglas para el análisis de riesgos

Este documento describe los elementos principales de las nuevas funciones de sintaxis de YARA-L para Análisis de riesgos. Para obtener más información sobre YARA-L, consulta Lenguaje YARA-L 2.0. Sintaxis

Funciones de métricas de YARA-L

Google Security Operations admite varias funciones de métricas, que pueden agregar grandes cantidades de datos históricos.

La función de métricas solo se puede usar en la sección de resultados. Todos los ejemplos las llamadas a función suponen el uso en una regla de varios eventos.

Todas las reglas que usan la función de métricas se categorizan automáticamente como reglas de varios eventos, incluso si no tienen una sección de coincidencia y usan solo una de evento. Esto significa que se descuentan de la cuota de reglas de varios eventos.

Parámetros de las funciones

Las funciones de métricas se pueden usar para las reglas que realizan de análisis de datos en la nube.

Por ejemplo, la siguiente regla indica la cantidad máxima de bytes diarios que la dirección IP específica que envió el mes pasado. La dirección IP específica es representado por una variable de marcador de posición, $ip en este ejemplo. Para obtener más información sobre las variables de marcador de posición, consulta Declaraciones de variables.

$max_bytes_per_day = max(metrics.network_bytes_outbound(
    period:1d, window:30d,
    metric:value_sum,
    agg:max,
    principal.asset.ip:$ip
))

Debido a la gran cantidad de argumentos que se usan en estas funciones, usan nombres parámetros, que pueden especificarse en cualquier orden. Los parámetros son los siguientes:

Período

La cantidad de tiempo durante la cual se combinan los eventos de registro individuales en un solo observación. Los únicos valores permitidos son 1h y 1d.

Ventana

El período durante el cual las observaciones individuales se agregan en una único, como el promedio y el máximo. Los valores permitidos para window se basan en el período de la métrica. La asignación válida es la siguiente:

period:1h : window:today

period:1d : window:30d

Por ejemplo, la siguiente regla te indica el mayor número de intentos fallidos intentos de autenticación vistos para un usuario específico (Alice) en un día determinado, durante los últimos 30 días:

$user = "alice"
$max_fail = max(metrics.auth_attempts_fail(
    period:1d, window:30d,
        metric:event_count_sum,
        agg:max,
        target.user.userid:$user
))

Se puede usar una combinación de métricas por hora y por día para first-seen tipos de detecciones. Por ejemplo, la siguiente regla te indica si esto es la primera vez que un usuario accede a esta aplicación:

events:
    $e.metadata.event_type = "USER_LOGIN"
    $e.security_result.action = "ALLOW"
    $userid = $e.target.user.userid
    $app = $e.target.application
match:
    // find events from now - 4h ago, which is the recommended look-back period
    $userid, $app over 4h
outcome:
    // check hourly analytics until daily analytics are available
    $first_seen_today = max(metrics.auth_attempts_success(
        period:1h, window:today, metric:first_seen, agg:max,
        target.user.userid:$userid, target.application:$app))
    $first_seen_monthly = max(metrics.auth_attempts_success(
        period:1d, window:30d, metric:first_seen, agg:max,
        target.user.userid:$userid, target.application:$app))
condition:
    $e and ($first_seen_today = 0) and ($first_seen_monthly = 0)

Métrica

Dentro de cada período, cada observación tiene una serie de métricas asociadas. Se debe seleccionar una de estas opciones para la agregación en toda la ventana. Cinco Se admiten los tipos de metric:

event_count_sum: Cantidad de eventos de registro únicos dentro de cada período.

first_seen: marca de tiempo de la primera vez que se ve un evento de registro coincidente en cada uno de ellos. período.

last_seen: Marca de tiempo de la última vez que se vio un evento de registro coincidente en cada uno. período.

value_sum: Representa la suma de la cantidad de bytes en todo el registro. de eventos combinados en el período. Solo puedes usar este valor para las métricas con bytes en el nombre.

num_unique_filter_values: Métrica que no calcula previamente Google Security Operations, pero se puede procesar durante la ejecución de la regla. Ver Recuento único métricas para obtener más detalles y requisitos.

Agg

La agregación que se aplica a la métrica Las agregaciones se aplican sobre el toda la ventana (p.ej., el valor diario más alto de los últimos 30 días). Se permiten son los siguientes:

avg: Valor promedio por período. Esta es una media estadística, que no incluir valores de cero.

max: El valor más alto por período.

min: Valor más bajo por período.

num_metric_periods: la cantidad de períodos dentro del período que tuvieron un un valor de métrica distinto de cero.

stddev: Desviación estándar del valor por período. Esta es una estadística el desvío estándar que no incluye el valor cero.

sum: suma de cada valor por período, en toda la ventana.

Por ejemplo, la siguiente regla indica la cantidad promedio de intentos intentos de autenticación vistos para un usuario específico (Alice) en un día determinado los últimos 30 días:

$user = "alice"
$avg_fail = max(metrics.auth_attempts_fail(
        period:1d, window:30d,
        metric:event_count_sum,
        agg:avg,
        target.user.userid:$user
))

La siguiente regla te indica cuántas autenticaciones exitosas de un usuario específico en los últimos 30 días:

$total_success = max(metrics.auth_attempts_success(
        period:1d, window:30d,
        metric:event_count_sum,
        agg:sum,
        target.user.userid:$user
))

La siguiente regla indica si un usuario específico accedió correctamente a al menos una vez en los últimos 30 días:

$days_success = max(metrics.auth_attempts_success(
        period:1d, window:30d,
        metric:event_count_sum,
        agg:num_metric_periods,
        target.user.userid:$user
))

La siguiente regla te indica la primera o última vez que accedió un usuario específico correctamente:

$first_seen = max(metrics.auth_attempts_success(
        period:1d, window:30d,
        metric:first_seen,
        agg:min,
        target.user.userid:$user
))
$last_seen = max(metrics.auth_attempts_success(
        period:1d, window:30d,
        metric:last_seen,
        agg:max,
        target.user.userid:$user
))

La siguiente regla indica el número máximo de bytes que envía un usuario en cualquier un día determinado durante los últimos 30 días:

$max_daily_bytes = max(metrics.network_bytes_outbound(
        period:1d, window:30d,
        metric:value_sum,
        agg:max,
        target.user.userid:$user
))

Filtrar

Los filtros permiten filtrar las métricas antes de la agregación por un valor en el métrica previamente procesada (consulta los valores en Métrica). Los filtros pueden ser cualquier eventos (una sola línea en la sección de eventos) que no contiene cualquier campo de evento o marcador de posición. Las únicas variables que se pueden incluir en esta condición son tipos de métricas.

La siguiente regla solo incluye las métricas en las que value_sum > 10 AND event_count_sum > 2:

$max_bytes_per_day = max(metrics.network_bytes_outbound(
    period:1d, window:30d,
    metric:value_sum,
    agg:max,
    principal.asset.ip:$ip
    filter:value_sum > 10 AND event_count_sum > 2
))
Ejemplos válidos de filtros
filter:value_sum > 10 AND event_count_sum != 5
filter:event_count_sum = 100 OR event_count_sum > 1000
filter:timestamp.get_day_of_week(first_seen) = 3
Ejemplos de filtros no válidos
// No placeholders in filter expressions.
filter:value_sum > $ph

// No event fields in filter expressions.
filter:event_count_sum + $e.field > 10

// No event fields in filter expressions.
filter:timestamp.subtract(first_seen, $e.metadata.timestamp)

Campos de UDM

Las métricas se filtran según 1, 2 o 3 campos de UDM, según la función. Para para obtener más información, consulta Funciones.

Los siguientes tipos de campos UDM se usan para las funciones de métricas:

  • Dimensiones (obligatorio) En este artículo, se mencionan diferentes combinaciones en la documentación de Google Cloud. No puedes unir una métrica con un valor predeterminado ("" para y 0 para int).
  • Espacios de nombres (opcional): Solo puedes usar espacios de nombres para las entidades que que especificas en las dimensiones. Por ejemplo, si usas principal.asset.hostname filter, también puedes usar un principal.namespace filter. Si no si incluyes un filtro de espacio de nombres, los datos en todos los espacios de nombres se agregan entre sí. Puedes usar un valor predeterminado como filtro de espacio de nombres.

Cálculos de ventana

Google Security Operations calcula las métricas mediante una métrica diaria o por hora. en la ventana modal.

Ventanas diarias

Todas las ventanas diarias, como 30d, se determinan de la misma manera. Google Security Operations usa los datos de métricas disponibles más recientes generada que no se superponga con el intervalo de tiempo de la regla. Cálculo del las métricas diarias pueden tardar hasta 6 horas en completarse y no comienzan hasta el final del día en UTC. Los datos de las métricas del día anterior estarán disponibles el antes de las 6:00 a.m. UTC todos los días.

Por ejemplo, para una regla que se ejecuta sobre los datos de eventos del 31/10/2023 a las 4:00 UTC al 31/10/2023 a las 7:00 a.m. UTC, es probable que las métricas diarias del 31/10/2023 hayan sido generados, por lo que el cálculo de la métrica usará los datos del 1/10/2023 a 30-10-2023 (inclusive). Mientras que para una regla que se ejecuta sobre datos de eventos de 31/10/2023 desde la 1:00 a.m. UTC hasta el 31/10/2023 a las 3:00 UTC, métricas diarias del 30/10/2023 probablemente no se hayan generado, por lo que el cálculo de las métricas usará los datos del 30/09/2023 al 29/10/2023 (inclusive).

Período de today por hora

La ventana de métricas por hora se calcula de forma muy diferente a la ventana para métricas diarias. La ventana de métrica por hora de today no tiene un tamaño estático como el Ventana de 30d para las métricas diarias. La ventana de métricas por hora today completa de la siguiente manera: datos como sea posible entre el final de la ventana diaria y el inicio de la período de regla.

Por ejemplo, para una regla que se ejecuta sobre los datos de eventos del 31/10/2023 a las 4:00:00. UTC al 31-10-2023 a las 7:00:00 UTC, el cálculo de la métrica diaria usará los datos del 1/10/2023 al 30/10/2023 (inclusive) y la ventana de métricas por hora usará del 31-10-2023 a las 00:00:00 UTC al 31-10-2023 a las 4:00:00 UTC.

Registrar métricas únicas

Existe un tipo especial de métrica num_unique_filter_values que no es previamente procesados por Google Security Operations y, en su lugar, se calcula durante la ejecución de una regla. Para ello, se agregan sobre una dimensión existente en una métrica ya procesada. Por ejemplo, la métrica daily total count of distinct countries that a user attempted to authenticate se puede derivar de las métricas auth_attempts_total procesadas previamente en la las dimensiones target.user.userid y principal.ip_geo_artifact.location.country_or_region realizando un recuento agregación única en la última dimensión.

La siguiente regla de ejemplo cuenta métricas únicas:

$outcome_variable = max(metrics.auth_attempts_total(
    period: 1d,
    window: 30d,
    // This metric type indicates any filter with a wildcard value should be
    // aggregated over each day to produce a new metric on-the-fly.
    metric: num_unique_filter_values,
    agg: max,
    target.user.userid: $userid,
    // Filter whose value should be counted over each day to produce the
    // num_unique_filter_values metric.
    principal.ip_geo_artifact.location.country_or_region: *
))

Esta función tiene las siguientes limitaciones:

  • El cálculo del recuento de métricas únicas solo se puede agregar a través de 1 filtro dimensión. Esto se indica mediante el uso del token comodín * como filtro. valor.

Funciones

En esta sección, se incluye documentación sobre las funciones de métricas específicas compatibles de Google Security Operations.

Eventos de alerta

metics.alert_event_name_count procesa con anterioridad los valores históricos para eventos UDM que tienen un valor distinto de cero para las alertas, con una serie de alertas generadas en Google Workspace received_bytes y pone ese campo a disposición como value_sum.

La lista completa de los campos de UDM disponibles como filtros

  • principal.asset.asset_id, principal.process.file.full_path, principal.user.email_addresses, security_result.rule_name
  • principal.asset.asset_id, principal.process.file.full_path, principal.user.employee_id, security_result.rule_name
  • principal.asset.asset_id, principal.process.file.full_path, principal.user.product_object_id, security_result.rule_name
  • principal.asset.asset_id, principal.process.file.full_path, principal.user.userid, security_result.rule_name
  • principal.asset.asset_id, principal.process.file.full_path, principal.user.windows_sid, security_result.rule_name
  • principal.asset.asset_id, principal.process.file.full_path, security_result.rule_name
  • principal.asset.asset_id, principal.process.file.sha256, principal.user.email_addresses, security_result.rule_name
  • principal.asset.asset_id, principal.process.file.sha256, principal.user.employee_id, security_result.rule_name
  • principal.asset.asset_id, principal.process.file.sha256, principal.user.product_object_id, security_result.rule_name
  • principal.asset.asset_id, principal.process.file.sha256, principal.user.userid, security_result.rule_name
  • principal.asset.asset_id, principal.process.file.sha256, principal.user.windows_sid, security_result.rule_name
  • principal.asset.asset_id, security_result.rule_name
  • principal.asset.hostname, principal.process.file.full_path, principal.user.email_addresses, security_result.rule_name
  • principal.asset.hostname, principal.process.file.full_path, principal.user.employee_id, security_result.rule_name
  • principal.asset.hostname, principal.process.file.full_path, principal.user.product_object_id, security_result.rule_name
  • principal.asset.hostname, principal.process.file.full_path, principal.user.userid, security_result.rule_name
  • principal.asset.hostname, principal.process.file.full_path, principal.user.windows_sid, security_result.rule_name
  • principal.asset.hostname, principal.process.file.full_path, security_result.rule_name
  • principal.asset.hostname, principal.process.file.sha256, principal.user.email_addresses, security_result.rule_name
  • principal.asset.hostname, principal.process.file.sha256, principal.user.employee_id, security_result.rule_name
  • principal.asset.hostname, principal.process.file.sha256, principal.user.product_object_id, security_result.rule_name
  • principal.asset.hostname, principal.process.file.sha256, principal.user.userid, security_result.rule_name
  • principal.asset.hostname, principal.process.file.sha256, principal.user.windows_sid, security_result.rule_name
  • principal.asset.hostname, security_result.rule_name
  • principal.asset.ip, principal.process.file.full_path, principal.user.email_addresses, security_result.rule_name
  • principal.asset.ip, principal.process.file.full_path, principal.user.employee_id, security_result.rule_name
  • principal.asset.ip, principal.process.file.full_path, principal.user.product_object_id, security_result.rule_name
  • principal.asset.ip, principal.process.file.full_path, principal.user.userid, security_result.rule_name
  • principal.asset.ip, principal.process.file.full_path, principal.user.windows_sid, security_result.rule_name
  • principal.asset.ip, principal.process.file.full_path, security_result.rule_name
  • principal.asset.ip, principal.process.file.sha256, principal.user.email_addresses, security_result.rule_name
  • principal.asset.ip, principal.process.file.sha256, principal.user.employee_id, security_result.rule_name
  • principal.asset.ip, principal.process.file.sha256, principal.user.product_object_id, security_result.rule_name
  • principal.asset.ip, principal.process.file.sha256, principal.user.userid, security_result.rule_name
  • principal.asset.ip, principal.process.file.sha256, principal.user.windows_sid, security_result.rule_name
  • principal.asset.ip, security_result.rule_name
  • principal.asset.mac, principal.process.file.full_path, principal.user.email_addresses, security_result.rule_name
  • principal.asset.mac, principal.process.file.full_path, principal.user.employee_id, security_result.rule_name
  • principal.asset.mac, principal.process.file.full_path, principal.user.product_object_id, security_result.rule_name
  • principal.asset.mac, principal.process.file.full_path, principal.user.userid, security_result.rule_name
  • principal.asset.mac, principal.process.file.full_path, principal.user.windows_sid, security_result.rule_name
  • principal.asset.mac, principal.process.file.full_path, security_result.rule_name
  • principal.asset.mac, principal.process.file.sha256, principal.user.email_addresses, security_result.rule_name
  • principal.asset.mac, principal.process.file.sha256, principal.user.employee_id, security_result.rule_name
  • principal.asset.mac, principal.process.file.sha256, principal.user.product_object_id, security_result.rule_name
  • principal.asset.mac, principal.process.file.sha256, principal.user.userid, security_result.rule_name
  • principal.asset.mac, principal.process.file.sha256, principal.user.windows_sid, security_result.rule_name
  • principal.asset.mac, security_result.rule_name
  • principal.asset.product_object_id, principal.process.file.full_path, principal.user.email_addresses, security_result.rule_name
  • principal.asset.product_object_id, principal.process.file.full_path, principal.user.employee_id, security_result.rule_name
  • principal.asset.product_object_id, principal.process.file.full_path, principal.user.product_object_id, security_result.rule_name
  • principal.asset.product_object_id, principal.process.file.full_path, principal.user.userid, security_result.rule_name
  • principal.asset.product_object_id, principal.process.file.full_path, principal.user.windows_sid, security_result.rule_name
  • principal.asset.product_object_id, principal.process.file.full_path, security_result.rule_name
  • principal.asset.product_object_id, principal.process.file.sha256, principal.user.email_addresses, security_result.rule_name
  • principal.asset.product_object_id, principal.process.file.sha256, principal.user.employee_id, security_result.rule_name
  • principal.asset.product_object_id, principal.process.file.sha256, principal.user.product_object_id, security_result.rule_name
  • principal.asset.product_object_id, principal.process.file.sha256, principal.user.userid, security_result.rule_name
  • principal.asset.product_object_id, principal.process.file.sha256, principal.user.windows_sid, security_result.rule_name
  • principal.asset.product_object_id, security_result.rule_name

Intentos de autenticación

metrics.auth_attempts_total procesa previamente los valores históricos para eventos UDM con un USER_LOGIN event type.

Además, metrics.auth_attempts_success requiere que el evento tenga, al menos, un SecurityResult.Action de ALLOW.

metrics.auth_attempts_fail requiere, en cambio, que ninguno de los SecurityResult.Actions fueron ALLOW.

La lista completa de los campos de UDM disponibles como filtros

  • principal.asset.asset_id
  • principal.asset.asset_id, target.asset.asset_id
  • principal.asset.asset_id, target.asset.hostname
  • principal.asset.asset_id, target.asset.ip
  • principal.asset.asset_id, target.asset.mac
  • principal.asset.asset_id, target.asset.product_object_id
  • principal.asset.hostname
  • principal.asset.hostname, target.asset.asset_id
  • principal.asset.hostname, target.asset.hostname
  • principal.asset.hostname, target.asset.ip
  • principal.asset.hostname, target.asset.mac
  • principal.asset.hostname, target.asset.product_object_id
  • principal.asset.ip
  • principal.asset.ip, target.asset.asset_id
  • principal.asset.ip, target.asset.hostname
  • principal.asset.ip, target.asset.ip
  • principal.asset.ip, target.asset.mac
  • principal.asset.ip, target.asset.product_object_id
  • principal.asset.mac
  • principal.asset.mac, target.asset.asset_id
  • principal.asset.mac, target.asset.hostname
  • principal.asset.mac, target.asset.ip
  • principal.asset.mac, target.asset.mac
  • principal.asset.mac, target.asset.product_object_id
  • principal.asset.product_object_id
  • principal.asset.product_object_id, target.asset.asset_id
  • principal.asset.product_object_id, target.asset.hostname
  • principal.asset.product_object_id, target.asset.ip
  • principal.asset.product_object_id, target.asset.mac
  • principal.asset.product_object_id, target.asset.product_object_id
  • principal.user.email_addresses
  • principal.user.email_addresses, target.asset.asset_id
  • principal.user.email_addresses, target.asset.hostname
  • principal.user.email_addresses, target.asset.ip
  • principal.user.email_addresses, target.asset.mac
  • principal.user.email_addresses, target.asset.product_object_id
  • principal.user.employee_id
  • principal.user.employee_id, target.asset.asset_id
  • principal.user.employee_id, target.asset.hostname
  • principal.user.employee_id, target.asset.ip
  • principal.user.employee_id, target.asset.mac
  • principal.user.employee_id, target.asset.product_object_id
  • principal.user.product_object_id
  • principal.user.product_object_id, target.asset.asset_id
  • principal.user.product_object_id, target.asset.hostname
  • principal.user.product_object_id, target.asset.ip
  • principal.user.product_object_id, target.asset.mac
  • principal.user.product_object_id, target.asset.product_object_id
  • principal.user.userid
  • principal.user.userid, target.asset.asset_id
  • principal.user.userid, target.asset.hostname
  • principal.user.userid, target.asset.ip
  • principal.user.userid, target.asset.mac
  • principal.user.userid, target.asset.product_object_id
  • principal.user.windows_sid
  • principal.user.windows_sid, target.asset.asset_id
  • principal.user.windows_sid, target.asset.hostname
  • principal.user.windows_sid, target.asset.ip
  • principal.user.windows_sid, target.asset.mac
  • principal.user.windows_sid, target.asset.product_object_id
  • target.application
  • target.user.email_addresses
  • target.user.email_addresses, network.tls.client.certificate.sha256
  • target.user.email_addresses, principal.ip_geo_artifact.location.country_or_region
  • target.user.email_addresses, principal.ip_geo_artifact.network.organization_name
  • target.user.email_addresses, target.application
  • target.user.employee_id
  • target.user.employee_id, network.tls.client.certificate.sha256
  • target.user.employee_id, principal.ip_geo_artifact.location.country_or_region
  • target.user.employee_id, principal.ip_geo_artifact.network.organization_name
  • target.user.employee_id, target.application
  • target.user.product_object_id
  • target.user.product_object_id, network.tls.client.certificate.sha256
  • target.user.product_object_id, principal.ip_geo_artifact.location.country_or_region
  • target.user.product_object_id, principal.ip_geo_artifact.network.organization_name
  • target.user.product_object_id, target.application
  • target.user.userid
  • target.user.userid, network.tls.client.certificate.sha256
  • target.user.userid, principal.ip_geo_artifact.location.country_or_region
  • target.user.userid, principal.ip_geo_artifact.network.organization_name
  • target.user.userid, target.application
  • target.user.windows_sid
  • target.user.windows_sid, network.tls.client.certificate.sha256
  • target.user.windows_sid, principal.ip_geo_artifact.location.country_or_region
  • target.user.windows_sid, principal.ip_geo_artifact.network.organization_name
  • target.user.windows_sid, target.application

metrics.auth_attempts_total tiene campos UDM adicionales disponibles como filtros

  • target.application, target.asset.asset_id
  • target.application, target.asset.hostname
  • target.application, target.asset.ip
  • target.application, target.asset.mac
  • target.application, target.asset.product_object_id

metrics.auth_attempts_success tiene campos UDM adicionales disponibles como filtros

  • network.http.user_agent
  • principal.asset.asset_id, metadata.event_type
  • principal.asset.hostname, metadata.event_type
  • principal.asset.ip, metadata.event_type
  • principal.asset.mac, metadata.event_type
  • principal.asset.product_object_id, metadata.event_type

Bytes de salida de DNS

metrics.dns_bytes_outbound procesa con anterioridad los valores históricos de los eventos UDM en los que network.sent_bytes es mayor que 0, y el puerto de destino es 53/udp, 53/tcp o 3000/tcp. network.sent_bytes es disponible como value_sum.

La lista completa de los campos de UDM disponibles como filtros

  • principal.asset.asset_id
  • principal.asset.asset_id, target.ip
  • principal.asset.hostname
  • principal.asset.hostname, target.ip
  • principal.asset.ip
  • principal.asset.ip, target.ip
  • principal.asset.mac
  • principal.asset.mac, target.ip
  • principal.asset.product_object_id
  • principal.asset.product_object_id, target.ip
  • principal.user.email_addresses
  • principal.user.email_addresses, target.ip
  • principal.user.employee_id
  • principal.user.employee_id, target.ip
  • principal.user.product_object_id
  • principal.user.product_object_id, target.ip
  • principal.user.userid
  • principal.user.userid, target.ip
  • principal.user.windows_sid
  • principal.user.windows_sid, target.ip
  • target.ip

Consultas de DNS

metrics.dns_queries_total procesa con anterioridad los valores históricos de los eventos UDM que tienen un valor en network.dns.id.

Además, metrics.dns_queries_success requiere que el elemento network.dns.response_code fue 0 (NoError).

metrics.dns_queries_fail solo considera los eventos con una network.dns.response_code superior a 0.

La lista completa de los campos de UDM disponibles como filtros

  • principal.asset.asset_id
  • principal.asset.asset_id, network.dns_domain
  • principal.asset.asset_id, network.dns.questions.type
  • principal.asset.hostname
  • principal.asset.hostname, network.dns_domain
  • principal.asset.hostname, network.dns.questions.type
  • principal.asset.ip
  • principal.asset.ip, network.dns_domain
  • principal.asset.ip, network.dns.questions.type
  • principal.asset.mac
  • principal.asset.mac, network.dns_domain
  • principal.asset.mac, network.dns.questions.type
  • principal.asset.product_object_id
  • principal.asset.product_object_id, network.dns_domain
  • principal.asset.product_object_id, network.dns.questions.type
  • principal.user.email_addresses
  • principal.user.email_addresses, network.dns_domain
  • principal.user.email_addresses, network.dns.questions.type
  • principal.user.employee_id
  • principal.user.employee_id, network.dns_domain
  • principal.user.employee_id, network.dns.questions.type
  • principal.user.product_object_id
  • principal.user.product_object_id, network.dns_domain
  • principal.user.product_object_id, network.dns.questions.type
  • principal.user.userid
  • principal.user.userid, network.dns_domain
  • principal.user.userid, network.dns.questions.type
  • principal.user.windows_sid
  • principal.user.windows_sid, network.dns_domain
  • principal.user.windows_sid, network.dns.questions.type

Ejecuciones de archivos

metrics.file_executions_total procesa con anterioridad los valores históricos para eventos UDM con un PROCESS_LAUNCH event type.

Además, metrics.file_executions_success requiere que el evento tenga al menos uno SecurityResult.Action de ALLOW.

En cambio, metrics.file_executions_fail requiere que ninguna de las SecurityResult.Actions fueron ALLOW.

La lista completa de los campos de UDM disponibles como filtros

  • metadata.event_type, principal.process.file.sha256
  • metadata.event_type, principal.asset.asset_id, principal.process.file.sha256
  • metadata.event_type, principal.asset.hostname, principal.process.file.sha256
  • metadata.event_type, principal.asset.ip, principal.process.file.sha256
  • metadata.event_type, principal.asset.mac, principal.process.file.sha256
  • metadata.event_type, principal.asset.product_object_id, principal.process.file.sha256
  • metadata.event_type, principal.user.email_addresses, principal.process.file.sha256
  • metadata.event_type, principal.user.employee_id, principal.process.file.sha256
  • metadata.event_type, principal.user.product_object_id, principal.process.file.sha256
  • metadata.event_type, principal.user.userid, principal.process.file.sha256
  • metadata.event_type, principal.user.windows_sid, principal.process.file.sha256

Consultas HTTP

metrics.http_queries_total procesa con anterioridad los valores históricos de los eventos UDM que tienen un valor en network.http.method.

Además, metrics.http_queries_success requiere que network.http.response_code es menor que 400.

metrics.http_queries_fail solo considera los eventos con una network.http.response_code es menor o igual que 400.

La lista completa de los campos de UDM disponibles como filtros

  • principal.asset.asset_id
  • principal.asset.asset_id, network.http.user_agent
  • principal.asset.hostname
  • principal.asset.hostname, network.http.user_agent
  • principal.asset.ip
  • principal.asset.ip, network.http.user_agent
  • principal.asset.mac
  • principal.asset.mac, network.http.user_agent
  • principal.asset.product_object_id
  • principal.asset.product_object_id, network.http.user_agent
  • principal.user.email_addresses
  • principal.user.email_addresses, network.http.user_agent
  • principal.user.employee_id
  • principal.user.employee_id, network.http.user_agent
  • principal.user.product_object_id
  • principal.user.product_object_id, network.http.user_agent
  • principal.user.userid
  • principal.user.userid, network.http.user_agent
  • principal.user.windows_sid
  • principal.user.windows_sid, network.http.user_agent

Bytes de red

metrics.network_bytes_inbound procesa con anterioridad los valores históricos para eventos UDM que tienen un valor distinto de cero para network.received_bytes, y pone ese campo a disposición como value_sum.

metrics.network_bytes_outbound requiere un valor distinto de cero para network.sent_bytes y hace que ese campo esté disponible como value_sum.

metrics.network_bytes_total considera los eventos que tienen un valor distinto de cero para cualquiera de los dos network.received_bytes o network.sent_bytes (o ambos) y haz que la suma de esos dos campos esté disponible como value_sum.

La lista completa de los campos de UDM disponibles como filtros

  • principal.asset.asset_id
  • principal.asset.asset_id, principal.ip_geo_artifact.location.country_or_region
  • principal.asset.asset_id, security_result.category
  • principal.asset.asset_id, target.ip_geo_artifact.network.organization_name
  • principal.asset.hostname
  • principal.asset.hostname, principal.ip_geo_artifact.location.country_or_region
  • principal.asset.hostname, security_result.category
  • principal.asset.hostname, target.ip_geo_artifact.network.organization_name
  • principal.asset.ip
  • principal.asset.ip, principal.ip_geo_artifact.location.country_or_region
  • principal.asset.ip, security_result.category
  • principal.asset.ip, target.ip_geo_artifact.network.organization_name
  • principal.asset.mac
  • principal.asset.mac, principal.ip_geo_artifact.location.country_or_region
  • principal.asset.mac, security_result.category
  • principal.asset.mac, target.ip_geo_artifact.network.organization_name
  • principal.asset.product_object_id
  • principal.asset.product_object_id, principal.ip_geo_artifact.location.country_or_region
  • principal.asset.product_object_id, security_result.category
  • principal.asset.product_object_id, target.ip_geo_artifact.network.organization_name
  • principal.user.email_addresses
  • principal.user.email_addresses, principal.ip_geo_artifact.location.country_or_region
  • principal.user.email_addresses, security_result.category
  • principal.user.email_addresses, target.ip_geo_artifact.network.organization_name
  • principal.user.employee_id
  • principal.user.employee_id, principal.ip_geo_artifact.location.country_or_region
  • principal.user.employee_id, security_result.category
  • principal.user.employee_id, target.ip_geo_artifact.network.organization_name
  • principal.user.product_object_id
  • principal.user.product_object_id, principal.ip_geo_artifact.location.country_or_region
  • principal.user.product_object_id, security_result.category
  • principal.user.product_object_id, target.ip_geo_artifact.network.organization_name
  • principal.user.userid
  • principal.user.userid, principal.ip_geo_artifact.location.country_or_region
  • principal.user.userid, security_result.category
  • principal.user.userid, target.ip_geo_artifact.network.organization_name
  • principal.user.windows_sid
  • principal.user.windows_sid, principal.ip_geo_artifact.location.country_or_region
  • principal.user.windows_sid, security_result.category
  • principal.user.windows_sid, target.ip_geo_artifact.network.organization_name

Creación de recursos

metrics.resource_creation_total procesa con anterioridad los valores históricos para eventos UDM con un RESOURCE_CREATION event type.

Además, metrics.resource_creation_success requiere que el evento tenga al menos uno SecurityResult.Action de ALLOW.

La lista completa de los campos de UDM disponibles como filtros

  • target.user, metadata.vendor_name, metadata.product_name
  • principal.user, metadata.vendor_name, metadata.product_name
  • principal.user, principal.ip, metadata.vendor_name, metadata.product_name
  • principal.user, target.application, metadata.vendor_name, metadata.product_name
  • target.resource.name, metadata.vendor_name, metadata.product_name
  • principal.user, target.resource.name, metadata.vendor_name, metadata.product_name
  • principal.user, target.location.name, metadata.vendor_name, metadata.product_name

Eliminación de recursos

metrics.resource_deletion_success procesa con anterioridad los valores históricos para eventos UDM con un RESOURCE_DELETION event type y más requiere que el evento tenga al menos una SecurityResult.Actions de ALLOW.

La lista completa de los campos de UDM disponibles como filtros

  • target.user, metadata.vendor_name, metadata.product_name
  • principal.user, metadata.vendor_name, metadata.product_name
  • principal.user, principal.ip, metadata.vendor_name, metadata.product_name
  • principal.user, target.application, metadata.vendor_name, metadata.product_name
  • target.resource.name, metadata.vendor_name, metadata.product_name
  • principal.user, target.resource.name, metadata.vendor_name, metadata.product_name
  • principal.user, target.location.name, metadata.vendor_name, metadata.product_name

Lectura de recursos

metrics.resource_read_success procesa con anterioridad los valores históricos para eventos UDM con un RESOURCE_READ event type y más requiere que el evento tenga al menos una SecurityResult.Action de ALLOW.

En cambio, metrics.resource_read_fail requiere que ninguna de las SecurityResult.Actions son ALLOW.

La lista completa de los campos de UDM disponibles como filtros

  • target.user, metadata.vendor_name, metadata.product_name
  • principal.user, metadata.vendor_name, metadata.product_name
  • principal.user, principal.ip, metadata.vendor_name, metadata.product_name
  • principal.user, target.application, metadata.vendor_name, metadata.product_name
  • target.resource.name, metadata.vendor_name, metadata.product_name
  • principal.user, target.resource.name, metadata.vendor_name, metadata.product_name
  • principal.user, target.location.name, metadata.vendor_name, metadata.product_name

Limitaciones

Cuando crees reglas de YARA-L con métricas, ten en cuenta las siguientes limitaciones:

  • No puedes unir una métrica con un valor predeterminado ("" para la cadena y 0 para int).
  • Valores predeterminados:
    • Si no hay datos de métricas que correspondan a un evento, los valores de la función de métricas es 0.
    • Si en la detección hay un evento que no tiene datos de métrica, mediante min para agregar sobre la función podría mostrar 0.
    • Para verificar si hay datos sobre un evento, puedes usar las métricas Agregación num_metric_periods en ese mismo evento con los mismos filtros.
  • Las funciones de métricas solo se pueden usar en la sección de resultados.
  • Dado que las funciones de métricas solo se usan en la sección de resultados, deben como cualquier otro valor en las reglas con una sección de coincidencia.