Sintaxe da seção de opções

Compatível com:

A seção options de uma consulta YARA-L está disponível apenas para regras.

É possível especificar opções usando a sintaxe key = value, em que key precisa ser um nome de opção predefinido e value precisa ser um valor válido para a opção:

rule RuleOptionsExample {
  // Other rule sections

  options:
    allow_zero_values = true
}

Valores de opções

Os seguintes valores para opções estão disponíveis:

Opção "allow_zero_values"

Os valores válidos para a opção allow_zero_values são true e false (padrão), que determinam se a opção está ativada ou não. A opção allow_zero_values fica desativada se não for especificada na consulta.

Para ativar a configuração allow_zero_values, adicione o seguinte à seção options da sua consulta: allow_zero_values = true

Essa ação impede que a consulta filtre implicitamente os valores zero de marcadores de posição usados na seção match, conforme descrito em Valores zero na seção de correspondência.

Opção "suppression_window"

A opção suppression_window permite controlar a frequência com que uma regra aciona uma detecção. Isso evita que a mesma regra gere várias detecções em um período especificado, mesmo que as condições da consulta sejam atendidas várias vezes.

A gestão de janelas de supressão usa uma abordagem de janela rotativa, que suprime duplicatas em uma janela de tamanho fixo e sem sobreposição.

Você também pode fornecer um suppression_key para refinar ainda mais quais instâncias da consulta são suprimidas na janela de supressão. Se não for especificado, todas as instâncias da consulta serão suprimidas. Essa chave é definida como uma variável de resultado e só é considerada para consultas de evento único.

Várias consultas de evento usam as variáveis de correspondência da seção match para determinar o que deve ser suprimido. O valor suppression_window também precisa ser maior que a janela de correspondência.

O valor padrão de suppression_window é 0. Ou seja, a janela de supressão fica desativada por padrão.

Exemplo: opção de período de supressão para consultas de evento único

No exemplo a seguir, suppression_window está definido como 5m e suppression_key está definido como a variável $hostname. Depois que a consulta aciona uma detecção para $hostname, as detecções subsequentes para $hostname são suprimidas pelos próximos cinco minutos. No entanto, se a consulta for acionada em um evento com um nome de host diferente, uma detecção será criada.

rule SingleEventSuppressionWindowExample {
  // Other rule sections

  outcome:
    $suppression_key = $hostname

  options:
    suppression_window = 5m
}

Exemplo: opção de janela de supressão para consultas de vários eventos

No exemplo a seguir, suppression_window está definido como 1h. Depois que a consulta aciona uma detecção para ($hostname, $ip) em uma janela de 10m, as detecções futuras para ($hostname, $ip) são suprimidas na próxima hora. No entanto, se a consulta for acionada em eventos com uma combinação diferente, uma detecção será criada.

rule MultipleEventSuppressionWindowExample {
  // Other rule sections

  match:
    $hostname, $ip over 10m

  options:
    suppression_window = 1h
}

Informações adicionais

Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais do Google SecOps.