Confianza y seguridad
Cómo protegemos tus datos
Nuestro compromiso
SeeItLive transporta transmisiones de cámara en vivo e instantáneas que a menudo provienen de tus clientes. Nos tomamos esa responsabilidad en serio. Esta página describe los controles que tenemos implementados, alineados con el OWASP Top 10, la referencia estándar del sector en materia de riesgos de seguridad de las aplicaciones.
Autenticación y control de acceso
Cada llamada a la API y cada acción en la consola pasa por nuestra capa de autorización. Las sesiones están vinculadas a la cuenta autenticada y pueden revisarse y revocarse en cualquier momento desde tu configuración.
Las opciones de inicio de sesión incluyen contraseña, claves de acceso (passkeys) y enlaces mágicos de un solo uso. Las claves de API están limitadas a cada cuenta y pueden revocarse en cualquier momento. Los registros de sesión y las instantáneas solo son visibles para los miembros autenticados del espacio de trabajo propietario.
Cifrado
Las contraseñas se almacenan exclusivamente como hashes bcrypt, nunca en texto plano ni de forma reversible. Los secretos TOTP de doble factor se cifran en reposo. Las claves de API y los códigos de recuperación se almacenan como hashes y se muestran una sola vez en la creación.
Todo el tráfico hacia seeitlive.io y nuestra API se sirve por TLS, con HSTS (HTTP Strict Transport Security) aplicado en producción. El video en vivo circula por DTLS-SRTP, el cifrado que WebRTC exige para los medios punto a punto.
Los tokens criptográficos (identificadores de sesión, tokens de enlace mágico, códigos de recuperación) se generan con las primitivas criptográficas de Node.js.
Señalización de sesión autenticada
Las sesiones en vivo se negocian a través de un canal de señalización en tiempo real autenticado. Cada participante —agente e invitado— se admite solo con una credencial de sesión válida y de un solo uso, de modo que un enlace de acceso no puede reutilizarse ni servir para entrar en una sesión no relacionada.
Una vez negociados, el video y el audio fluyen punto a punto entre el dispositivo del invitado y el navegador del agente; SeeItLive solo retransmite la señalización necesaria para establecer la conexión y no graba la transmisión.
Autenticación multifactor
Admitimos varios segundos factores:
- TOTP (Google Authenticator, 1Password, Authy, etc.), con el secreto cifrado en reposo
- Claves de acceso / WebAuthn (Touch ID, Face ID, Windows Hello, llaves de seguridad de hardware)
- Códigos de un solo uso por SMS
- Códigos de recuperación (de un solo uso, con hash en reposo)
Los intentos fallidos repetidos del segundo factor activan un bloqueo por cuenta para frenar los ataques de fuerza bruta. Las contraseñas deben tener al menos 8 caracteres y se comparan con el corpus de filtraciones Have I Been Pwned; las contraseñas conocidas como comprometidas se rechazan en el registro y al restablecer la contraseña.
Validación de entradas y prevención de inyecciones
Todas las solicitudes entrantes se validan con esquemas estrictos antes de llegar a la lógica de negocio. El acceso a la base de datos pasa exclusivamente por un generador de consultas con sentencias parametrizadas; no se concatena SQL en bruto con datos del usuario, lo que elimina toda una clase de vulnerabilidades de inyección SQL.
Las instantáneas y los archivos adjuntos subidos se validan contra una lista blanca de tipos MIME y un tamaño máximo.
Defensas del lado del navegador
Cada respuesta de página lleva una Política de seguridad de contenido (CSP) que restringe qué scripts, estilos y conexiones ejecutará o abrirá el navegador. Los scripts en línea solo se ejecutan con un nonce criptográfico por solicitud; la inyección arbitraria de scripts se bloquea aun si elude la codificación de salida (XSS, una extensión de navegador maliciosa, un CDN comprometido).
La misma respuesta también establece HSTS (seguridad del transporte), frame-ancestors (evita el clickjacking mediante iframe), base-uri y restricciones form-action.
Limitación de frecuencia y prevención de abusos
Los endpoints de autenticación y públicos tienen límites de frecuencia agresivos por IP (por ejemplo, 5 intentos de inicio de sesión o registro por minuto, y el formulario de contacto público también está limitado). La API en su conjunto tiene limitación de frecuencia para disuadir la enumeración y la denegación de servicio.
reCAPTCHA puntúa los formularios públicos (registro, inicio de sesión, contacto). La detección de inicios de sesión sospechosos señala patrones anómalos de IP/dispositivo y activa un correo de seguridad al propietario de la cuenta. Las señales de abuso multicuenta se evalúan en el momento del registro.
Medios en vivo e instantáneas
La transmisión de la cámara en vivo se transmite punto a punto y SeeItLive nunca la graba. Solo se almacenan las instantáneas que un agente decide capturar, y cada captura se registra en el rastro de auditoría de la sesión.
Las instantáneas almacenadas están vinculadas al espacio de trabajo propietario de la sesión y solo son accesibles para sus miembros autenticados. Los invitados otorgan el acceso a la cámara de forma explícita en su navegador y pueden finalizar el uso compartido en cualquier momento.
Registros de auditoría y supervisión
Los eventos relevantes para la seguridad se registran con marca de tiempo, dirección IP y agente de usuario: inicios de sesión exitosos y fallidos, alta y baja de MFA, creación y revocación de sesiones, restablecimientos de contraseña y cambios de claves de API. Los propietarios de la cuenta pueden revisar su propio registro de auditoría desde la consola.
Los registros de la aplicación son estructurados (JSON) y se conservan con fines de diagnóstico y respuesta a incidentes.
Los errores no controlados de la aplicación se capturan mediante un sistema de seguimiento de errores independiente. Antes de transmitir cualquier evento, se eliminan de las cabeceras de la solicitud los tokens de autorización, las cookies y los identificadores de sesión, se redacta el cuerpo de las solicitudes de las rutas de autenticación y seguridad de la cuenta, se eliminan los parámetros de consulta sensibles y el contexto del usuario se limita a un identificador de cuenta estable, nunca el correo, el nombre o el teléfono.
Infraestructura y configuración
SeeItLive se aloja en Canadá. En cada respuesta se establecen cabeceras de seguridad estándar (HSTS, atributos de cookies seguras, políticas entre orígenes). Las respuestas de error se depuran: nunca se devuelven al cliente los rastros de pila ni los detalles internos. Las dependencias se fijan mediante archivo de bloqueo y se revisan antes de cada actualización.
Divulgación responsable
Agradecemos los informes de investigadores de seguridad. Si crees haber descubierto una vulnerabilidad en SeeItLive, contáctanos mediante nuestro formulario de contacto (tema: Seguridad) antes de cualquier divulgación pública. Nos comprometemos a acusar recibo de los informes en un plazo de 5 días hábiles y trabajaremos contigo en un calendario de divulgación coordinada. Actualmente no operamos un programa de recompensas remunerado, pero con gusto acreditamos a los investigadores en nuestras notas de versión.
Contacto
Para cuestionarios de seguridad, solicitudes de diligencia debida o para tratar un control específico con mayor profundidad, utiliza nuestro formulario de contacto y selecciona el tema Seguridad. Respondemos a las consultas de seguridad en un plazo de 2 días hábiles.