grupo
group(field1, field2, field3, ...)
Descripción
Agrupa los campos de un tipo similar en una variable de marcador de posición.
En la búsqueda de UDM, se usan campos agrupados para buscar en varios campos de un tipo similar. La función de grupo es similar a los campos agrupados, excepto que te permite seleccionar qué campos deseas agrupar para activar una detección. Puedes usar la función group para recopilar información sobre una entidad específica (por ejemplo, un nombre de host, una dirección IP o un ID de usuario) en diferentes tipos de sustantivos.
Tipo de parámetro:
Event typeTipo de devolución:
Grouped event fields
Muestras de código
Ejemplo: Agrega y cuenta direcciones IP
Agrupa todas las direcciones IP y proporciona un recuento descendente de las direcciones IP más frecuentes en el período analizado.
$ip = group(principal.ip, about.ip, target.ip)
$ip != ""
match:
$ip
outcome:
$count = count_distinct(metadata.id)
order:
$count desc
Ejemplo: Recuento de eventos distintos para cada dirección IP
En el siguiente ejemplo, la función group() recopila todas las direcciones IP que se encuentran en los campos principal.ip, target.ip y src.ip en todos los eventos que activaron la detección. Luego, las direcciones IP se agregan a la variable de marcador de posición $ip. Luego, la regla hace coincidir la dirección IP y devuelve un recuento de los eventos distintos para cada dirección IP única.
$ip = group(detection.collection_elements.references.event.principal.ip, detection.collection_elements.references.event.target.ip, detection.collection_elements.references.event.src.ip)
$ip != ""
match:
$ip
outcome:
$count = count_distinct(detection.id)
order:
$count desc
// Detection1: principal.ip = 1.1.1.1
// Detection2: src.ip = 1.1.1.1, target.ip = 2.2.2.2
// Detection3: target.ip = 1.1.1.1
// Detection4: principal.ip = 2.2.2.2
Resultado:
$ip |
$count |
|---|---|
| 1.1.1.1 | 3 |
| 2.2.2.2 | 2 |