Sintassi della sezione Opzioni
La sezione options di una query YARA-L è disponibile solo per le regole.
Puoi specificare le opzioni utilizzando la sintassi key = value, dove key deve essere un nome di opzione predefinito e value deve essere un valore valido per l'opzione:
rule RuleOptionsExample {
// Other rule sections
options:
allow_zero_values = true
}
Valori delle opzioni
Sono disponibili i seguenti valori per le opzioni:
Opzione allow_zero_values
I valori validi per l'opzione allow_zero_values sono true e false (valore predefinito), che
determinano se l'opzione è abilitata o meno. L'opzione
allow_zero_values è disattivata se non è specificata nella query.
Per attivare l'impostazione allow_zero_values, aggiungi quanto segue alla sezione options
della query:
allow_zero_values = true
Questa azione impedisce alla query di filtrare implicitamente i valori zero dei segnaposto utilizzati nella sezione match, come descritto in Valori zero nella sezione Corrispondenza.
opzione suppression_window
L'opzione suppression_window ti consente di controllare la frequenza con cui una regola attiva un rilevamento. Impedisce alla stessa regola di generare più rilevamenti all'interno di
un intervallo di tempo specificato, anche se le condizioni della query vengono soddisfatte più volte.
Il windowing della soppressione utilizza un approccio a finestra mobile, che sopprime i duplicati in una finestra di dimensioni fisse e non sovrapposte.
Se vuoi, puoi fornire un suppression_key per perfezionare ulteriormente le istanze
della query che vengono eliminate all'interno della finestra di eliminazione. Se non specificato, tutte le istanze della query vengono eliminate. Questa chiave è definita come variabile di risultato
e viene presa in considerazione solo per le query su un singolo evento.
Più query sugli eventi
utilizzeranno le variabili di corrispondenza della sezione match per determinare cosa
deve essere eliminato. Il valore suppression_window deve essere maggiore anche della
finestra di corrispondenza.
Il valore predefinito di suppression_window è 0, ovvero la finestra di soppressione
è disattivata per impostazione predefinita.
Esempio: opzione della finestra di soppressione per le query su un singolo evento
Nell'esempio seguente, suppression_window è impostato su 5m e suppression_key è
impostato sulla variabile $hostname. Dopo che la query attiva un rilevamento per
$hostname, tutti gli altri rilevamenti per $hostname vengono soppressi per i successivi
cinque minuti. Tuttavia, se la query viene attivata su un evento con un nome host diverso,
viene creata una rilevazione.
rule SingleEventSuppressionWindowExample {
// Other rule sections
outcome:
$suppression_key = $hostname
options:
suppression_window = 5m
}Esempio: opzione della finestra di soppressione per le query su più eventi
Nell'esempio seguente, suppression_window è impostato su 1h. Dopo che la query attiva un rilevamento per
($hostname, $ip) in una finestra di 10m, tutti gli ulteriori rilevamenti per ($hostname, $ip)
vengono eliminati per l'ora successiva. Tuttavia, se la query viene attivata su eventi con una combinazione diversa,
viene creata una rilevazione.
rule MultipleEventSuppressionWindowExample {
// Other rule sections
match:
$hostname, $ip over 10m
options:
suppression_window = 1h
}Informazioni aggiuntive
- Espressioni, operatori e costrutti utilizzati in YARA-L 2.0
- Funzioni in YARA-L 2.0
- Creare regole di rilevamento composite
- Esempi: query YARA-L 2.0
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.