Skip to content

feat: add server-side Sigma conversion workbench - #56

Merged
egrexsec merged 7 commits into
feat/detection-content-spec-v1from
feat/sigma-conversion-service
Jul 29, 2026
Merged

feat: add server-side Sigma conversion workbench#56
egrexsec merged 7 commits into
feat/detection-content-spec-v1from
feat/sigma-conversion-service

Conversation

@egrexsec

@egrexsec egrexsec commented Jul 27, 2026

Copy link
Copy Markdown
Owner

Summary

  • add an optional FastAPI service for server-side pySigma conversion
  • register only pinned Splunk, Elastic EQL, Elastic ES|QL, and Microsoft Kusto backends
  • enforce safe parsing, a 256 KiB source limit, bounded response timeout, structured errors, and explicit CORS origins
  • receive isolated worker results concurrently so complete near-limit responses cannot deadlock behind the multiprocessing pipe buffer
  • return canonical source hashes plus converter package/version provenance
  • add workbench conversion controls with loading, error, provenance, and stale-output states
  • reject in-flight conversion responses when the authored Sigma source or request generation changes
  • preserve static GitHub Pages compatibility by using an operator-configured external API origin
  • await Next 16 dynamic-route params before resolving content lanes

Validation

  • 16 Python contract/API/backend tests passed
  • 16 Node workbench/content/dynamic-route tests passed
  • Next.js 16.2.12 production static build passed
  • Bandit passed with no reported findings
  • npm audit --omit=dev reported 0 vulnerabilities
  • live local smoke: /healthz, /v1/backends, and Splunk /v1/convert returned HTTP 200
  • git diff --check

Security and deployment boundaries

  • binds to localhost in documented examples
  • authentication, TLS, and rate limiting must be added at a reverse proxy before broader exposure
  • no query deployment or live SIEM validation occurs
  • authored Sigma remains canonical; generated outputs are derived and marked stale after source edits

Stack

This is intentionally based on the shared-contract branch and should be reviewed/merged after #55.

@egrexsec
egrexsec force-pushed the feat/sigma-conversion-service branch from 5fc8a9f to d02db62 Compare July 27, 2026 17:17
@egrexsec
egrexsec marked this pull request as ready for review July 29, 2026 17:13
@egrexsec
egrexsec merged commit 1530f9c into feat/detection-content-spec-v1 Jul 29, 2026
2 checks passed
@egrexsec
egrexsec deleted the feat/sigma-conversion-service branch July 29, 2026 17:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant