Sintaxe da secção de opções
A secção options de uma consulta YARA-L só está disponível para regras.
Pode especificar opções através da sintaxe key = value, em que key tem de ser um nome de opção predefinido e value tem de ser um valor válido para a opção:
rule RuleOptionsExample {
// Other rule sections
options:
allow_zero_values = true
}
Valores das opções
Estão disponíveis os seguintes valores para as opções:
Opção allow_zero_values
Os valores válidos para a opção allow_zero_values são true e false (predefinição), que determinam se a opção está ativada ou não. A opção allow_zero_values está desativada se não for especificada na consulta.
Para ativar a definição allow_zero_values, adicione o seguinte à secção options da sua consulta:
allow_zero_values = true
Esta ação impede que a consulta filtre implicitamente os valores zero dos marcadores de posição usados na secção match, conforme descrito em Valores zero na secção de correspondência.
Opção suppression_window
A opção suppression_window permite-lhe controlar a frequência com que uma regra aciona uma deteção. Impede que a mesma regra gere várias deteções numa janela de tempo especificada, mesmo que as condições da consulta sejam cumpridas várias vezes.
A aplicação de janelas de supressão usa uma abordagem de janelas rotativas, que suprime duplicados numa janela de tamanho fixo e sem sobreposição.
Opcionalmente, pode fornecer um suppression_key para refinar ainda mais as instâncias da consulta que são suprimidas no período de supressão. Se não for especificado, todas as instâncias da consulta são suprimidas. Esta chave é definida como uma variável de resultado e só é considerada para consultas de evento único.
Várias consultas de eventos
vão usar as variáveis de correspondência da secção match para determinar o que deve
ser suprimido. O valor suppression_window também tem de ser superior à janela de correspondência.
O valor predefinido de suppression_window é 0, ou seja, a janela de supressão está desativada por predefinição.
Exemplo: opção de período de supressão para consultas de evento único
No exemplo seguinte, suppression_window está definido como 5m e suppression_key está
definido como a variável $hostname. Depois de a consulta acionar uma deteção para $hostname, todas as deteções adicionais para $hostname são suprimidas durante os cinco minutos seguintes. No entanto, se a consulta for acionada num evento com um nome de anfitrião diferente,
é criada uma deteção.
rule SingleEventSuppressionWindowExample {
// Other rule sections
outcome:
$suppression_key = $hostname
options:
suppression_window = 5m
}Exemplo: opção de intervalo de supressão para consultas de vários eventos
No exemplo seguinte, suppression_window está definido como 1h. Depois de a consulta acionar uma deteção para ($hostname, $ip) durante um período de 10m, todas as deteções adicionais para ($hostname, $ip) são suprimidas durante a hora seguinte. No entanto, se a consulta for acionada em eventos com uma combinação diferente,
é criada uma deteção.
rule MultipleEventSuppressionWindowExample {
// Other rule sections
match:
$hostname, $ip over 10m
options:
suppression_window = 1h
}Informações adicionais
- Expressões, operadores e construções usados no YARA-L 2.0
- Funções no YARA-L 2.0
- Crie regras de deteção compostas
- Exemplos: consultas YARA-L 2.0
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais da Google SecOps.