V++CEOO Tecnologías
Reporte de seguridad · SEC-VPP-1.0

Defensas activas.

El runtime V++ aplica capas de seguridad verificables al servir cualquier sitio. Cada capa está implementada en V++ puro o en primitivas propias del intérprete. Este documento es público y auditable. A · todas las defensas activas

1. Modelo de amenazas considerado

VectorMitigaciónEstado
Inyección de código vía body HTTPred_analizar_peticion parsea texto crudo, no evalúaactiva
Inyección de comandos via archivo_*Modo VPP_SAFE=1 desactiva todas las primitivas FSactiva
Escape de path traversalarchivo_leer(DIR + nombre) con DIR constante; nombres no provienen del usuarioactiva
XSS reflejadoNo se incrusta entrada del usuario en HTML sin escaparactiva
CSRF en /loginCookie SameSite=Lax + sin permitir GET con efectosactiva
Robo de cookie de sesiónHttpOnly impide acceso JS; SameSite=Lax impide envío cross-siteactiva
Brute force al loginToken único compartido + form sin enumeración de cuentasactiva
Crash del proceso → caída del sitioKeepAlive en LaunchAgent + try/except por peticiónactiva
Información en respuesta de errorred_responder_http 500 no expone stack al cliente públicoactiva
Sniffing en tránsitoTunnel Cloudflare → TLS 1.3 obligatorioactiva
Cabeceras de seguridad faltantesInyectadas por red_responder_httpactiva

2. Defensas implementadas en V++

2.1 Sesión y autenticación

2.2 Sandbox del intérprete

La variable de entorno VPP_SAFE=1 desactiva las primitivas peligrosas (red_*, archivo_*, sistema_*). El sandbox público del Playground (/api/ejecutar) corre con VPP_SAFE=1. Los servidores en producción usan VPP_SAFE=0 porque necesitan red y disco — su única superficie de exposición es la red, no la ejecución de código de usuario arbitrario.

2.3 Headers HTTP

Cada respuesta de red_responder_http incluye automáticamente:

Content-Type: <tipo> Content-Length: <tamaño> X-Served-By: V++ propio Connection: close

Y vía Cloudflare (capa edge):

strict-transport-security: max-age=31536000 (HSTS) content-security-policy: default-src 'self'; … x-content-type-options: nosniff x-frame-options: SAMEORIGIN

2.4 Manejo de errores

Cada petición se atiende en un try/except aislado. Si el handler lanza excepción, la respuesta es 500 con detalles solo en inspección local; en producción detrás de Cloudflare el traceback se filtra. Si el handler retorna nulo, respuesta 204 No Content (defensiva).

2.5 Rate y carga

socket.listen(64) limita la cola de conexiones simultáneas. conn.settimeout(2.0) evita peticiones eternas (slowloris). Payloads mayores a 64 KB se cortan. Cada petición se procesa secuencialmente, evitando race conditions.

2.6 Validación de input

red_analizar_peticion parsea bytes UTF-8 con errors='replace' — no crashea por bytes malformados. Form-data se extrae con unquote_plus (saneamiento estándar). Cookies se parsean por separador y comparan claves exactas.

2.7 Trazabilidad

Toda mejora al runtime queda anotada en la bitácora con SHA-256 del intérprete tras el cambio. Cada cambio puede sellarse en BlockCEOO automáticamente.

3. Pendientes documentados (no críticos)

ÍtemPlan
Rate limiting por IP en /loginF.sec-rate · contador en memoria con TTL
2FA TOTPF.sec-2fa · primitiva totp_verificar
Logs de acceso firmados Ed25519F.sec-logs · firma cada línea con firma CEOO
Auditoría automática LighthouseF.sec-audit · CI corre headers + perf cada deploy
Rotación automática de TOKEN_OKF.sec-token · expira y se regenera cada 7 días

4. Verificación pública

Cualquier visitante puede comprobar las defensas activas:

5. Versionado

SEC-VPP-1.0 · 18 de mayo de 2026 · primera publicación. Próxima revisión al implementar F.sec-rate / F.sec-2fa / F.sec-logs.

Sigue

Para entender cómo V++ ejecuta un servidor web entero con primitivas propias, visita /runtime. Para ver la especificación completa: /spec.