Volver al inicio

◆ ARQUITECTURA TÉCNICA

Capacidades de la plataforma

CyberFort Lab combina un scanner real (387 herramientas ancladas criptográficamente) con una capa de razonamiento estilo agente autónomo, mapeo legal multi-jurisdicción y firma digital internacional. Esta página documenta cada capacidad y las garantías técnicas que ofrece.

Phase 1

Red team autorizado

Ejecución real de herramientas ofensivas solamente contra objetivos con Rules of Engagement (RoE) firmadas digitalmente.

  • Tabla `engagements` en Postgres registra RoE por cliente con firma HMAC-SHA256.
  • El maestro verifica RoE activa antes de despachar cualquier herramienta intrusiva.
  • Si no hay RoE válida, la ejecución retorna "blocked-no-roe" con mensaje legal — nunca ejecuta y nunca falla silenciosamente.
  • Bitácora completa por engagement: cada tool-call queda asociada a la RoE autorizante.

Phase 2a

Supply chain hardening

Cada binario instalado en el scanner VPS queda anclado y verificado criptográficamente — cero confianza en releases mutables.

  • Manifest-lock JSON por herramienta con SHA-256 pin de tarball/git-commit.
  • Verificación en build-time (script `verify-manifest.sh`) y en runtime antes de invocar cada binario.
  • Clones de git fijados a commit específico (no a tag mutable).
  • Scanner corre como usuario no-root con solo las capabilities mínimas (CAP_NET_RAW para sockets crudos).

Phase 3

Razonamiento avanzado

Ciclo cerrado planner → executor → critic → rerun dirigido → re-crítica. El maestro descompone objetivos, ejecuta en fases, audita hallazgos contra los criterios esperados y, si detecta brechas críticas en un agente, lo re-ejecuta y re-evalúa antes de cerrar.

  • Planner genera plan estructurado (ReasoningPlan) con pasos dependientes y presupuesto estimado.
  • Executor corre cada paso con tracking de token budget — aborta si excede el límite del engagement.
  • Critic revisa hallazgos contra criterios MITRE / OWASP y emite veredicto con puntuación por agente.
  • Si el Critic recomienda rerun del agente más débil, el maestro lo re-ejecuta y vuelve a evaluar (segunda crítica) antes de cerrar — los flags de rerun se limpian para no entrar en bucle.
  • Orquestador en `master.ts` integra todo detrás del flag `FEATURE_ADVANCED_REASONING`.

Phase 4

Compliance multi-jurisdicción

Mapeo automático de cada hallazgo a la ley aplicable según la jurisdicción del objetivo — sección legal nativa del reporte.

  • 6 jurisdicciones cubiertas: CO (Ley 1581, 1273, SIC 002/2024), EU (GDPR, NIS2), US (HIPAA, PCI DSS, SOX), MX (LFPDPPP), BR (LGPD), CL (Ley 19.628).
  • 22 artículos mapeados con source_url al texto oficial de cada normativa.
  • Autodetección por TLD con override manual (ej. cliente LATAM alojado en .com).
  • Disclaimer legal obligatorio en cada exposición generada.

Phase 5

Firma digital + timestamping

Reportes firmados con cadena de integridad verificable públicamente: SHA-256 + timestamp RFC 3161 + ancla Bitcoin vía OpenTimestamps.

  • SHA-256 del contenido íntegro del reporte, almacenado en tabla `reporte_firmas`.
  • Timestamp RFC 3161 vía TSA pública gratuita (prueba criptográfica de existencia en fecha).
  • Ancla OpenTimestamps en el calendario Bitcoin — verificable por cualquier nodo, sin autoridad central.
  • Endpoint `GET /api/reportes/[id]/verificacion` emite Markdown con instrucciones de verificación.
  • Modo degradado: si una capa TSA/OTS no está disponible, persiste el hash y emite evento `reporte_firma_degradada` para monitoreo.

Phase 6

Demo en vivo

Modo presentación a pantalla completa que reproduce los hallazgos críticos del scan con animación asciinema y opción de re-ejecutar en vivo bajo confirmación del cliente.

  • Captura automática de comandos y stdout durante el scan (sanitizados — sin secretos).
  • Lista blanca estricta de 11 herramientas recon/pasivas para replay seguro.
  • El servidor re-verifica RoE y replay-safety en cada POST a `execute-live` — nunca confía en el cliente.
  • stdout cap 4 KB + sufijo `[truncated]`, stderr cap 1 KB, destructive-pattern guard.
  • Stream SSE al navegador con stdout en vivo mientras la herramienta corre.