Функции обработки данных в корреляторе-ng
В текущей версии Kaspersky EDR Expert представлена бета-версия correlator-ng, которая предназначена для ознакомления. До выхода полнофункциональной версии коррелятора API методы, алгоритмы, синтаксис условий и другие функции и характеристики могут быть изменены.
В correlator-ng функции используются в селекторах и переменных для работы с данными событий, преобразования типов данных и фильтрации.
Общие правила синтаксиса:
- Обязательные аргументы заключаются в
<>, опциональные – в[]. - Неопределенное число аргументов обозначается
.... - Тип возвращаемого значения указывается как
-><тип данных>. Если указаноT, тип зависит от типа аргументов. - Тип аргументов может быть конкретным (например,
String,I64.) илиT, означающим любой доступный тип данных.
Функции для приведения типа данных
Используются для приведения значений к нужному типу данных.
Функции для приведения типа данных
Функция | Описание |
|---|---|
| Преобразует значение в строку. |
| Преобразует значение в целое число (I64). |
| Преобразует значение в число с плавающей точкой (F64). |
| Преобразует значение в UUIDv4. |
| Преобразует значение в IP (v4 или v6). |
| Преобразует значение в подсеть IPNet. |
| Преобразует значение в логический тип. |
| Преобразует значение во временную метку с возможностью указания часового пояса. |
Функции для сравнения значений
Функции для сравнения значений
Функция | Описание |
|---|---|
| Проверяет, совпадает ли левое значение с правым без учета регистра. |
| Проверяет, совпадает ли одно из правых значений с левым. |
| Сравнивает левое значение с множеством правых без учета регистра. |
| Проверяет вхождение правого значения в левое. |
| Проверяет вхождение правого значения в левое без учета регистра. |
| Проверяет вхождение любого из правых значений в левое. |
| Проверяет вхождение любого из правых значений в левое без учета регистра. |
| Проверяет, является ли правое значение префиксом левого. |
| Проверяет префикс без учета регистра. |
| Проверяет, является ли одно из правых значений префиксом левого. |
| Проверяет префикс без учета регистра для одного из правых значений. |
| Проверяет, является ли правое значение суффиксом левого. |
| Проверяет суффикс без учета регистра. |
| Проверяет, является ли одно из правых значений суффиксом левого. |
| Проверяет суффикс без учета регистра. |
| Проверяет, совпадает ли левое значение с регулярным выражением справа. |
| Проверяет, совпадает ли левое значение с одним из регулярных выражений справа. |
Функции для работы с активными листами, словарями и контекстными таблицами
Функции для работы с активными листами, словарями и контекстными таблицами
Функция | Описание |
|---|---|
| Проверяет наличие значения в активном листе по ключу. |
| Проверяет наличие значения в контекстной таблице по ключу. |
| Проверяет наличие значения в словаре по ключу. |
| Возвращает значение из словаря по ключу. |
| Возвращает значение из словаря-таблицы. |
| Возвращает значение из активного листа. |
| Возвращает значение поля из контекстной таблицы. |
| Возвращает элемент массива из контекстной таблицы. |
| Возвращает значение из активного листа, если ключ совпадает с регулярным выражением. |
| Возвращает значение из контекстной таблицы при совпадении с регулярным выражением. |
| Возвращает значение из словаря при совпадении с регулярным выражением. |
Функции работы с подсетями
Функции работы с подсетями
Функция | Описание |
|---|---|
| Проверяет принадлежность IP-адреса подсети. |
| Проверяет принадлежность IP-адреса одной из подсетей. |
| Проверяет принадлежность IP-адреса подсети из активного листа. |
| Проверяет принадлежность IP-адреса подсети из контекстной таблицы. |
| Проверяет принадлежность IP-адреса подсети из словаря. |
Функции обработки строк
Функции обработки строк
Функция | Описание |
|---|---|
| Приводит строку к нижнему регистру. |
| Приводит строку к верхнему регистру. |
| Возвращает подстроку. |
| Возвращает позицию первого вхождения. |
| Возвращает позицию последнего вхождения. |
| Удаляет пробельные символы в начале и конце строки. |
| Заменяет подстроку. |
| Выполняет замену с использованием регулярного выражения. |
| Извлекает подстроку по регулярному выражению. |
| Объединяет несколько строк. |
Функции работы с массивами
Функции работы с массивами
Функция | Описание |
|---|---|
| Добавляет значение в конец массива или строки. |
| Добавляет значение в начало массива или строки. |
| Возвращает длину строки или массива. |
| Возвращает элемент массива по индексу. |
| Удаляет дубликаты элементов массива. |
| Сортирует элементы в массиве. |
Функции работы с временными метками
Функции работы с временными метками
Функция | Описание |
|---|---|
| Возвращает текущую временную метку. |
| Возвращает год. |
| Возвращает номер месяца. |
| Возвращает месяц в строковом виде. |
| Возвращает номер дня недели. |
| Возвращает день недели в строковом виде. |
| Возвращает день месяца. |
| Возвращает час. |
| Возвращает минуту. |
| Возвращает секунду. |
| Возвращает миллисекунду. |
| Преобразует временную метку в строку. |
| Округляет временную метку до целого значения. |
Функции вычисления времени
Функции вычисления времени
Функция | Описание |
|---|---|
| Возвращает разницу в днях. |
| Возвращает разницу в часах. |
| Возвращает разницу в минутах. |
| Возвращает разницу в секундах. |
| Возвращает разницу в миллисекундах. |
Математические функции
Математические функции
Функция | Описание |
|---|---|
| Округляет значение до ближайшего целого. |
| Округляет значение вверх. |
| Округляет значение вниз. |
| Возвращает модуль числа. |
| Возводит число в степень. |
| Возвращает минимальный элемент массива. |
| Возвращает максимальный элемент массива. |
| Вычисляет среднее значение массива. |
Функции декодирования и анализа данных
Функции декодирования и анализа данных
Функция | Описание |
|---|---|
| Преобразует hex-строку в число. |
| Декодирует hex-строку. |
| Декодирует строку Base64. |
| Декодирует URL-кодированную строку. |
| Вычисляет энтропию Шеннона строки. |
| Проверяет, установлен ли бит в указанной позиции. |
| Проверяет наличие уязвимости у актива. |
Другие функции
Другие функции
Функция | Описание |
|---|---|
| Использует заранее определенные предикаты из файла selector-includes.yaml. |
| Извлекает значение из специализированного поля TI (CyberTrace). |
| Может использоваться только в атрибуте |
| Формирует строку на основе шаблона, подставляя в него значения полей события или переменных. |
| Возвращает одно из двух значений, в зависимости от результата предиката |
| Проверяет наличие срабатывания CyberTrace по категории или индикатору. |
| Проверяет наличие срабатывания CyberTrace по категории. |
| Проверяет наличие срабатывания CyberTrace по индикатору. |
| Проверяет наличие срабатывания CyberTrace по категории и индикатору. |