Ir al contenido

Threat model self-host

Mapa orientado a operadores, no un informe de pentest. Arreglá lo de abajo antes de anunciar un build self-host público de forma amplia.

Límite Confianza Notas
Browser → Worker (apex) Cookie de sesión / API token CSRF vía SameSite; CORS a orígenes de la app
HTML del artefacto → data API Artefacto + capability tokens Sandbox / CSP; ARTIFACT_ORIGIN opcional
/internal/admin/* Bearer ADMIN_BRIDGE_SECRET Dejar unset en OSS — sin secret deniega todo
UI super-admin Roster / SETUP_ADMIN_EMAIL / primer usuario Self-host: roster vacío + primer signup
Email OTP Turnstile (si está) + caps DB por email + KV por IP Códigos a logs si EMAIL no está bound
Superficie Mecanismo
POST /v1/publish Cuota diaria D1 (api-auth)
POST …/present Cuota D1 present (10/hora)
Email OTP start/verify Ventanas KV por IP + caps DB por email
POST /v1/access-requests KV por usuario
Abuse público /report/* KV anonymous + IP confiable de CF
POST /internal/admin/ask KV (requiere bridge secret)
  1. No setees ADMIN_BRIDGE_SECRET salvo que corras un bridge worker aparte que controles.
  2. Seteá un SESSION_SECRET largo y único.
  3. Mantené artefactos privados hasta entender open visibility / moderación.
  4. Habilitá Turnstile para OTP si la instancia es internet-facing.
  5. Revisá WAF / bot fight mode de Cloudflare en tu zona.
  6. Reportá vulns vía SECURITY.md.

Todavía abierto para un audit de launch completo

Sección titulada «Todavía abierto para un audit de launch completo»
  • Inventario más amplio de mutaciones (rutas de moderación admin están gated por sesión super-admin — sin cuota KV extra todavía).
  • Fuzz automatizado de capability-token / paths CDN.
  • Review independiente de escapes del sandbox de artefactos.

Ver también: Ops · Secrets.