Criar regras para análise de dados de risco

Este documento descreve os principais elementos dos novos recursos de sintaxe YARA-L para Análise de dados de risco. Para mais informações sobre a YARA-L, consulte Linguagem YARA-L 2.0 Sintaxe.

Funções de métricas da YARA-L

As Operações de segurança do Google oferecem suporte a várias funções de métricas, que podem agregar grandes quantidades de dados históricos.

A função de métricas só pode ser usada na seção de resultados. Todos os exemplos chamadas de função presumem o uso em uma regra de vários eventos.

Todas as regras que usam a função de métricas são categorizadas automaticamente como regras de vários eventos, mesmo que elas não tenham uma seção de correspondência e usem apenas uma variável de evento. Isso significa que elas serão contabilizadas na cota de regras de vários eventos.

Parâmetros de função

As funções de métricas podem ser usadas para regras que executam comportamentos análise de dados em nuvem.

Por exemplo, a regra a seguir informa o número máximo de bytes diários que um endereço IP específico enviado no último mês. O endereço IP específico é representada por uma variável de marcador, $ip neste exemplo. Para mais informações sobre variáveis de marcadores de posição, consulte Declarações de variáveis.

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

Devido ao grande número de argumentos usados nessas funções, elas usam nomes que podem ser especificados em qualquer ordem. Os parâmetros são os seguintes:

Período

O período em que eventos de registro individuais são combinados em um único observação Os únicos valores permitidos são 1h e 1d.

Janela

O período de tempo durante o qual as observações individuais são agregadas em um um valor único, como a média e o máximo. Os valores permitidos para window são baseados no período da métrica. O mapeamento válido é o seguinte:

period:1h : window:today

period:1d : window:30d

Por exemplo, a regra a seguir informa o maior número de erros tentativas de autenticação vistas para um usuário específico (Alice) em um determinado dia, ao longo de nos últimos 30 dias:

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

É possível usar uma combinação de métricas diárias e por hora para first-seen tipos de detecções. Por exemplo, a regra a seguir informa se isso é na primeira vez que um usuário fizer login neste aplicativo:

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 observação tem uma série de métricas associadas a ela. Um deles precisa ser selecionado para agregação em toda a janela. Cinco Há suporte para os tipos metric:

event_count_sum: número de eventos de registro exclusivos em cada período.

first_seen: carimbo de data/hora visto pela primeira vez de um evento de registro correspondente em cada período

last_seen: carimbo de data/hora visto pela última vez de um evento de registro correspondente em cada período

value_sum: representa a soma do número de bytes em todo o registro eventos combinados no período. Esse valor só pode ser usado para métricas com bytes no nome.

num_unique_filter_values: métrica que não é pré-calculada Operações de segurança do Google, mas pode ser computada durante a execução da regra. Consulte Contagem única métricas para mais detalhes e requisitos.

Agg

Qual agregação é aplicada à métrica. As agregações são aplicadas a janela inteira (por exemplo, o valor diário mais alto nos últimos 30 dias). Os tipos são:

avg: valor médio por período. Esta é uma média estatística, que não indica incluem valores de zero.

max: maior valor por período.

min: menor valor por período.

num_metric_periods: número de períodos na janela que tiveram um valor de métrica diferente de zero.

stddev: desvio padrão do valor por período. Esta é uma estatística desvio padrão que não inclui valores zero.

sum: soma de cada valor por período em toda a janela.

Por exemplo, a regra a seguir informa o número médio de tentativas de autenticação vistas para um usuário específico (Alice) em qualquer dia nos últimos 30 dias:

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

A regra a seguir informa quantas autenticações bem-sucedidas um usuário específico nos últimos 30 dias:

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

A regra a seguir informa se um usuário específico fez login em pelo menos uma vez nos últimos 30 dias:

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

A regra a seguir informa a primeira ou última vez que um usuário específico fez login com sucesso:

$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
))

A regra a seguir informa o número máximo de bytes enviados por um usuário em qualquer um determinado dia nos últimos 30 dias:

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

Filtro

