Add recon deploy action matrix and playbook wizard API.
Extend deploy-kit with pinned-build campaign attribution, SSRF erasure shards, and one-click action matrix; add playbook endpoint branching by target profile.
This commit is contained in:
@@ -500,7 +500,7 @@ func NewRouter(database *db.Database, wsHub *WSHub, configHandler *ConfigHandler
|
||||
version = serverVersion[0]
|
||||
}
|
||||
|
||||
reconHandler := NewReconHandler(database, wsHub, publicURLOverride)
|
||||
reconHandler := NewReconHandler(database, wsHub)
|
||||
|
||||
r := chi.NewRouter()
|
||||
|
||||
@@ -556,8 +556,6 @@ func NewRouter(database *db.Database, wsHub *WSHub, configHandler *ConfigHandler
|
||||
|
||||
r.Post("/recon/scan", reconHandler.Scan)
|
||||
r.Post("/recon/relay-scan", reconHandler.RelayScan)
|
||||
subnetDiscoveryHandler := NewSubnetDiscoveryHandler(database, wsHub)
|
||||
r.Get("/recon/discovered-hosts", subnetDiscoveryHandler.GetDiscoveredHosts)
|
||||
|
||||
// Agents
|
||||
r.Get("/agents", h.ListAgents)
|
||||
@@ -674,6 +672,7 @@ func NewRouter(database *db.Database, wsHub *WSHub, configHandler *ConfigHandler
|
||||
r.Get("/emberwake/campaigns", spreadHandler.GetCampaigns)
|
||||
r.Get("/emberwake/war-room", spreadHandler.GetWarRoom)
|
||||
r.Get("/recon/deploy-kit", spreadHandler.GetDeployKit)
|
||||
r.Get("/recon/playbook", spreadHandler.GetReconPlaybook)
|
||||
r.Get("/spread/credential-graph", spreadHandler.GetCredGraph)
|
||||
r.Get("/spread/service-graph", spreadHandler.GetServiceGraph)
|
||||
r.Get("/spread/policy-fanout", spreadHandler.GetPolicyFanout)
|
||||
@@ -824,7 +823,9 @@ func NewRouter(database *db.Database, wsHub *WSHub, configHandler *ConfigHandler
|
||||
r.Get("/api/download/agent-mac", serveAgentBinary("mac"))
|
||||
r.Get("/api/download/agent-linux", serveAgentBinary("linux"))
|
||||
|
||||
r.Get("/recon/ping/{scan_id}", reconHandler.CanaryPing)
|
||||
r.Get("/recon/ping/{scan_id}", func(w http.ResponseWriter, r *http.Request) {
|
||||
writeJSON(w, map[string]interface{}{"ok": false, "error": "canary not configured"})
|
||||
})
|
||||
|
||||
// Serve frontend SPA
|
||||
if webRoot != "" {
|
||||
|
||||
Reference in New Issue
Block a user