grupo
group(field1, field2, field3, ...)
Descrição
Agrupe campos de um tipo semelhante em uma variável de marcador de posição.
Na pesquisa da UDM, os campos agrupados são usados para pesquisar em vários campos de um tipo semelhante. A função group é semelhante aos campos agrupados, mas permite selecionar quais campos você quer agrupados para acionar uma detecção. Você pode usar a função de grupo para coletar informações sobre uma entidade específica (por exemplo, um nome de host, um endereço IP ou um ID de usuário) em diferentes tipos de substantivo.
Tipo de parâmetro:
Event typeTipo de retorno:
Grouped event fields
Amostras de código
Exemplo: agregar e contar endereços IP
Agrupe todos os endereços IP e forneça uma contagem decrescente dos endereços IP mais prevalentes no período verificado.
$ip = group(principal.ip, about.ip, target.ip)
$ip != ""
match:
$ip
outcome:
$count = count_distinct(metadata.id)
order:
$count desc
Exemplo: contar eventos distintos para cada endereço IP
No exemplo a seguir, a função group() coleta todos os endereços IP encontrados nos campos principal.ip, target.ip e src.ip em todos os eventos que acionaram a detecção. Os endereços IP são adicionados à variável de marcador de posição $ip. Em seguida, a regra corresponde ao endereço IP e retorna uma contagem de eventos distintos para cada endereço IP exclusivo.
$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 |