Перейти к основному содержимому
Версия: 4.6.X

derive

Процессор derive

Процессор derive создаёт новые события на основе данных из обрабатываемого события. В отличие от процессора enrich, который добавляет поля к существующему событию, derive порождает дополнительные события, которые обрабатываются далее по конвейеру независимо от исходного.

Конфигурация

processors:
- module: derive
type: "<тип деривера>"
timeout: 2s
cache-ttl: 5m
disable-cache: false
deriver-config:
# параметры конкретного типа
ПараметрТипПо умолчаниюОписание
typestringТип деривера (например, ioc)
timeoutdurationТаймаут запроса к внешнему сервису
cache-ttldurationВремя жизни записей в кеше
disable-cacheboolfalseОтключить кеширование
deriver-configobjectКонфигурация конкретного типа деривера

Тип ioc

Деривер ioc проверяет значения указанных полей события по базе индикаторов компрометации. При обнаружении совпадения создаёт отдельное событие-индикатор угрозы. Исходное событие сохраняется без изменений.

processors:
- module: derive
type: ioc
timeout: 3s
cache-ttl: 10m
deriver-config:
provider: "amtip"
lookup-fields:
- "ECS.Source.IP"
- "ECS.Destination.IP"
- "ECS.DNS.Question.Name"
ПараметрТипОписание
providerstringПровайдер IoC-данных (например, amtip)
lookup-fieldsstring[]Поля события для проверки по базе IoC
formatstringФормат данных провайдера (например, stix)

Конфигурация провайдера зависит от выбранного источника. Параметры указываются на уровне deriver-config.

Конфигурация провайдера amtip:

ПараметрТипОписание
tokenstringТокен аутентификации для API AMTIP. Имеет приоритет выше, чем token-secret
token-secretstringНазвание секрета KOMRAD с токеном. Игнорируется, если указан token
base-urlstringURL ресурса AMTIP
tlsobjectПараметры TLS для запросов
custom-fieldsmap[string]stringДополнительные поля для извлечения из ответа IoC-провайдера (ключ — имя целевого поля, значение — GJSON-путь в ответе)

Пример полной конфигурации с провайдером AMTIP:

processors:
- module: derive
timeout: 500s
cache-ttl: 5s
type: ioc
deriver-config:
format: "stix"
provider: "amtip"
lookup-fields: ["ECS.Source.IP", "ECS.Destination.IP", "ECS.DNS.Question.Name"]
token-secret: "AMTIP_API_TOKEN"
base-url: "https://amtip.example.com/api/v1/ioc/"
tls:
disable: false
custom-fields:
blacklists: 'objects.#(name%Blacklists).result'

Подробнее об API AMTIP см. Получение IoC из внешних источников (AMTIP).

Отличие от enrich ioc

enrich с типом iocderive с типом ioc
РезультатДобавляет поля IoC в исходное событиеСоздаёт отдельное событие-индикатор
Исходное событиеМодифицируетсяСохраняется без изменений
ПрименениеПометка события как связанного с угрозойГенерация отдельных событий для обработки в корреляции