Конвертер правил Sigma
Конвертер правил Sigma преобразует правила корреляции в понятный KUMA формат и облегчает импорт простых правил для последующей доработки аналитиком.
Чтобы воспользоваться конвертером правил Sigma, выполните следующие шаги:
- Установите конвертер правил Sigma. После установки войдите в веб-интерфейс конвертера. Доступны следующие варианты установки (в конце файла процессы установки расписаны подробно) :
-
- Установка конвертера правил Sigma с использованием docker + bash
-
- Подготовьте правило корреляции. Скопируйте из KUMA правило корреляции, которое вы хотите доработать, на вкладку конвертера rule. Выберите в раскрывающихся списках нужные параметры. При необходимости исправьте ошибки.
Поскольку в предустановленных нормализаторах используется обогащение событий to lower case для полей, содержащих имена пользователей, имена хостов, имена процессов, мы рекомендуем в исходном правиле Sigma приводить соответствующие поля к нижнему регистру, иначе придется корректировать правило в KUMA.
Мы не рекомендуем в условиях contains и подобных условиях писать комментарии или дополнительную информацию. В случае необходимости оставить комментарий рекомендуем использовать символ #, тогда комментарий не окажет влияния на условие.
Правило должно начинаться со слова title, дефисов перед ним не должно быть.
3. Готовый результат скопируйте в KUMA, если это запрос или фильтр. Если вы хотите использовать в KUMA правило, можно импортировать в KUMA по одному правилу.
4. Перезапустите коррелятор, чтобы применить изменения.
Чтобы конвертировать правило Sigma в правило KUMA:
- Скопируйте из KUMA правило корреляции, которое вы хотите доработать, на вкладку конвертера rule. Выберите в раскрывающихся списках нужные параметры. При необходимости исправьте ошибки.
- В конверторе Sigma в поле backend выберите kuma, в поле Format выберите default, поле pipeline оставьте пустым.
- Перейдите на вкладку pipline.yaml и скопируйте туда "Пример словаря адаптированный под pySigma".
Правило конвертировано.
В результате получим условие WHERE для sql запроса.
Поддерживаемые примеры конвертации правил Sigma тут
Установка конвертера правил Sigma с использованием docker + bash
Этот тип установки подходит для локальной установки веб-интерфейса конвертера.
Для установки требуются последние версии bash и docker. Для подробной информации по развертыванию обратитесь к официальной документации.
Astra Linux 1.7 не поддерживается.
Чтобы выполнить установку:
- Войдите в директорию с распакованным архивом и выполните одну из команд:
-
Чтобы установить конвертер на 0.0.0.0:8000, выполните следующую команду:
./run.sh
-
Чтобы установить конвертер на 0.0.0.0:8888, выполните следующую команду:
./run.sh <
порт (порт по умолчанию 8000)
>
-
Чтобы установить конвертер на 127.0.0.1:9999, выполните следующую команду:
./run.sh <IP-адрес слушающего интерфейса, по умолчанию 0.0.0.0. Указывайте 127.0.0.1 для запуска только на локальном интерфейсе>:<порт>
-
Установка конвертера правил Sigma в среде, допускающей запуск образов docker
Это метод установки использует предоставленный контейнер и этот способ может использоваться для создания сервиса systemd и развертывания веб-интерфейса с использованием Kubernetes.
Подойдет любой инструмент запуска контейнеров: docker, podman, cri-o, и т.п. Установка заключается в загрузке образа контейнера и последующего запуска образа с указанием нужного порта.
Чтобы установить конвертер с помощью podman:
- Загрузите образ контейнера:
podman load --input "kuma-sigma-converter-x.x.x.tar
- Запустите образ одним из следующих способов:
- Запуск до нажатия Ctrl+C:
podman run --name=kuma-converter -p "8000:8000" -e "PORT=8000" --rm -it kuma-sigma-converter:x.x.x
- Запуск в фоновом режиме:
podman run --name=kuma-converter -p "8000:8000" -e "PORT=8000" --rm kuma-sigma-converter:x.x.x
- Запуск до нажатия Ctrl+C:
Установка конвертера выполнена.
Установка конвертера правил Sigma с использованием Python 3.10 и выше
Этот метод отличается наибольшей гибкостью и подходит опытным пользователям, поскольку можно адаптировать конвертер под свои потребности. В отличие от других методов, этот метод требует подключения к интернету для скачивания пакетов python.
Чтобы выполнить установку конвертера:
- Убедитесь, что установлен Python 3.10 или выше.
- Установите poetry, инструмент для управления зависимостями Python. Для Ubuntu или Debian можно воспользоваться менеджером пакетов:
sudo apt-get update
sudo apt install pipx
pipx install poetry
- Используйте poetry для настройки и запуска веб-интерфейса:
cd sigconverter.io
poetry install
poetry run ./run.py
- В браузере перейдите на хост, где установлен веб-интерфейс. Для локальной установки адрес будет следующим: http://127.0.0.1:8000 или http://0.0.0.0:8000.
- При необходимости вы можете указать переменные окружения
HOST
иPORT, чтобы настроить слушающий интерфейс и задать номер порта.
Установка конвертера выполнена.
Поскольку конвертер представляет собой плагин для инфраструктуры pySigma, допускается использование Sigma-backend-kuma с другими стандартными инструментами sigma, не только настраиваемой версией sigconverter.io. Например: sigma-cli - конвертер с интерфейсом командной строки; sigconverter.io - исходный универсальный веб-интерфейс.
Ниже указаны файлы README для библиотек, представленных в исходном коде:
src/pySigma/README.md -- инфраструктура и библиотека промышленного стандарта преобразования sigma.
src/pySigma-backend-kuma/README.md -- плагин для pySigma, который реализует преобразование фильтров и запросов KUMA.
src/sigconverter.io/README.md -- пользовательский веб-интерфейс.