Os filtros permitem filtrar métricas antes da agregação por um valor no métrica pré-computada (veja os valores em Métrica). Os filtros podem ser qualquer filtro válido expressão de eventos (uma única linha na seção de eventos) que não contém quaisquer campos de eventos ou espaços reservados. As únicas variáveis que podem ser incluídas essa condição são tipos de métrica.

A regra a seguir inclui apenas métricas em 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
))
Exemplos 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
Exemplos de filtros invá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

As métricas são filtradas por um, dois ou três campos de UDM, dependendo da função. Para Para mais informações, consulte Funções.

Os seguintes tipos de campos UDM são usados para funções de métricas:

  • Dimensões (obrigatório): combinações diferentes são listadas neste na documentação do Google Cloud. Não é possível mesclar uma métrica com um valor padrão ("" para string e 0 para int).
  • Namespaces (opcional): só é possível usar namespaces para entidades que que você especificar nas dimensões. Por exemplo, se você usar principal.asset.hostname filter, também poderá usar um principal.namespace filter. Se você não incluem um filtro de namespace, os dados de todos os namespaces serão agregados juntas. É possível usar um valor padrão como filtro de namespace.

Cálculos de janela

O Google Security Operations calcula métricas usando uma métrica diária ou por hora janela.

Janelas diárias

Todas as janelas diárias, como 30d, são determinadas da mesma maneira. As Operações de segurança do Google usam os dados de métricas mais recentes disponíveis que foram gerados que não se sobreponha ao período da regra. Cálculo da As métricas diárias podem levar até seis horas para serem concluídas e não começam até o fim do dia em UTC. Os dados de métricas do dia anterior estarão disponíveis em ou antes das 6h (UTC) todos os dias.

Por exemplo, para uma regra que utiliza dados de eventos de 31/10/2023 às 4h UTC para 31/10/2023 às 7h UTC, as métricas diárias de 31/10/2023 provavelmente terão sido então o cálculo da métrica vai usar os dados de 01/10/2023 para 2023-10-30 (inclusive). Já para uma regra que executa dados de eventos de 2023-10-31 1:00 UTC a 2023-10-31 3:00 UTC, as métricas diárias para 2023-10-30 provavelmente não serão gerados. Portanto, o cálculo da métrica usará os dados de 30/09/2023 a 29/10/2023 (inclusive).

Janela today por hora

A janela da métrica por hora é calculada de maneira muito diferente da janela de métricas diárias. A janela da métrica por hora de today não é um tamanho estático como o Janela 30d para métricas diárias. A janela de métricas por hora today é preenchida como o máximo de dados possível entre o final da janela diária e o início da período da regra.

Por exemplo, para uma regra que executa dados de eventos de 31/10/2023 às 4:00:00 UTC para 31/10/2023 às 7:00:00 UTC, o cálculo da métrica diária vai usar os dados. de 01/10/2023 a 30/10/2023 (inclusive), e a janela de métricas por hora vai usar de dados de 31-10-2023 00:00:00 UTC a 2023-10-31 4:00:00 UTC.

Contar métricas únicas

Há um tipo especial de métrica num_unique_filter_values que não é pré-calculado pelas Operações de segurança do Google e, em vez disso, é calculado durante a execução de uma regra. Para isso, agregamos sobre uma dimensão atual em uma métrica pré-computada. Por exemplo, a métrica daily total count of distinct countries that a user attempted to authenticate podem ser derivadas das métricas auth_attempts_total pré-computadas na as dimensões target.user.userid e principal.ip_geo_artifact.location.country_or_region realizando uma contagem uma agregação única sobre a última dimensão.

A regra de exemplo a seguir conta métricas exclusivas:

$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: *
))

Esse recurso tem as seguintes limitações:

  • O cálculo da contagem de métricas únicas só pode ser agregada em um filtro dimensão. Isso é indicado pelo token de caractere curinga * como filtro. .

remotas

Esta seção inclui documentação sobre as funções de métricas específicas aceitas pelas Operações de segurança do Google.

Eventos de alerta

O metics.alert_event_name_count pré-computa valores históricos para eventos de UDM com um valor diferente de zero para alertas com vários alertas gerados em no Google Workspace received_bytes e disponibiliza esse campo como value_sum

A lista completa de campos de UDM disponíveis 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

Tentativas de autenticação

