外掛程式
安裝、設定與撰寫外掛程式。
外掛程式在掃描後執行,並透過標準輸入接收 JSON 報告。可用它們發送通知、建立工單或推送到 SIEM。
安裝與啟用
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> 的檔案(任何語言均可)。它從 stdin 讀取 JSON 掃描報告,並從環境變數讀取其設定。
#!/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官方類型: executableTMAegis ITSM plugin: opens one Jira issue per failed critical/high control.
plugins/tmaegis-plugin-jira.py
notify-webhook官方類型: executableSample TMAegis Executable Plugin
plugins/tmaegis-plugin-notify-webhook.sh
slack官方類型: executableTMAegis notifier plugin: posts a scan summary to a Slack incoming webhook.
plugins/tmaegis-plugin-slack.sh
telegram官方類型: executableTMAegis notifier plugin: sends a scan summary to a Telegram chat.
plugins/tmaegis-plugin-telegram.sh
pci-dss-v4社群類型: wasmMaps findings to PCI DSS v4.0 requirements. Community plugin: contributions welcome.
github.com/tmaegis/plugin-pci-dss