Syntax pravidla
Rýchle odkazy: <definition> , <operations>, <description>, <actions>
Pravidlo je súbor výrazov definovaných pomocou jazyka založeného na XML. ESET PROTECT Web Console obsahuje preddefinovaný súbor pravidiel, môžete však pridávať a upravovať aj svoje vlastné pravidlá.
Všeobecná štruktúra tela pravidla je:
<rule> <definition> |
Značka Definition
ancestor – môže mať dodatočný atribút:
•distance – určuje, o koľko úrovní vyššie v strome procesov sa má hľadať zodpovedajúci nadradený proces. Napríklad hodnota 1 označuje nadradený proces, hodnota 2 označuje nadriadený proces nadradeného procesu a tak ďalej. Ak hodnota nie je zadaná, vlastnosť sa porovnáva so všetkými nadradenými procesmi.
•unique – umožňuje značke Ancestor odstrániť duplicitné procesy v strome nadradených procesov. Malvér napríklad vytvára viacero inštancií toho istého procesu, aby sa vyhol detekcii (explorer > cmd > cmd > cmd > malvér), a tento atribút tieto duplicity odstráni (explorer > cmd > malvér).
Process a parentprocess
Časť process umožňuje bezpečnostným inžinierom obmedziť udalosti na konkrétny proces, preto môžete písať pravidlá ako „Outlook vytvorí súbor EXE“. Ak je prvok procesu prázdny, pre všetky procesy sa vyhodnocujú časti parentprocess a operations.
Časť parentprocess je podobná procesu, ale umožňuje bezpečnostným inžinierom testovať atribúty nadradeného procesu. Umožnené sú tak pravidlá typu „PowerShell, spustené programom Word, sa pripája na internet“.
process, parentprocess, ancestor a operation používajú prvok výrazu na opísanie logického výrazu, ktorý sa vyhodnocuje na overenie, či má byť spustená detekcia. Výraz sa skladá z podmienok a logických operátorov. Podmienka kontroluje hodnotu určitej vlastnosti a logické operátory zoskupujú tieto podmienky do logických výrazov.
Príklady výrazov:
<operator type="and"> |
Operations
Časť operations definuje, ktoré operácie vykonané procesom spúšťajú indikátor. Ak je prázdna, indikátor sa spustí, keď proces vygeneruje udalosť.
Operácie sa definujú pomocou prvku operácie s atribútom typu a prvku výrazu.
<operation type="WriteFile">Expression</operation>
Kompletný zoznam podporovaných operácií nájdete v kapitole Operácie.
Operator
Podporované logické operátory sú: AND, OR a NOT. Logické operátory môžu byť vnorené. Logický operátor teda môže byť argumentom iného logického operátora. Okrem logických operátorov možno ako argument pre logické operátory použiť aj prvok podmienky. Značku operátora môžete použiť tak, ako je znázornené v tomto príklade:
<process> |
Prvky podmienky sa skladajú z troch častí:
•Vlastnosť argumentu alebo procesu operácie.
•Hodnota zadaná autorom pravidla.
•Vzťah medzi hodnotou a vlastnosťou.
Vlastnosti sú hierarchicky zoskupené do „súčastí“.
Existujú tri úrovne závažnosti: 1 – 39 > Info, 40 – 69 > Warning a 70 – 100 > Threat.
Typy vlastností a ich vzťahy (atribúty podmienky) sú:
|
is(not)set |
is(not) |
is(not)empty |
(not)starts |
(not)contains |
(not)ends |
less, lessOrEqual, greater, greaterOrEqual |
|---|---|---|---|---|---|---|---|
String |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
|
Int |
✔ |
✔ |
|
|
✔ |
|
✔ |
Value |
✔ |
✔ |
✔ |
|
|
|
|
Bool |
✔ |
✔ |
|
|
|
|
|
Date |
✔ |
✔ |
|
|
|
|
✔ |
Množina reťazcov |
✔ |
|
✔ |
|
✔ |
|
|
Adresa IPv4 |
✔ |
✔ |
✔ |
|
|
|
|
IPv6 adresa |
✔ |
✔ |
✔ |
|
|
|
|
Množina IPv4 adries |
✔ |
|
✔ |
|
✔ |
|
|
Množina IPv6 adries |
✔ |
|
✔ |
|
✔ |
|
|
Značka Description
Popis je povinný a musí obsahovať názov a kategóriu, ale zvyšok je voliteľný. Je užitočné definovať polia uvedené nižšie, pretože sú zobrazené v podrobnostiach:
name – názov pravidla. Je zobrazený v zozname pravidiel.
category – umožňuje kategorizovať pravidlá. Môžete si špecifikovať vlastné kategórie.
explanation – vysvetľuje dôvod, prečo bolo pravidlo spustené.
os – obsahuje operačný systém, na ktorý sa pravidlo vzťahuje. Možné hodnoty sú: Windows, Linux, OSX, ANY.
mitreattackid – obsahuje ID podľa MITRE ATT&CK®.
maliciousCauses – opisuje škodlivý zámer udalosti alebo zmenu, ktorá spustila pravidlo.
benignCauses – opisuje legitímny zámer udalosti alebo zmenu, ktorá spustila pravidlo.
recommendedActions – opisuje odporúčané kroky, ktoré majú vykonať bezpečnostní inžinieri.
guid – používa sa v rámci interných pravidiel. Externé pravidlá majú automaticky vygenerovaný identifikátor guid. Používa sa na jedinečnú identifikáciu pravidiel počas exportu/importu.
Značka maliciousTarget
Pomocou značky maliciousTarget môžete určiť cieľ, na ktorý sa budú predvolene vzťahovať vlastné reakčné opatrenia. Ak napríklad vyberiete možnosť blokovania spustiteľného súboru, zmeny závisia od značky maliciousTarget. Nezmení to správanie značky Actions. Možné hodnoty sú súčasný, modul, žiadny a nadradený.
Značka maliciousProcess bola nahradená značkou maliciousTarget. Stále je vo fáze podpory pre staršie verzie, ale odporúčame použiť značku maliciousTarget.
Značka Actions
Značka Actions umožňuje určiť množinu akcií, ktoré sa vykonajú pri spustení pravidla.
Akcie môžete zahrnúť do jedného prvku akcie:
<action name="BlockProcessExecutable"/>
Prípadne skombinujte viacero prvkov akcie do jedného elementu akcie (ako je znázornené v nasledujúcom príklade):
<actions> |
Z jedného pravidla môže byť vyvolaných viacero akcií.