ESET PROTECT – Indice

Sintassi delle regole

Collegamenti rapidi: <definition> , <operations>, <description>, <actions>

Una regola è un insieme di espressioni definite mediante un linguaggio basato su XML. ESET PROTECT Web Console contiene un set predefinito di regole, ma è possibile aggiungere e modificare le proprie regole.

La struttura generale del corpo di una regola è la seguente:

Definition Tag

ancestor—può accettare un attributo aggiuntivo:

•distance—specifica la distanza effettiva dal processo corrente dell'antenato corrispondente, ad esempio., 1 è il processo padre, 2 il processo nonno, ecc. Se non specificato, la proprietà viene confrontata con tutti gli elementi padre del processo.

•unique—consente al tag predecessore di rimuovere i processi duplicati nell'albero dei predecessori. Ad esempio, il malware crea più istanze dello stesso processo per evitare il rilevamento (explorer > cmd > cmd > cmd > malware) e questo attributo eliminerà queste duplicazioni (explorer > cmd > malware).

Process e parentprocess

La parte process consente agli ingegneri della sicurezza di limitare gli eventi a un processo specifico; pertanto, è possibile scrivere regole come “Outlook crea un file EXE”. Se l'elemento process è vuoto, parentprocess e operations vengono valutati per tutti i processi.

La parte parentprocess è simile al processo, ma consente agli ingegneri della sicurezza di testare gli attributi del processo padre. In questo modo vengono abilitate regole come “PowerShell, avviato da Word, si connette a Internet”.

process, parentprocess, ancestor e operation utilizzano un elemento espressione per descrivere un'espressione logica che viene valutata per verificare se deve essere attivato un rilevamento. Un'espressione è costituita da condizioni e operatori logici. Una condizione verifica il valore di una proprietà e gli operatori logici raggruppano queste condizioni in espressioni logiche.

Esempio di espressione:

Operations

La parte operations definisce quali operazioni eseguite da un processo attivano l'indicatore. Se vuoto, l'indicatore viene attivato quando il processo genera un evento.

Le operazioni vengono definite utilizzando un elemento operation con un attributo type e un elemento expression.

<operation type="WriteFile">Expression</operation>

Per l'elenco completo delle operazioni supportate, vedere l'argomento Operazioni.

Operator

Gli operatori logici supportati sono: AND, OR e NOT. Gli operatori logici possono essere nidificati. Pertanto, un operatore logico può essere un argomento di un altro operatore logico. Oltre agli operatori logici, un elemento condition può essere utilizzato come argomento per gli operatori logici. È possibile utilizzare il tag operatore come mostrato in questo esempio:

Gli elementi di condizione sono costituiti da tre parti:

•Proprietà dell'argomento o del processo dell'operazione.

•Un valore specificato dall'autore della regola.

•Relazione tra il valore e la proprietà.

Le proprietà sono raggruppate gerarchicamente in “componenti”.

Esistono tre livelli di gravità: 1–39 > Info, 40–69 > Warning e 70–100 > Threat.

I tipi di proprietà e le relative relazioni (attributi di condizione) sono:

 

is(not)set

is(not)

is(not)empty

(not)starts

(not)contains

(not)ends

less, lessOrEqual, greater, greaterOrEqual

String

✔

✔

✔

✔

✔

✔

 

Int

✔

✔

 

 

✔

 

✔

Value

✔

✔

✔

 

 

 

 

Bool

✔

✔

 

 

 

 

 

Date

✔

✔

 

 

 

 

✔

Set di stringhe

✔

 

✔

 

✔

 

 

Indirizzo IPv4

✔

✔

✔

 

 

 

 

Indirizzo IPv6

✔

✔

✔

 

 

 

 

Set di indirizzi IPv4

✔

 

✔

 

✔

 

 

Set di indirizzi IPv6

✔

 

✔

 

✔

 

 

Description Tag

La descrizione è obbligatoria e deve contenere un nome e una categoria, ma il resto è facoltativo. È utile definire i campi elencati di seguito poiché vengono visualizzati nei dettagli:

name – Nome della regola. Viene visualizzato nell'elenco delle regole.

category: consente di categorizzare le regole. È possibile specificare le proprie categorie.

explanation—Spiega il motivo per cui la regola viene attivata.

os: contiene il sistema operativo al quale si applica la regola. I valori possibili sono: Windows, Linux, OSX, ANY.

mitreattackid: contiene l'id di MITRE ATT&CK®.

maliciousCauses: descrive le cause dannose dell'evento o la modifica che ha attivato la regola.

benignCauses—Descrive le cause benigne dell'evento o della modifica che ha attivato la regola.

recommendedActions—Descrive le azioni consigliate che i tecnici della sicurezza devono intraprendere.

guid—utilizzato per le regole interne. Le regole esterne hanno il GUID generato automaticamente. Viene utilizzato per identificare in modo univoco le regole durante l'esportazione/importazione.

maliciousTarget Tag

È possibile utilizzare il tag maliciousTarget per specificare la destinazione che, per impostazione predefinita, sarà interessata dalle azioni di risposta personalizzata. Ad esempio, quando si seleziona Blocca eseguibile, le modifiche dipendono dal maliciousTarget. Non modifica il comportamento del tag Azioni. I valori possibili sono current, module, none e parent.

Il tag maliciousProcess è stato sostituito dal tag maliciousTarget. È ancora presente nel supporto legacy, ma si consiglia di utilizzare il tag maliciousTarget.

Actions Tag

Il tag Actions consente di specificare un insieme di azioni che vengono eseguite quando la regola viene attivata.

È possibile inserire le azioni in un singolo elemento azione:

<action name="BlockProcessExecutable"/>

Oppure raggruppare più elementi action in un unico elemento actions (come mostrato nell'esempio seguente):

Da una singola regola è possibile attivare più azioni.