Skip to main content

Конвертер правил Sigma

Конвертер правил Sigma преобразует правила корреляции в понятный KUMA формат и облегчает импорт простых правил для последующей доработки аналитиком.

Чтобы воспользоваться конвертером правил Sigma, выполните следующие шаги:
  1. Установите конвертер правил Sigma. Для этого распайкуйте архив kuma-sigma-converter-x.x.x.tr.gz в папке установщика и после перейдите в распакованную директорию

image.png

далее запускаем файл командой 

./run.sh

image.png

После установки войдитеконвертера необходимо перейти в веб-интерфейс конвертера. Доступны следующие варианты установки (в концебраузере файлапо процессыадресу установки<IP_сервера!:><порт>:

расписаны

image.png

подробно) :
    1.  Установка конвертера правил Sigma с использованием docker + bash
    2.  Установка конвертера правил Sigma в среде, допускающей запуск образов docker
    3.  Установка конвертера правил Sigma с использованием Python 3.10 и выше
  • Подготовьте правило корреляции.

    Скопируйте из KUMA правило корреляции, которое вы хотите доработать,доработать. наДля этого перейдите в меню KUMA  -> Ресурсы -> Правила корреляции

    image.png

    Далее выберите нужное правило корреляции, перейдите в параметр "Селекторы" и для копирования нажмите "код" в представлении правила. Скопируйте правило

    image.png

    Далее вставьте правило во вкладку конвертера rule."rule" Выберитеи выберите параметры в раскрывающихсяполе спискахbackend нужныевыберите параметры.kuma, в поле Format выберите default, поле pipeline оставьте пустым. При необходимости исправьте ошибки.

  • ошибки в rule.yaml.

    image.png

    Поскольку в предустановленных нормализаторах используется обогащение событий to lower case для полей, содержащих имена пользователей, имена хостов, имена процессов, мы рекомендуем в исходном правиле Sigma приводить соответствующие поля к нижнему регистру, иначе придется корректировать правило в KUMA.

    Мы не рекомендуем в условиях contains и подобных условиях писать комментарии или дополнительную информацию. В случае необходимости оставить комментарий рекомендуем использовать символ #, тогда комментарий не окажет влияния на условие.

    Правило должно начинаться со слова title, дефисов перед ним не должно быть.

    3.  Готовый результат из QUARY скопируйте в KUMA, если это запрос или фильтр. Если вы хотите использовать в KUMA правило, можно импортировать в KUMA по одному правилу.

    4. Перезапустите коррелятор, чтобы применить изменения.

    Чтобы конвертировать правило Sigma в правило KUMA:
    1. Скопируйте из KUMA правило корреляции, которое вы хотите доработать, на вкладку конвертера rule. Выберите в раскрывающихся списках нужные параметры. При необходимости исправьте ошибки.
    2. В конверторе Sigma в поле backend выберите kuma, в поле Format выберите default, поле pipeline оставьте пустым.
    3. Перейдите на вкладку pipline.yaml и скопируйте туда "Пример словаря адаптированный под pySigma".

    Правило конвертировано.

    KUMA.В результате получим условие WHERE для sql запроса.

    image.png

    Поддерживаемые примеры конвертации правил Sigma тут

     
    Установка конвертера правил Sigma с использованием docker + bash

    Этот тип установки подходит для локальной установки веб-интерфейса конвертера.

    Для установки требуются последние версии bash и docker. Для подробной информации по развертыванию обратитесь к официальной документации.

    Astra Linux 1.7 не поддерживается.

    Чтобы выполнить установку:

    1. Войдите в директорию с распакованным архивом и выполните одну из команд:
      • Чтобы установить конвертер на 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.image.png

    Подойдет любой инструмент запуска контейнеров: docker, podman, cri-o, и т.п. Установка заключается в загрузке образа контейнера и последующего запуска образа с указанием нужного порта.

    Чтобы установить конвертер с помощью podman:

    1. Загрузите образ контейнера: 

      podman load --input "kuma-sigma-converter-x.x.x.tar

    2. Запустите образ одним из следующих способов:
      • Запуск до нажатия 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

    Установка конвертера выполнена.

     

    Установка конвертера правил Sigma с использованием Python 3.10 и выше

    Этот метод отличается наибольшей гибкостью и подходит опытным пользователям, поскольку можно адаптировать конвертер под свои потребности. В отличие от других методов, этот метод требует подключения к интернету для скачивания пакетов python.

    Чтобы выполнить установку конвертера:

    1. Убедитесь, что установлен Python 3.10 или выше.
    2. Установите poetry, инструмент для управления зависимостями Python. Для Ubuntu или Debian можно воспользоваться менеджером пакетов:

      sudo apt-get update

      sudo apt install pipx

      pipx install poetry

    3. Используйте poetry для настройки и запуска веб-интерфейса:

      cd sigconverter.io

      poetry install

      poetry run ./run.py

    4. В браузере перейдите на хост, где установлен веб-интерфейс. Для локальной установки адрес будет следующим: http://127.0.0.1:8000 или http://0.0.0.0:8000.
    5. При необходимости вы можете указать переменные окружения

      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 -- пользовательский веб-интерфейс.