O metrics.auth_attempts_total pré-computa valores históricos para eventos de UDM com um USER_LOGIN event type.

metrics.auth_attempts_success também exige que o evento tenha pelo menos um SecurityResult.Action de ALLOW.

metrics.auth_attempts_fail exige que nenhum dos SecurityResult.Actions foram ALLOW.

A lista completa de campos de UDM disponíveis 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 tem outros campos de UDM disponíveis 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 tem outros campos de UDM disponíveis 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

Saída de bytes DNS

O metrics.dns_bytes_outbound pré-computa valores históricos para eventos de UDM em que network.sent_bytes é maior que 0, e a porta de destino é 53/udp, 53/tcp ou 3000/tcp. network.sent_bytes está disponível como value_sum.

A lista completa de campos de UDM disponíveis 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 DNS

O metrics.dns_queries_total pré-computa valores históricos para eventos de UDM que têm um valor em network.dns.id.

metrics.dns_queries_success ainda exige que o network.dns.response_code era de 0 (NoError).

O metrics.dns_queries_fail só considera eventos com network.dns.response_code maior que 0.

A lista completa de campos de UDM disponíveis 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

Execuções de arquivos

O metrics.file_executions_total pré-computa valores históricos para eventos de UDM com um PROCESS_LAUNCH event type.

metrics.file_executions_success também exige que o evento tenha pelo menos um SecurityResult.Action de ALLOW.

metrics.file_executions_fail exige que nenhuma das SecurityResult.Actions foram ALLOW.

A lista completa de campos de UDM disponíveis 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

O metrics.http_queries_total pré-computa valores históricos para eventos de UDM que têm um valor em network.http.method.

metrics.http_queries_success ainda exige que network.http.response_code é menor que 400.

O metrics.http_queries_fail só considera eventos com network.http.response_code é menor ou igual a 400.

A lista completa de campos de UDM disponíveis 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 da rede

O metrics.network_bytes_inbound pré-computa valores históricos para eventos de UDM com um valor diferente de zero network.received_bytes, e disponibiliza esse campo como value_sum.

metrics.network_bytes_outbound requer um valor diferente de zero para network.sent_bytes e disponibiliza esse campo como value_sum.

metrics.network_bytes_total considera eventos que têm um valor diferente de zero para de cada network.received_bytes ou network.sent_bytes (ou ambos) e disponibilize a soma desses dois campos como value_sum.

A lista completa de campos de UDM disponíveis 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

Criação de recursos

O metrics.resource_creation_total pré-computa valores históricos para eventos de UDM com um RESOURCE_CREATION event type.

metrics.resource_creation_success também exige que o evento tenha pelo menos pelo menos um SecurityResult.Action de ALLOW.

A lista completa de campos de UDM disponíveis 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

Exclusão de recursos

O metrics.resource_deletion_success pré-computa valores históricos para eventos de UDM com RESOURCE_DELETION event type e mais exige que o evento tenha pelo menos SecurityResult.Actions de ALLOW.

A lista completa de campos de UDM disponíveis 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

Leitura de recursos

O metrics.resource_read_success pré-computa valores históricos para eventos de UDM com RESOURCE_READ event type e mais exige que o evento tenha pelo menos SecurityResult.Action de ALLOW.

metrics.resource_read_fail exige que nenhuma das SecurityResult.Actions são ALLOW.

A lista completa de campos de UDM disponíveis 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

Limitações

Ao criar regras de YARA-L com métricas, esteja ciente das seguintes limitações:

  • Não é possível mesclar uma métrica com um valor padrão ("" para string e 0 para int).
  • Valores padrão:
    • Se não houver dados de métricas que correspondam a um evento, o valor retornado o valor da função de métricas é 0.
    • Se houver um evento na detecção que não tenha dados de métricas, usar min para agregar sobre a função pode retornar 0.
    • Para verificar se há dados para um evento, você pode usar as métricas Agregação num_metric_periods no mesmo evento com os mesmos filtros.
  • As funções de métricas só podem ser usadas na seção de resultados.
  • Como as funções de métricas são usadas apenas na seção de resultados, elas precisam ser agregados, assim como qualquer outro valor em regras com uma seção de correspondência.