Architecture
DSP separates activity generation, event recording, validation/reporting, and security-platform confirmation so a customer POC can preserve a clear evidence boundary.High-level flow
Operator layer
The user-facing product has two interfaces:dsp-menu.sh— SSH-friendly operator menu usingwhiptailwhen availabledsp— primary CLI for advanced or automated operation
RunManager
RunManager orchestrates the run lifecycle. The CLI resolves a profile or explicit scenario list, validates target scope, selects an execution provider, streams progress, and delegates scenario execution to the manager.
Operational profiles
Current profile-driven runs use this ordered scenario plan:Scenario plugin model
Scenario code is isolated underscenarios/<id>/, typically with a manifest and Python implementation. The plugin loader discovers scenarios and exposes active IDs to the run planner.
This allows scenario coverage to grow without turning the operator interface into a large collection of low-level switches.
Local provider
Local execution runs scenario code from the DSP host and writes structured events directly into the local run pipeline.Webshell provider
The webshell provider dispatches execution to an authorized remote host. The remote side creates anevents.jsonl bundle, which is retrieved and imported into the local Event Store.
The release-validated remote paths are JSP/Tomcat and PHP/Apache. ASPX/IIS remains preview.
Event Store as source of truth
The Release 1.0 architecture uses SQLiteevents.db as the append-only source of truth for a run. Portable JSONL is used for export and remote event transfer.
The Event Store feeds:
- validation
- reporting
- evidence export
- manual verification packages
Evidence and detection boundary
DSP’s core pipeline ends with evidence that a human or optional adapter can compare with the security platform.ValidationResult.
Optional detection confirmation
The CLI currently exposes--confirm-detection with three Stellar client modes:
manual— generate evidence templates without an APImock— deterministic local responses for CI/demohttp— experimental live Stellar HTTP client
Important design boundary
DSP is a Detection Scenario Platform, not an automated compromise verifier. The architecture intentionally avoids derivingattack_success, vendor alert truth, or XDR case success from traffic generation alone.