Todos los endpoints (excepto /api/login y la entrega del stager) requieren un JWT válido en la cabecera Authorization: Bearer <token>.
Content-Type: application/json
{ "username": "admin", "password": "tucontraseña" }
Devuelve { "token": "..." }.
| Método | Endpoint | Descripción |
|---|
| GET | /api/sessions | Listar todas las sesiones |
| GET | /api/sessions/{id} | Obtener detalle de sesión |
| DELETE | /api/sessions/{id} | Eliminar sesión |
| PATCH | /api/sessions/{id} | Actualizar tags, notas, estado de detección |
| Método | Endpoint | Descripción |
|---|
| POST | /api/sessions/{id}/task | Enviar una tarea |
| GET | /api/sessions/{id}/tasks | Listar historial de tareas |
| Método | Endpoint | Descripción |
|---|
| POST | /api/sessions/{id}/upload | Preparar un archivo para subida |
| GET | /api/sessions/{id}/download/{filename} | Descargar archivo exfiltrado |
| Método | Endpoint | Descripción |
|---|
| POST | /api/stager | Crear un token stager |
| GET | /api/stager | Listar tokens activos |
| DELETE | /api/stager/{token} | Revocar un token |
| Método | Endpoint | Descripción |
|---|
| POST | /api/report | Generar reporte |
Body: { "session_ids": [...], "format": "md|html|pdf", "start": "fecha ISO", "end": "fecha ISO" }
| Método | Endpoint | Descripción |
|---|
| GET | /api/topology | Obtener grafo completo de topología de red |
Las actualizaciones en tiempo real se envían por WebSocket en /ws. Los eventos incluyen:
agent_checkin — nuevo beacon conectado
task_result — salida de tarea disponible
pty_output — fragmento de datos PTY
tunnel_status — cambio de estado del túnel SOCKS5
chat_message — mensaje del chat del operador