Условия передачи данных в дополнительный нормализатор
При создании дополнительных правил парсинга событий вы можете указать условия, при выполнении которых события будут поступать на обработку в правило парсинга. Условия можно задать в окне Дополнительное правило парсинга на вкладке Условия дополнительной нормализации. В основных правилах парсинга эта вкладка отсутствует.
Доступные параметры:
Использовать сырое событие – если вы хотите передавать сырое событие для дополнительной нормализации, в раскрывающемся списке Использовать сырое событие выберите значение Да. По умолчанию указано значение Нет. Мы рекомендуем передавать сырое событие в нормализаторы типа json и xml. Если вы хотите передавать сырое событие для дополнительной нормализации на второй, третий и далее уровень вложенности, последовательно на каждом уровне вложенности в раскрывающемся списке Использовать сырое событие выберите значение Да.
Поле, которое следует передать в нормализатор – используется для указания поля события в том случае, если вы хотите отправлять на дополнительный парсинг только события с заданными в параметрах нормализатора полями.
Если оставить это поле пустым, в дополнительный нормализатор будет передано событие целиком.
Если при настройке параметров дополнительного нормализатора вы указали для параметра Использовать сырое событие значение Нет и значение в поле Исходное поле осталось незаполненным, любые настроенные преобразования для поля, которое передается в нормализатор, не будут работать. Чтобы преобразования выполнялись корректно, исходное поле долно быть заполнено либо указано значение Да для параметра Использовать сырое событие.
Блок фильтров – используется для формулирования сложных условий, которым должны удовлетворять события, поступающие в нормализатор.
С помощью кнопки Добавить условие можно добавить строку с полями для определения условия (см. ниже).
С помощью кнопки Добавить группу можно добавить группу фильтров. Можно переключать групповые операторы между И, ИЛИ, НЕ. В группы фильтров можно добавить другие группы условий и отдельные условия.
Условия и группы можно менять местами, перетягивая их за значок , а также удалять с помощью значка .
Параметры условий фильтра:
Левый операнд и Правый операнд – используются для указания значений, которые будет обрабатывать оператор.
В левом операнде следует указывать исходное поле событий, поступающих в нормализатор. Например, если в окне Основной парсинг событий настроено сопоставление eventType - DeviceEventClass, то в окне Дополнительный парсинг событий на вкладке Условия дополнительной нормализации в поле левого операнда для фильтра следует указать eventType. Данные обрабатываются только как текстовые строки.
Операторы:
= – полное совпадение левого и правого операндов.
startsWith – левый операнд начинается с символов, указанных в правом операнде.
endsWith – левый операнд заканчивается символами, указанными в правом операнде.
match – левые операнд соответствует регулярному выражению (RE2), указанному в правом операнде.
in – левый операнд соответствует одному из значений, указанных в правом операнде.
Поступающие данные можно предварительно преобразовать, если нажать на кнопку : откроется окно Преобразование, в котором с помощью кнопки Добавить преобразование можно создать правила изменения исходных данных перед тем, как над ними будут совершены какие-либо действия. В окне Преобразования добавленные правила можно менять местами, перетягивая их за значок , а также удалять с помощью значка .
Преобразования – это изменения, которые применяются к значению перед записью в поле события. Вы можете выбрать в раскрывающемся списке один из следующих типов преобразования:
entropy – используется для преобразования значения исходного поля с помощью функции вычисления информационной энтропии и помещения результата преобразования в целевое поле типа float. Результатом преобразования будет число. Показатель вычисления информационной энтропии позволяет выявлять DNS-туннели и компрометацию паролей, например когда пользователь ввел пароль вместо логина и пароль записывается в журнал в открытом виде.
lower – используется для перевода всех символов значения в нижний регистр.
upper – используется для перевода всех символов значения в верхний регистр.
regexp – используется для преобразования значения с помощью указанного регулярного выражения RE2. При выборе этого типа преобразования отображается поле, в котором вам нужно указать регулярное выражение RE2.
substring – используется для извлечения символов в указанном диапазоне позиций. При выборе этого типа преобразования отображаются поля Начало и Конец, в которых вам нужно указать диапазон позиций.
replace – используется для замены указанной последовательности символов на другую последовательность символов. При выборе этого типа преобразования отображаются следующие поля:
Символы на замену – последовательность символов, которую требуется заменить.
Чем заменить – последовательность символов, которую требуется использовать вместо заменяемой последовательности символов.
trim – используется для удаления указанных символов одновременно с начала и с конца значения поля события. При выборе этого типа преобразования отображается поле Символы, в котором вам нужно указать символы. Например, если для значения Microsoft-Windows-Sysmon выполнить преобразование trim со значением Micromon, новым значением будет soft-Windows-Sys.
append – используется для добавления указанных символов в конец значения поля события. При выборе этого типа преобразования отображается поле Константа, в котором вам нужно указать символы.
prepend – используется для добавления указанных символов к началу значения поля события. При выборе этого типа преобразования отображается поле Константа, в котором вам нужно указать символы.
replace with regexp – используется для замены результатов регулярного выражения RE2 на указанную последовательность символов. При выборе этого типа преобразования отображаются следующие поля:
Выражение – регулярное выражение RE2, результаты которого требуется заменить.
Чем заменить – последовательность символов, которую требуется использовать вместо заменяемой последовательности символов.
Конвертация закодированных строк в текст:
decodeHexString – используется для конвертации HEX-строки в текст.
decodeBase64String – используется для конвертации Base64-строки в текст.
decodeBase64URLString – используется для конвертации Base64url-строки в текст.
При конвертации поврежденной строки или при ошибках конвертации в поле события могут быть записаны поврежденные данные.
При обогащении событий, если длина закодированной строки превышает размер поля нормализованного события, строка будет обрезана и не будет раскодирована.
Если длина раскодированной строки превышает размер поля события, в которое должно быть помещено раскодированное значение, строка будет обрезана до размера этого поля события.
Преобразование формата IP-адреса в IPv4:
ipDecimalToDotted – используется для преобразования IP-адреса в формате десятичного числа в IP-адрес в формате IPv4, в котором октеты разделены точками.
ipHexToDotted – используется для преобразования IP-адреса в формате шестнадцатиричного числа в IP-адрес в формате IPv4, в котором октеты разделены точками. с октетами, разделенными точками.
Преобразования при использовании расширенной схемы событий
Возможность использования преобразования зависит от типа используемого поля расширенной схемы событий:
для дополнительного поля с типом Строка доступны все типы преобразования.
для полей с типами Число и Число с плавающей точкой доступны следующие типы преобразования: regexp, substring, replace, trim, append, prepend, replaceWithRegexp, decodeHexString, decodeBase64String и decodeBase64URLString.
для полей с типами Массив строк, Массив чисел и Массив чисел с плавающей точкой доступны следующие типы преобразования: append и prepend.