Crea reglas para el análisis de riesgos
En este documento, se describen los elementos principales de las nuevas funciones de sintaxis de YARA-L para Risk Analytics. Para obtener más información sobre YARA-L, consulta Sintaxis del lenguaje YARA-L 2.0.
Funciones de métricas de YARA-L
Las operaciones de seguridad de Google admiten 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. En todas las llamadas a función de ejemplo, se supone el uso en una regla de varios eventos.
Todas las reglas que usan la función de métricas se clasifican automáticamente como reglas de varios eventos, incluso si no tienen una sección de coincidencias y usan solo una variable de evento. Esto significa que se tendrán en cuenta para la cuota de reglas de varios eventos.
Parámetros de las funciones
Las funciones de métricas se pueden usar para reglas que realizan análisis de comportamiento de entidades.
Por ejemplo, la siguiente regla te indica la cantidad máxima de bytes diarios que envió una dirección IP específica en el último mes. La dirección IP específica se representa con 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 parámetros con nombre, que se pueden especificar en cualquier orden. Los parámetros son los siguientes:
Período
Es el tiempo durante el cual se combinan eventos de registro individuales en una sola observación. Los únicos valores permitidos son 1h
y 1d
.
Ventana
Es el período durante el cual las observaciones individuales se agregan en un solo valor, 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 la mayor cantidad de intentos de autenticación fallidos que se vieron 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 diarias y por hora para los tipos de detección first-seen
. Por ejemplo, la siguiente regla te indica si 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
En cada período, cada observación tiene una serie de métricas asociadas a ella.
Se debe seleccionar una de estas opciones para la agregación durante toda la ventana. Se admiten cinco tipos de metric
:
event_count_sum
: Es la cantidad de eventos de registro únicos en cada período.
first_seen
: Es la marca de tiempo de la primera vez que se vio un evento de registro coincidente dentro de cada período.
last_seen
: Es la marca de tiempo de la última vez que se vio un evento de registro coincidente dentro de cada período.
value_sum
: Representa la suma de la cantidad de bytes de todos los eventos de registro combinados dentro del período. Solo puedes usar este valor para las funciones de métricas con bytes
en el nombre.
num_unique_filter_values
: Métrica que Google Security Operations no calcula de forma previa, pero que se puede calcular durante la ejecución de la regla. Consulta Cómo contar métricas únicas para obtener más detalles y requisitos.
Agg
Qué agregación se aplica a la métrica. Las agregaciones se aplican durante todo el período (p.ej., el valor diario más alto de los últimos 30 días). Los valores permitidos son los siguientes:
avg
: Es el valor promedio por período. Esta es una media estadística, que no
incluye valores de cero.
max
: Es el valor más alto por período.
min
: Es el valor más bajo por período.
num_metric_periods
: Es la cantidad de períodos dentro del período que tuvieron un valor de métrica distinto de cero.
stddev
: Es la desviación estándar del valor por período. Esta es una desviación estándar estadística que no incluye valores cero.
sum
: Es la suma de cada valor por período en toda la ventana.
Por ejemplo, la siguiente regla te indica la cantidad promedio de intentos de autenticación fallidos que se observaron para un usuario específico (Alice) en un día determinado durante 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 correctas tuvo 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 te indica si un usuario específico accedió correctamente 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 la última vez que un usuario específico accedió con éxito:
$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 te indica la cantidad máxima de bytes que envió un usuario en 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
))
Filtro
Los filtros permiten ordenar las métricas antes de la agregación con un valor en la métrica previamente procesada (consulta los valores en Métrica). Los filtros pueden ser cualquier expresión de eventos válida (una sola línea en la sección del evento) que no contenga campos ni marcadores de posición de eventos. Las únicas variables que se pueden incluir en esta condición son los tipos de métricas.
La siguiente regla solo incluye métricas en las que value_sum > 10 AND
event_count_sum > 2
cumple con las siguientes condiciones:
$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 no válidos de filtros
// 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 por 1, 2 o 3 campos de UDM, según la función. Para obtener más información, consulta Funciones.
Los siguientes tipos de campos de UDM se usan para las funciones de métricas:
- Dimensiones: (obligatorio) En esta documentación, se enumeran las diferentes combinaciones. No puedes unir una métrica con un valor predeterminado (
""
para cadena y0
para int). - Espacios de nombres (opcional): Solo puedes usar espacios de nombres para las entidades que especifiques en las dimensiones. Por ejemplo, si usas
principal.asset.hostname filter
, también puedes usarprincipal.namespace filter
. Si no incluyes un filtro de espacio de nombres, los datos de todos los espacios de nombres se agrupan juntos. Puedes usar un valor predeterminado como filtro de espacio de nombres.
Cálculos de ventanas
Google Security Operations calcula las métricas con un período de métricas diario o por hora.
Períodos diarios
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 que se generaron y que no se superponen con el intervalo de tiempo de la regla. El cálculo de las métricas diarias puede tardar hasta 6 horas en completarse y no comienza hasta el final del día en UTC. Los datos de métricas del día anterior estarán disponibles a las 6:00 a.m. UTC o antes todos los días.
Por ejemplo, para una regla que se ejecuta en datos de eventos del 31/10/2023 a las 4:00 a.m. (UTC) al 31/10/2023 a las 7:00 a.m. (UTC), es probable que se hayan generado las métricas diarias del 31/10/2023, por lo que el cálculo de métricas usará los datos del 1/10/2023 al 30/10/2023 (inclusive). En cambio, para una regla que se ejecuta en datos de eventos del 31/10/2023 a las 1:00 a.m. (UTC) al 31/10/2023 a las 3:00 a.m. (UTC), es probable que no se hayan generado las métricas diarias del 30/10/2023, por lo que el cálculo de métricas usará los datos del 30/9/2023 al 29/10/2023 (inclusive).
Ventana today
por hora
La ventana de métricas por hora se calcula de manera diferente a la de las métricas diarias. La ventana de métricas por hora de today
no es un tamaño estático como la ventana de 30d
para las métricas diarias. La ventana de métricas por hora today
completa la mayor cantidad posible de datos entre el final de la ventana diaria y el inicio de la ventana de tiempo de la regla.
Por ejemplo, para una regla que se ejecuta en 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á los datos del 31/10/2023 a las 00:00:00 UTC al 31/10/2023 a las 4:00:00 UTC.
Cómo contar métricas únicas
Existe un tipo especial de métrica num_unique_filter_values
que Google Security Operations no calcula previamente, sino que se calcula durante la ejecución de una regla. Para ello, se agregan datos sobre una dimensión existente en una métrica previamente calculada. 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
calculadas previamente en las dimensiones target.user.userid
y principal.ip_geo_artifact.location.country_or_region
realizando una agregación única de recuento en la última dimensión.
En la siguiente regla de ejemplo, se cuentan las 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 la siguiente limitación:
- El cálculo del recuento de métricas únicas solo se puede agregar en 1 dimensión de filtro. Esto se indica con el token de comodín
*
como el valor del filtro.
Funciones
En esta sección, se incluye documentación sobre las funciones de métricas específicas que admite Google Security Operations.
Eventos de alerta
metrics.alert_event_name_count
calcula previamente los valores históricos de los eventos de la UDM que generaron alertas de Carbon Black, CrowdStrike Falcon, Microsoft Graph API Alerts o Microsoft Sentinel.
La lista completa de 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
calcula previamente los valores históricos de los eventos de la AUA con un USER_LOGIN
event
type
.
Además, metrics.auth_attempts_success
requiere que el evento tenga al menos un SecurityResult.Action
de ALLOW
.
En cambio, metrics.auth_attempts_fail
requiere que ninguno de los SecurityResult.Actions
sea ALLOW
.
La lista completa de 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 de 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 de 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 DNS salientes
metrics.dns_bytes_outbound
calcula previamente los valores históricos de los eventos de la AUA 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
está disponible como value_sum
.
La lista completa de 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
calcula previamente los valores históricos de los eventos de la AUA que tienen un valor en network
.dns.id
.
Además, metrics.dns_queries_success
requiere que network
.dns.response_code
era 0
(NoError
).
metrics.dns_queries_fail
solo considera eventos con un network
.dns.response_code
es mayor que 0
.
La lista completa de 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
calcula previamente los valores históricos de los eventos de la AUA con un PROCESS_LAUNCH
event
type
.
Además, metrics.file_executions_success
requiere que el evento tenga al menos un SecurityResult.Action
de ALLOW
.
En cambio, metrics.file_executions_fail
requiere que ninguno de los SecurityResult.Actions
sea ALLOW
.
La lista completa de 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
Búsquedas HTTP
metrics.http_queries_total
calcula previamente los valores históricos de los eventos de la AUA que tienen un valor en network
.http.method
.
metrics.http_queries_success
también requiere que network
.http.response_code
es menor que 400.
metrics.http_queries_fail
solo considera eventos con un network
.http.response_code
es menor o igual que 400.
La lista completa de 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
calcula previamente los valores históricos de los eventos de la AUA 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 pone ese campo a disposición como value_sum
.
metrics.network_bytes_total
considera los eventos que tienen un valor distinto de cero para network
.received_bytes
o network
.sent_bytes
(o ambos) y pone la suma de esos dos campos a disposición como value_sum
.
La lista completa de 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
calcula previamente los valores históricos de los eventos de la AUA con un RESOURCE_CREATION
event
type
.
Además, metrics.resource_creation_success
requiere que el evento tenga al menos un SecurityResult.Action
de ALLOW
.
La lista completa de campos de UDM disponibles como filtros
principal.user.email_addresses
,metadata.vendor_name
,metadata.product_name
principal.user.employee_id
,metadata.vendor_name
,metadata.product_name
principal.user.product_object_id
,metadata.vendor_name
,metadata.product_name
principal.user.userid
,metadata.vendor_name
,metadata.product_name
principal.user.windows_sid
,metadata.vendor_name
,metadata.product_name
principal.user.email_addresses
,principal.ip
,metadata.vendor_name
,metadata.product_name
principal.user.employee_id
,principal.ip
,metadata.vendor_name
,metadata.product_name
principal.user.product_object_id
,principal.ip
,metadata.vendor_name
,metadata.product_name
principal.user.userid
,principal.ip
,metadata.vendor_name
,metadata.product_name
principal.user.windows_sid
,principal.ip
,metadata.vendor_name
,metadata.product_name
principal.user.email_addresses
,target.application
,metadata.vendor_name
,metadata.product_name
principal.user.employee_id
,target.application
,metadata.vendor_name
,metadata.product_name
principal.user.product_object_id
,target.application
,metadata.vendor_name
,metadata.product_name
principal.user.userid
,target.application
,metadata.vendor_name
,metadata.product_name
principal.user.windows_sid
,target.application
,metadata.vendor_name
,metadata.product_name
principal.user.email_addresses
,target.application
,target.location.name
,metadata.vendor_name
,metadata.product_name
principal.user.employee_id
,target.application
,target.location.name
,metadata.vendor_name
,metadata.product_name
principal.user.product_object_id
,target.application
,target.location.name
,metadata.vendor_name
,metadata.product_name
principal.user.userid
,target.application
,target.location.name
,metadata.vendor_name
,metadata.product_name
principal.user.windows_sid
,target.application
,target.location.name
,metadata.vendor_name
,metadata.product_name
principal.user.email_addresses
,target.resource.name
,metadata.vendor_name
,metadata.product_name
principal.user.employee_id
,target.resource.name
,metadata.vendor_name
,metadata.product_name
principal.user.product_object_id
,target.resource.name
,metadata.vendor_name
,metadata.product_name
principal.user.userid
,target.resource.name
,metadata.vendor_name
,metadata.product_name
principal.user.windows_sid
,target.resource.name
,metadata.vendor_name
,metadata.product_name
principal.user.email_addresses
,target.resource.name
,target.resource_type
,metadata.vendor_name
,metadata.product_name
principal.user.employee_id
,target.resource.name
,target.resource_type
,metadata.vendor_name
,metadata.product_name
principal.user.product_object_id
,target.resource.name
,target.resource_type
,metadata.vendor_name
,metadata.product_name
principal.user.userid
,target.resource.name
,target.resource_type
,metadata.vendor_name
,metadata.product_name
principal.user.windows_sid
,target.resource.name
,target.resource_type
,metadata.vendor_name
,metadata.product_name
target.user.email_addresses
,metadata.vendor_name
,metadata.product_name
target.user.employee_id
,metadata.vendor_name
,metadata.product_name
target.user.product_object_id
,metadata.vendor_name
,metadata.product_name
target.user.userid
,metadata.vendor_name
,metadata.product_name
target.user.windows_sid
,metadata.vendor_name
,metadata.product_name
Eliminación de recursos
metrics.resource_deletion_success
calcula previamente los valores históricos de los eventos de la AUA con un RESOURCE_DELETION
event
type
y, además, requiere que el evento tenga al menos un SecurityResult.Actions
de ALLOW
.
La lista completa de campos de UDM disponibles como filtros
principal.user.email_addresses
,metadata.vendor_name
,metadata.product_name
principal.user.employee_id
,metadata.vendor_name
,metadata.product_name
principal.user.product_object_id
,metadata.vendor_name
,metadata.product_name
principal.user.userid
,metadata.vendor_name
,metadata.product_name
principal.user.windows_sid
,metadata.vendor_name
,metadata.product_name
principal.user.email_addresses
,principal.ip
,metadata.vendor_name
,metadata.product_name
principal.user.employee_id
,principal.ip
,metadata.vendor_name
,metadata.product_name
principal.user.product_object_id
,principal.ip
,metadata.vendor_name
,metadata.product_name
principal.user.userid
,principal.ip
,metadata.vendor_name
,metadata.product_name
principal.user.windows_sid
,principal.ip
,metadata.vendor_name
,metadata.product_name
principal.user.email_addresses
,target.application
,metadata.vendor_name
,metadata.product_name
principal.user.employee_id
,target.application
,metadata.vendor_name
,metadata.product_name
principal.user.product_object_id
,target.application
,metadata.vendor_name
,metadata.product_name
principal.user.userid
,target.application
,metadata.vendor_name
,metadata.product_name
principal.user.windows_sid
,target.application
,metadata.vendor_name
,metadata.product_name
principal.user.email_addresses
,target.application
,target.location.name
,metadata.vendor_name
,metadata.product_name
principal.user.employee_id
,target.application
,target.location.name
,metadata.vendor_name
,metadata.product_name
principal.user.product_object_id
,target.application
,target.location.name
,metadata.vendor_name
,metadata.product_name
principal.user.userid
,target.application
,target.location.name
,metadata.vendor_name
,metadata.product_name
principal.user.windows_sid
,target.application
,target.location.name
,metadata.vendor_name
,metadata.product_name
principal.user.email_addresses
,target.resource.name
,metadata.vendor_name
,metadata.product_name
principal.user.employee_id
,target.resource.name
,metadata.vendor_name
,metadata.product_name
principal.user.product_object_id
,target.resource.name
,metadata.vendor_name
,metadata.product_name
principal.user.userid
,target.resource.name
,metadata.vendor_name
,metadata.product_name
principal.user.windows_sid
,target.resource.name
,metadata.vendor_name
,metadata.product_name
principal.user.email_addresses
,target.resource.name
,target.resource_type
,metadata.vendor_name
,metadata.product_name
principal.user.employee_id
,target.resource.name
,target.resource_type
,metadata.vendor_name
,metadata.product_name
principal.user.product_object_id
,target.resource.name
,target.resource_type
,metadata.vendor_name
,metadata.product_name
principal.user.userid
,target.resource.name
,target.resource_type
,metadata.vendor_name
,metadata.product_name
principal.user.windows_sid
,target.resource.name
,target.resource_type
,metadata.vendor_name
,metadata.product_name
target.user.email_addresses
,metadata.vendor_name
,metadata.product_name
target.user.employee_id
,metadata.vendor_name
,metadata.product_name
target.user.product_object_id
,metadata.vendor_name
,metadata.product_name
target.user.userid
,metadata.vendor_name
,metadata.product_name
target.user.windows_sid
,metadata.vendor_name
,metadata.product_name
Lectura de recursos
metrics.resource_read_success
calcula previamente los valores históricos de los eventos de la AUA con un RESOURCE_READ
event
type
y, además, requiere que el evento tenga al menos un SecurityResult.Action
de ALLOW
.
En cambio, metrics.resource_read_fail
requiere que ninguno de los SecurityResult.Actions
sea ALLOW
.
La lista completa de campos de UDM disponibles como filtros
principal.user.email_addresses
,metadata.vendor_name
,metadata.product_name
principal.user.employee_id
,metadata.vendor_name
,metadata.product_name
principal.user.product_object_id
,metadata.vendor_name
,metadata.product_name
principal.user.userid
,metadata.vendor_name
,metadata.product_name
principal.user.windows_sid
,metadata.vendor_name
,metadata.product_name
principal.user.email_addresses
,principal.ip
,metadata.vendor_name
,metadata.product_name
principal.user.employee_id
,principal.ip
,metadata.vendor_name
,metadata.product_name
principal.user.product_object_id
,principal.ip
,metadata.vendor_name
,metadata.product_name
principal.user.userid
,principal.ip
,metadata.vendor_name
,metadata.product_name
principal.user.windows_sid
,principal.ip
,metadata.vendor_name
,metadata.product_name
principal.user.email_addresses
,target.application
,metadata.vendor_name
,metadata.product_name
principal.user.employee_id
,target.application
,metadata.vendor_name
,metadata.product_name
principal.user.product_object_id
,target.application
,metadata.vendor_name
,metadata.product_name
principal.user.userid
,target.application
,metadata.vendor_name
,metadata.product_name
principal.user.windows_sid
,target.application
,metadata.vendor_name
,metadata.product_name
principal.user.email_addresses
,target.application
,target.location.name
,metadata.vendor_name
,metadata.product_name
principal.user.employee_id
,target.application
,target.location.name
,metadata.vendor_name
,metadata.product_name
principal.user.product_object_id
,target.application
,target.location.name
,metadata.vendor_name
,metadata.product_name
principal.user.userid
,target.application
,target.location.name
,metadata.vendor_name
,metadata.product_name
principal.user.windows_sid
,target.application
,target.location.name
,metadata.vendor_name
,metadata.product_name
principal.user.email_addresses
,target.resource.name
,metadata.vendor_name
,metadata.product_name
principal.user.employee_id
,target.resource.name
,metadata.vendor_name
,metadata.product_name
principal.user.product_object_id
,target.resource.name
,metadata.vendor_name
,metadata.product_name
principal.user.userid
,target.resource.name
,metadata.vendor_name
,metadata.product_name
principal.user.windows_sid
,target.resource.name
,metadata.vendor_name
,metadata.product_name
principal.user.email_addresses
,target.resource.name
,target.resource_type
,metadata.vendor_name
,metadata.product_name
principal.user.employee_id
,target.resource.name
,target.resource_type
,metadata.vendor_name
,metadata.product_name
principal.user.product_object_id
,target.resource.name
,target.resource_type
,metadata.vendor_name
,metadata.product_name
principal.user.userid
,target.resource.name
,target.resource_type
,metadata.vendor_name
,metadata.product_name
principal.user.windows_sid
,target.resource.name
,target.resource_type
,metadata.vendor_name
,metadata.product_name
target.user.email_addresses
,metadata.vendor_name
,metadata.product_name
target.user.employee_id
,metadata.vendor_name
,metadata.product_name
target.user.product_object_id
,metadata.vendor_name
,metadata.product_name
target.user.userid
,metadata.vendor_name
,metadata.product_name
target.user.windows_sid
,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 cadenas y0
para int). - Valores predeterminados:
- Si no hay datos de métricas que correspondan a un evento, el valor que muestra la función de métricas es 0.
- Si hay un evento en la detección que no tiene datos de métricas, usar
min
para agregar la función podría mostrar 0. - Para verificar si hay datos para un evento, puedes usar la agregación de métricas
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, se deben agregar como cualquier otro valor en las reglas con una sección de coincidencia.