TMAegis

Плагины

Установка, настройка и разработка плагинов.

Плагины запускаются после проверки и получают отчёт JSON через стандартный ввод. С их помощью можно отправлять уведомления, создавать заявки или передавать данные в SIEM.

Установка и включение

shell
tmaegis plugin install github.com/tmaegis/plugin-slack-notify   # file, URL or GitHub release
tmaegis plugin install ./my-plugin.wasm --sha256 <digest>       # pin the digest
tmaegis plugin list
tmaegis scan --auto-detect --plugin slack,jira

Плагины ищутся в каталоге плагинов (по умолчанию ./plugins, изменить можно через --plugin-dir). Чтобы включить их постоянно, укажите их в config.yaml в разделе plugins.enabled.

Напишите свой

Исполняемый плагин — это файл с именем tmaegis-plugin-<name> (на любом языке). Он читает отчёт JSON о проверке из stdin, а параметры — из переменных окружения.

shell
#!/usr/bin/env sh
# TMAegis notifier plugin: posts a scan summary somewhere.
set -eu
PAYLOAD=$(cat)
FAILED=$(printf '%s' "$PAYLOAD" | grep -o '"failed_count":[0-9]*' | head -n1 | cut -d: -f2)
echo "failed controls: ${FAILED:-0}"

Плагины WebAssembly выполняются в песочнице (wazero) и не имеют доступа к хосту, пока он не предоставлен.

Доступные плагины

  • jiraОфициальныйТип: executable

    TMAegis ITSM plugin: opens one Jira issue per failed critical/high control.

    plugins/tmaegis-plugin-jira.py

  • notify-webhookОфициальныйТип: executable

    Sample TMAegis Executable Plugin

    plugins/tmaegis-plugin-notify-webhook.sh

  • slackОфициальныйТип: executable

    TMAegis notifier plugin: posts a scan summary to a Slack incoming webhook.

    plugins/tmaegis-plugin-slack.sh

  • telegramОфициальныйТип: executable

    TMAegis notifier plugin: sends a scan summary to a Telegram chat.

    plugins/tmaegis-plugin-telegram.sh

  • pci-dss-v4СообществоТип: wasm

    Maps findings to PCI DSS v4.0 requirements. Community plugin: contributions welcome.

    github.com/tmaegis/plugin-pci-dss

Редактировать страницу на GitHub