README.md

Поддержка языка XP в Visual Studio Code

Documentation Status Telegram chat Telegram chat

Язык eXtraction and Processing (XP) используется для создания правил преобразования данных в процессе обработки событий. На языке XP вы можете разрабатывать правила нормализации, корреляции и обогащения событий.

Настоящее расширение разработано Dmitry Fedosov и контрибьютерами, оно позволяет разрабатывать и тестировать правила в VSCode и VSCodium, а также публиковать их в необходимый для вашего продукта формат.

Руководство по работе с расширением: https://vscode-xp.readthedocs.io/

Основные возможности

Возможности расширения:

  • Просмотр и редактирование правил нормализации, агрегации, корреляции, обогащения и табличных списков.
  • Создание из шаблонов правил корреляции, обогащения и нормализации.
  • Просмотр, редактирование, создание интеграционных и модульных тестов для правил корреляции, обогащения и нормализации.
  • Запуск интеграционных и модульных тестов для правил корреляции, обогащения и нормализации.
  • Автоматическое дополнение ключевых слов, функций и типовых конструкций языка XP и полей таксономии.
  • Статическая валидация исходного кода на типичные ошибки.
  • Заполнение метаданных правил.
  • Создание и редактирование правил локализации правил.
  • Сбор графов правил, схемы и БД табличных списков.
  • Проверка срабатываний всего графа корреляций на необработанные события.
  • Распаковка и упаковка пакетов экспертизы в файлы формата KB.

Примечание. Для этих операций расширение использует дополнительные утилиты, которые доступны в отдельном репозитории.

Использование проекта VSCode XP Workspace

Вы можете легко получить готовое окружение для разработки на XP, если воспользуетесь проектом VSCode XP Workspace. В нём всё собрано в единый Docker-контейнер, а редактирование происходит через веб-версию VSCode. Подробности в репозитории проекта.

Нормализация событий

Для написания правил корреляции, в общем случае, Вам потребуются формулы нормализации событий. В нашем открытом репозитории с экспертизой вы cможете найти базовые формулы нормализации. В будущем там появятся другие виды правил на языке XP, созданные сообществом.

Разработчикам

Разработкой расширения занимается сообщество Security Experts Community. Вы можете принять участие в проекте и внести в него свою экспертизу. Актуальный список задач проекта публикуется в списке задач. В удобном виде со списком задач можно ознакомиться в проекте репозитория.

Компиляция

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

  1. Установите VSCode.

  2. Установите Node.js.

  3. Создайте локальную копию репозитория:

git clone https://github.com/Security-Experts-Community/vscode-xp
  1. В корне проекта выполните команду npm install.

Репозитории

Основной на GitHub: https://github.com/Security-Experts-Community/vscode-xp

Зеркало на Codeberg: https://codeberg.org/Security-Experts-Community/vscode-xp

Зеркало на GitFlic: https://gitflic.ru/project/security-experts-community/vscode-xp

Сборка расширения в установочный пакет

Перед сборкой установочного пакета расширения (*.vsix-файл) вам нужно в корне проекта выполнить команду npm install -g vsce.

Чтобы собрать установочный пакет расширения, выполните команду vsce package -o vscode-xp.vsix или запустите скрипт publish.py в корне проекта.

Конвейеры
0 успешных
0 с ошибкой