При создании правил парсинга событий в окне параметров нормализатора на вкладке Обогащение вы можете настроить правила дополнения полей нормализованного события другими данными с помощью правил обогащения. Эти правила хранятся в параметрах нормализатора, в котором они были созданы.
Обогащения создаются с помощью кнопки Добавить обогащение. Правил обогащения может быть несколько. Правила обогащения можно удалять с помощью кнопки . Поля расширенной схемы событий могут быть использованы при обогащении событий.
Параметры, доступные в блоке параметров правила обогащения:
Доступные типы источников обогащения:
Этот тип обогащения используется, если в поле события необходимо добавить константу. Параметры этого типа обогащения:
Если вы используете функции обогащения событий для полей расширенной схемы с типом «Строка», «Число» или «Число с плавающей точкой» с помощью константы, в поле будет добавлена константа.
Если вы используете функции обогащения событий для полей расширенной схемы с типом «Массив строк», «Массив чисел» или «Массив чисел с плавающей точкой» с помощью константы, константа будет добавлена к элементам массива.
Этот тип обогащения используется, если в поле события необходимо добавить значение из словаря типа Словарь.
При выборе этого типа в раскрывающемся списке Название словаря необходимо выбрать словарь, из которого будут браться значения, а в блоке параметров Ключевые поля с помощью кнопки Добавить поле требуется выбрать поля события, значения которых будут использоваться для выбора записи словаря.
Если вы используете обогащение событий, у которого в качестве параметра Тип источника данных выбран тип «Словарь», а в параметре Ключевые поля обогащения указано поле-массив, при передаче массива в качестве ключа словаря массив будет сериализован в строку согласно правилам сериализации одного значения в формате TSV.
Пример: В параметре Ключевые поля обогащения используется поле расширенной схемы SA.StringArrayOne. Поле расширенной схемы SA.StringArrayOne, содержит 3 элемента "a", "b" и "c". В качестве ключа в словарь будет передано значение: ['a','b','c'].
Если в параметре Ключевые поля обогащения используется поле-массив расширенной схемы и обычное поле схемы событий, значения полей при обращении в словарь будут разделены символом «|».
Пример: В параметре Ключевые поля обогащения используются два поля: поле расширенной схемы SA.StringArrayOne и поле Code. Поле расширенной схемы SA.StringArrayOne, содержит 3 элемента "a", "b" и "c", строковое поле Code, содержит последовательность символов "myCode". В качестве ключа в словарь будет передано значение: ['a','b','c']|myCode.
Этот тип обогащения используется, если в поле события необходимо добавить значение из словаря типа Таблица.
При выборе этого типа обогащения в раскрывающемся списке Название словаря необходимо выбрать словарь, из которого будут браться значения, а в блоке параметров Ключевые поля с помощью кнопки Добавить поле требуется выбрать поля события, значения которых будут использоваться для выбора записи словаря.
Также в таблице Сопоставление необходимо настроить, из каких полей словаря и в какие поля события будут передаваться данные:
*custom*
и *flex*
) в столбце Подпись можно задать название для помещаемых в них данных.Новые строки в таблицу можно добавлять с помощью кнопки Добавить элемент. Столбцы можно удалить с помощью кнопки .
Этот тип обогащения используется, если в поле события необходимо записать значение другого поля события. Параметры этого типа обогащения:
Преобразования – это изменения, которые можно применить к значению до того, как оно будет записано в поле события. Тип преобразования выбирается в раскрывающемся списке.
Доступные преобразования:
Microsoft-Windows-Sysmon
выполнить преобразование trim со значением Micromon
, то получается значение soft-Windows-Sys
.При конвертации поврежденной строки или при ошибках конвертации в поле события могут быть записаны поврежденные данные.
При обогащении событий, если длина закодированной строки превышает размер поля нормализованного события, такая строка будет обрезана и не будет раскодирована.
Если длина раскодированной строки превышает размер поля события, в которое должно быть помещено раскодированное значение, такая строка будет обрезана до размера этого поля события.
Преобразования при использовании расширенной схемы событий
Возможность использования преобразования зависит от типа используемого поля расширенной схемы событий:
При использовании обогащения событий, у которых в качестве параметра Тип источника данных выбран тип «Событие», а в качестве аргументов используются поля расширенной схемы событий, необходимо учесть следующие особенности:
Пример: в поле расширенной схемы событий SA.StringArray, находятся значения «string1», «string2», «string3». Выполняются операция обогащения событий. Результат выполнения операции был занесён в поле схемы событий DeviceCustomString1. В результате выполнения операции в поле DeviceCustomString1 будет находиться: [«string1», «string2», «string3»].
Пример: в поле расширенной схемы событий SA.StringArrayOne, находятся значения «string1», «string2», «string3». Выполняются операция обогащения событий. Результат выполнения операции был занесён в поле схемы событий SA.StringArrayTwo. В результате выполнения операции в поле SA.StringArrayTwo будут находиться значения «string1», «string2», «string3».
Этот тип обогащения используется, если в поле события необходимо записать значение, полученное при обработке шаблонов Go. Параметры этого типа обогащения:
Имена полей событий передаются в формате {{.EventField}}
, где EventField
– это название поля события, значение которого должно быть передано в скрипт.
Пример: Атака на {{.DestinationAddress}} со стороны {{.SourceAddress}}
.
Чтобы преобразовать в шаблоне данные поля массива в формат TSV, необходимо использовать функцию toString.
Если вы используете обогащения событий, у которого в качестве параметра Тип источника данных выбран тип «Шаблон», в котором целевым полем является поле с типом Строка, а исходным полем является поле расширенной схемы событий, содержащее массив строк, в шаблоне может быть использован один из примеров, приведённых далее.
Пример:
{{.SA.StringArrayOne}}
Пример:
{{- range $index, $element := . SA.StringArrayOne -}}
{{- if $index}}, {{end}}"{{$element}}"{{- end -}}
Этот параметр недоступен для типа источника обогащения таблица.