Отбрасывание события при нормализации
Если фильтр применился, последующая обработка события не происходит, событие не отправляется в SIEM, пополняется внутренняя метрика "denied_events_total {"plugin_id":<int>}
Данный плагин даёт возможность ставить фильтр на события определённого вида.
Если в одном из плагинов коллектора сработал фильтр deny
, события поступать не будут.
подсказка
Для фильтра deny
обязательно заполнение блока when
примечание
По AssetIPs
не нужно писать правило в deny
, т.к. в момент прихода события это поле пустое. Для отбраковки событий, пришедших не с того хоста, лучше использовать FwdIP
.
Пример:
В поле Регулярное выражение
изменить регулярное выражение там, где выделено цветом:
processors:
# модуль нормализации логов GROK (будет выполнен)
- module: grok
from: Raw
patterns:
HTTP_ANSWER: "%{IP:ECS.Client.IP} - - [%{GREEDYDATA:ECS.Geo.Timezone}] %{GREEDYDATA}"
# модуль нормализации логов DENY (фильтрация событий)
- module: deny
when:
# фильтрация событий используя регулярные выражения
regex:
- name: "ECS.Geo.Timezone"
value: "([0-3][0-9]/Apr/20[0-2][0-9]:[0-2][0-9]:[0-5][0-9]:[0-5][0-9])"
# фильтрация событий используя CEL выражения
cel:
- "event[\"ECS.Client.IP\"] == \"127.0.0.1\""
# модуль нормализации логов GROK (не будет выполнен)
- module: grok
from: Raw
patterns:
HTTP_ANSWER: "%{GREEDYDATA}] %{WORD:ECS.HTTP.RequestMethod} %{NUMBER:ECS.Event.Code}"
В поле Пример исходного события
вставить:
10.0.5.100 - - [23/Apr/2014:22:58:32] GET 404
Теперь при получении событий, они не попадут в систему.
10.0.5.100 - - [23/Apr/2014:22:58:32] GET 404
127.0.0.1 - - [23/Feb/2014:22:58:32] GET 404
127.0.0.1 - - [23/Apr/2014:22:58:32] GET 404