Seguridad y cumplimiento

Seguridad que se verifica, no que se declara

Esta página se audita a sí misma. Abajo verá los controles que su propio navegador confirma en este momento y las cabeceras exactas con las que el servidor entregó el documento que está leyendo.

Auto-auditoría

Controles activos en su navegador

ejecutando pruebas…

    Las pruebas se ejecutan localmente: intentamos inyectar un script en línea y escribir HTML sin política de confianza, y reportamos si el navegador lo impidió. Nada se envía a ningún servidor.

    Defensa en profundidad

    Siete capas, no un candado

    Transporte

    TLS 1.2+ obligatorio, HSTS con preload y redirección permanente desde HTTP.

    HSTS

    Política de contenido

    CSP estricta: sin unsafe-inline, sin orígenes externos, nonce por petición.

    CSP

    Anti-XSS estructural

    Trusted Types: todo HTML inyectado pasa por una única política auditada.

    TT

    Aislamiento

    COOP, CORP y frame-ancestors 'none' contra clickjacking y fugas entre orígenes.

    COOP

    Abuso y automatización

    Límite de tasa por IP, tamaño máximo de cuerpo, tiempos de espera y trampa anti-bot.

    Rate limit

    Validación e integridad

    Todo lo que llega del cliente se vuelve a validar en el servidor. Token CSRF de doble envío.

    CSRF

    Trazabilidad

    Registro estructurado de cada solicitud con IP anonimizada y sin datos personales en claro.

    Audit log

    Inspector

    Las cabeceras con las que llegó esta página

    Leídas con una petición HEAD a esta misma URL. Si aparece «ausente», es un hallazgo real de configuración, no una omisión del texto.

    Cabeceras de seguridad entregadas por el servidor
    CabeceraPara qué sirveEstado
    Consultando…

    Consultando el servidor…

    Arquitectura

    Un gateway en Rust (o en Java) delante del sitio

    El HTML, el CSS y el JavaScript de un sitio corren en el navegador del visitante: ahí no hay dónde esconder un secreto ni cómo hacer cumplir una regla. Por eso todo lo que debe ser seguro vive en el servidor, y ese servidor lo escribimos en lenguajes con garantías fuertes.

    • Rust: sin punteros colgantes ni desbordamientos de búfer por diseño — la clase de fallas que produce los CVE más graves en servidores web simplemente no compila.
    • Java (Spring Boot): misma funcionalidad para las organizaciones que ya operan sobre JVM y necesitan integrarse a su plataforma corporativa.
    • Idénticos por contrato: ambos aplican las mismas cabeceras, el mismo límite de tasa y las mismas reglas de validación. Elegir uno u otro no cambia la postura de seguridad.
    • Contenedor mínimo: imagen sin shell, usuario sin privilegios, sistema de archivos de solo lectura y límites de CPU y memoria explícitos.

    Lo que hace el gateway en cada petición

    1. Genera un nonce aleatorio y lo inserta en la CSP y en el documento.
    2. Normaliza la ruta y rechaza cualquier intento de salir del directorio publicado.
    3. Aplica el límite de tasa por IP y corta las solicitudes que exceden el tamaño o el tiempo permitido.
    4. Fija las diez cabeceras de seguridad y elimina las que revelan el software del servidor.
    5. En /api/contacto: verifica el token CSRF, valida cada campo, descarta la trampa anti-bot y exige el consentimiento.
    6. Registra el resultado con la IP truncada, sin escribir datos personales en la bitácora.

    Código en gateway-rust/ y gateway-java/. Se levanta con up.ps1; no requiere instalar Rust ni Java: ambos se compilan dentro de Docker.

    Cumplimiento

    Contra qué marco se audita este sitio

    Referencias técnicas y verificables. Esto es ingeniería de seguridad, no una certificación ni asesoría legal.

    ISO/IEC 27002:2022 — controles aplicados

    5.34 privacidad y protección de datos personales · 8.9 gestión de la configuración · 8.16 monitoreo de actividades · 8.20 seguridad de redes · 8.23 filtrado web · 8.24 uso de criptografía (TLS 1.2+, secretos fuera del código) · 8.26 requisitos de seguridad de aplicaciones (validación de entrada en servidor) · 8.28 codificación segura (cero dependencias de terceros, lenguaje con seguridad de memoria).

    OWASP Top 10 (2021)

    A01 Control de acceso: ruta normalizada, sin listado de directorios. A02 Fallas criptográficas: TLS obligatorio y HSTS. A03 Inyección: sin SQL en el borde; todo dato del cliente se trata como texto. A04 Diseño inseguro: límite de tasa y tamaño desde el primer día. A05 Configuración incorrecta: diez cabeceras fijadas por el servidor, no por el HTML. A06 Componentes vulnerables: cero librerías de frontend. A07 Identificación: el sitio público no maneja sesiones de usuario. A09 Registro: bitácora estructurada de cada solicitud.

    Ley 21.719 (Chile) y privacidad

    Consentimiento explícito y sin casilla premarcada antes de enviar el formulario; finalidad declarada en la misma pantalla; minimización de datos (solo lo necesario para responder); sin cookies de seguimiento, sin analítica de terceros y sin píxeles; IP anonimizada en los registros. La política de retención y el registro del consentimiento se definen al conectar el destino final de los formularios.

    WCAG 2.1 nivel AA

    1.4.3 contraste · 1.4.10 reflujo · 1.4.11 contraste no textual · 2.1.1 teclado · 2.4.1 evitar bloques · 2.4.7 foco visible · 2.5.5 tamaño del objetivo · 2.3.3 animación por interacción · 3.3.1 y 3.3.3 identificación y sugerencia ante errores. Todo el movimiento se apaga con prefers-reduced-motion.

    Transparencia

    Riesgo residual declarado

    Lo que todavía depende del despliegue o de una decisión del cliente. Preferimos escribirlo antes de que lo encuentre una auditoría.

    • TLS y HSTS son responsabilidad del hosting o del balanceador: el gateway los exige, pero no emite el certificado.
    • Destino del formulario: hoy el gateway valida y registra la solicitud; conectar el CRM o el buzón definitivo requiere definir retención y responsable del dato.
    • Métricas publicadas corresponden a rangos observados en proyectos de la cartera; se sustituyen por cifras auditadas cuando el cliente autoriza publicarlas.
    • Aviso de privacidad y términos deben publicarse y enlazarse desde el pie antes de salir a producción.

    ¿Su base de datos resistiría una auditoría el lunes?

    Revisamos privilegios, cifrado, respaldos y trazabilidad, y le entregamos los hallazgos priorizados por severidad.

    navegarEnter irEsc cerrar