Documento técnico sobre seguridad y privacidad (descripción general)Chapter 9

Capítulo 9 Seguridad web y aislamiento del cliente

La capa web es la superficie más expuesta. Este capítulo define la postura básica de seguridad web de FileBolt: CSP y cabeceras estrictas, sin scripts de terceros en las páginas sensibles y medidas defensivas contra la inyección y el abuso de la interfaz.

9.1 Amenazas

  • XSS, inyección en el DOM, scripts de la cadena de suministro, clickjacking y ataques de superposición de la interfaz (UI redress).
  • Inyección de prompts o engaños en la interfaz para que los usuarios revelen enlaces o secretos.
  • Robo de tokens por almacenamiento inseguro o por fuga a través del referrer.

9.2 Aislamiento de páginas

  • Las páginas sensibles (descarga y descifrado) DEBERÍAN evitar los scripts de terceros y reducir al mínimo las dependencias.
  • El aislamiento entre orígenes PUEDE usarse cuando haga falta para funciones de rendimiento o seguridad, pero DEBE seguir siendo compatible.
  • Las páginas DEBERÍAN aplicar políticas de referrer estrictas para evitar la fuga de URL.

9.3 Defensas contra la inyección y protección frente al abuso de la interfaz

  • Toda entrada no confiable DEBE escaparse o sanearse antes de insertarse en el DOM.
  • No muestres HTML no confiable. Es preferible representar texto y usar plantillas seguras.
  • Cuando existan nombres o metadatos controlados por el usuario, aplica restricciones de longitud y de caracteres.

9.4 Cabeceras de seguridad y políticas del navegador

9.4.1 Cabeceras recomendadas (a modo de ejemplo)

  • Content-Security-Policy con un script-src restrictivo y un connect-src adecuado.
  • Referrer-Policy: no-referrer o strict-origin-when-cross-origin, según los requisitos de la página.
  • X-Content-Type-Options: nosniff, Permissions-Policy y HSTS (consulta el capítulo 5).

9.5 Evidencias verificables

  • Los enlaces públicos a informes de terceros se agrupan en /status.
  • La evidencia se centra en la postura básica de seguridad web (TLS, cabeceras); las afirmaciones de conocimiento cero a nivel de protocolo se respaldan con restricciones de diseño e ID de afirmaciones.