Приклад порогового правила
Визначення порогового правила
<?xml version="1.0" encoding="utf-8"?> <rule> <definition> <threshold count="3" interval="900s">
<detection> <definition>
<process> <operator type="or"> <condition component="FileItem" property="FileName" condition="is" value="notepad.exe"/> <condition component="FileItem" property="FileName" condition="is" value="cmd.exe"/> </operator> </process>
<operations> <operation type="Detection"> <operator type="or"> <condition component="InspectDetection" property="RuleName" condition="contains" value="PB000"/> <condition component="InspectDetection" property="RuleName" condition="contains" value="PB001"/> </operator> </operation> </operations>
</definition> </detection>
<aggregateOn> <property name="ParentProcess"/> </aggregateOn>
<cardinality> <property name="ruleName" value="2" /> </cardinality>
</threshold> </definition>
<actions> <action name="ReportIncident" /> </actions>
<description> <name>test threshold rule</name> <category>default</category> </description> </rule> |
Підтримка правил
1. Правило PB000 (notepad)
<?xml version="1.0" encoding="utf-8"?> <rule> <definition> <process> <condition component="FileItem" property="FileNameWithoutExtension" condition="is" value="notepad"/> </process> </definition> <description> <name>notepad [PB000]</name> <category> Default </category> </description> </rule> |
2. Правило PB001 (cmd)
<?xml version="1.0" encoding="utf-8"?> <rule> <definition> <process> <condition component="FileItem" property="FileNameWithoutExtension" condition="is" value="cmd"/> </process> </definition> <description> <name>cmd [PB001]</name> <category> Default </category> </description> </rule> |
На що слід звернути увагу в наведеному вище прикладі правила:
Це порогове правило ініціює інцидент, коли виконуються певні умови протягом заданого інтервалу.
Роз’яснення тригера:
1.Кількість порогів і інтервал:
oПравило порогу спрацьовує (створюється інцидент), якщо протягом 900 секунд відбувається три виявлення.
2.Виявлений об’єкт
oУ розділі процесів зазначено контрольовані процеси: notepad.exe і cmd.exe.
oУ цьому прикладі розділ процесу є необов’язковим, оскільки конкретні правила (PB000 і PB001) уже визначають контрольовані процеси.
oУ розділі операцій задаються умови на основі назв правил (PB000 і PB001).
3.AggregateOn (необов’язково):
oУ цьому прикладі для aggregateOn установлено значення ParentProcess. Оскільки всі типи агрегації передбачають агрегацію комп’ютера, виявлення мають відбуватися на комп’ютері з тим самим параметром ParentProcess.
4.Кардинальність (необов’язково):
oЦей параметр указує, що виявлення мають відбуватися принаймні за двома різними правилами (значення ruleName — 2).
5.Дії
oПідтримується лише дія ReportIncident. Усі інші параметри (aggregateOn і aggregationParameter) ігноруються. Їх не слід використовувати в пороговому правилі.
oБез цієї дії порогове правило не створить інцидент.
Приклади сценаріїв:
•Одне виявлення PB000 і два — PB001.
•Два виявлення PB000 і одне — PB001.
•Три виявлення PB000 і десять — PB001.
•Інші комбінації, що відповідають умовам:
oЗагальна кількість виявлених об’єктів має бути більше за 3.
oМають спрацювати принаймні 2 різних правила.