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

anomaly

Процессор anomaly

Процессор anomaly обогащает события результатами оценки аномальности от ML-сервиса KOMRAD. Для каждого события процессор извлекает значение ключевого поля (entity) и запрашивает оценку аномальности у сервиса машинного обучения.

Предварительные требования

  • ML-сервис KOMRAD запущен и доступен
  • Настроено задание (job) обнаружения аномалий

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

processors:
- module: anomaly
entity-field: "ECS.Source.IP"
job-id: "network_traffic"
threshold: 75.0
timeout: 2s
cache-ttl: 5m
ПараметрТипПо умолчаниюОписание
entity-fieldstring(обязательный) Поле события, значение которого используется как ключ сущности для оценки аномальности (например, IP-адрес, имя пользователя)
job-idstring""Идентификатор ML-задания. Если не указан, используется любое подходящее задание
thresholdfloat6475.0Пороговое значение оценки аномальности (0–100). Если оценка >= порога, поле ML.Anomaly.IsAnomaly устанавливается в true
timeoutduration2sТаймаут запроса к ML-сервису
cache-ttlduration5mВремя жизни кеша оценок. Рекомендуется устанавливать равным интервалу bucket span ML-задания

Выходные поля

При получении оценки от ML-сервиса процессор добавляет в событие следующие поля:

ПолеТипОписание
ML.Anomaly.Scorefloat64Оценка аномальности (0–100)
ML.Anomaly.IsAnomalybooltrue, если Score >= threshold
ML.Anomaly.JobIDstringИдентификатор ML-задания, выполнившего оценку
ML.Anomaly.DetectorFunctionstringФункция детектора (например, rare, mean, high_count)
ML.Anomaly.Typicalfloat64Типичное (ожидаемое) значение метрики
ML.Anomaly.Actualfloat64Фактическое значение метрики
ML.Anomaly.TimestamptimeВременная метка оценки

Пример

Обнаружение аномальной активности по IP-адресу источника:

processors:
- module: suricata
- module: anomaly
entity-field: "ECS.Source.IP"
job-id: "suricata_alerts"
threshold: 80.0
timeout: 2s
cache-ttl: 5m

Если ML-сервис определяет, что активность IP-адреса из поля ECS.Source.IP имеет оценку аномальности 92.5, в событие будут добавлены поля:

ПолеЗначение
ML.Anomaly.Score92.5
ML.Anomaly.IsAnomalytrue
ML.Anomaly.JobIDsuricata_alerts

Эти поля могут быть использованы в фильтрах и директивах корреляции для приоритизации событий с высокой оценкой аномальности.