Las capturas de pantalla periódicas producen ruido; usted necesita los momentos que importan
El enfoque por defecto de grabación de sesión es tomar una captura de pantalla cada pocos segundos. El resultado es un índice lleno de fotogramas que se parecen entre sí — el usuario lee la página, el usuario lee la página, el usuario todavía lee la página — con eventos realmente importantes intercalados en algún punto entre dos instantáneas que llegan demasiado tarde y solo muestran el resultado.
La captura periódica también pierde la respuesta a la pregunta más importante para cualquier auditoría o investigación: ¿qué hizo el usuario? Una instantánea tomada 1,5 segundos después de un clic no muestra en qué se hizo clic. Una instantánea tomada 3 segundos después de un envío de formulario no muestra qué se escribió. En el registro de auditoría hay eventos sin contexto; en las capturas de pantalla hay contexto sin eventos. Vincularlos es trabajo manual que escala mal con el número de sesiones.
ZeroLeak usa un enfoque diferente. Las capturas de pantalla se activan en los propios eventos, no en un temporizador. Las navegaciones capturan dos capturas de pantalla — la página antes del clic y después de que la nueva página cargue — de modo que la causa y el efecto se conservan como un par. La posición del ratón se dibuja en cada captura, de modo que se vea en qué se hizo clic. Las entradas de teclado se almacenan en búfer en palabras legibles. Por debajo se graba video continuo, de modo que los huecos entre los eventos capturados todavía se puedan reproducir si hace falta.
Captura activada por eventos, video continuo, texto legible
Para cada sesión funcionan en paralelo tres subsistemas de grabación: capturas de pantalla activadas por eventos en los momentos críticos, video FFmpeg continuo a la tasa de fotogramas configurada, y un registro de eventos estructurado con entrada de teclado en búfer por palabras y actividad completa del portapapeles. Cada uno se puede activar y desactivar por servicio protegido; por defecto los tres funcionan juntos, de modo que la reconstrucción siempre sea posible.
Las capturas de pantalla se activan en eventos, no en un temporizador
Las capturas se activan por las acciones reales del usuario — clics, navegaciones de página, envíos de teclas, envíos de formulario, operaciones del portapapeles. No hay sondeo basado en tiempo que llene el disco con fotogramas vacíos. Cada captura de pantalla captura un momento importante; el índice es corto e informativo, no largo y ruidoso.
El cursor del ratón se dibuja en cada captura de pantalla
En cada captura de pantalla capturada la posición del ratón está marcada con un indicador visible — un punto rojo en las coordenadas exactas del clic o del hover. Ve en qué hizo clic el usuario, no la página que resultó del clic. Reconstrucción de la intención en un solo fotograma, no un rompecabezas de múltiples fotogramas.
Par de antes y después en cada navegación
Cuando el usuario navega se capturan dos capturas de pantalla — una de la página antes del clic, otra de la página de destino después de que el nuevo contenido cargue por completo. La causa y el efecto se conservan como un par. El revisor ve 'el usuario hizo clic en el enlace X, la siguiente página que cargó fue Y' como dos fotogramas contiguos.
Las entradas de teclado se almacenan en búfer en palabras legibles
Los eventos de tecla individuales se acumulan en un búfer que se descarga en espacio, enter, tab o una pausa corta. El resultado se lee como el texto que el usuario escribió, no como un volcado de eventos tecla a tecla. Los retrocesos se conservan como marcas [BS], de modo que las correcciones sean visibles. Las teclas repetidas (mantenidas pulsadas) se filtran. Las operaciones del portapapeles se registran por separado junto con su contenido real.
Lo que captura el subsistema de grabación
Cada mecanismo de captura se puede configurar de forma independiente por servicio protegido y funciona sin impacto en el rendimiento de la sesión del usuario. Los tres flujos (capturas de pantalla, video, registro de eventos) están alineados con marcas de tiempo, de modo que el revisor pueda pasar entre ellos sin problemas.
Activadores de captura de pantalla por eventos
Las capturas de pantalla se activan en clics del usuario, navegaciones (con par de antes y después), envíos de formulario, envíos de teclas (Enter), operaciones del portapapeles (copiar, cortar, pegar), capturas activadas manualmente desde la consola del operador y varios otros tipos de eventos importantes. La lista exacta de eventos se puede configurar por servicio protegido.
Espera de network-idle para las capturas de navegación
En una navegación, la captura de pantalla de destino se captura solo después de que la nueva página termine de cargar — esperando a que la red se vacíe más un breve retardo de render adicional. La captura de pantalla capturada muestra la página tal como el usuario realmente la verá, no un estado intermedio a medio cargar.
Video FFmpeg continuo a la tasa de fotogramas configurada
Bajo las capturas de pantalla activadas por eventos, la sesión se graba de forma continua en video usando x11grab de FFmpeg. La tasa de fotogramas se puede configurar (por defecto 10 fps para archivos compactos; tasas más altas disponibles para captura de alto detalle). El video se divide en segmentos para un streaming y replay seguros; los segmentos llevan marca de tiempo para alinearse con los flujos de capturas de pantalla y de registro de eventos.
Registro de entrada de teclado en búfer por palabras
Los eventos de tecla se acumulan en un búfer que se descarga en los límites de palabra (espacio, enter, tab) o después de una pausa breve vacía. La cadena descargada se lee como texto — 'hola mundo [BS][BS][BS][BS][BS]adiós mundo' — conservando la intención y las correcciones del usuario sin el ruido de cada evento keydown individual.
Actividad del portapapeles capturada junto con el contenido
Las operaciones de copiar, cortar y pegar se registran por separado de las entradas de teclado, incluyendo el contenido real del portapapeles correspondiente. Un revisor ve exactamente qué se copió y qué se pegó, no solo que ocurrió un evento del portapapeles.
Numeración secuencial y búsqueda
Las capturas de pantalla se numeran de forma secuencial (0001, 0002, ...) y se almacenan junto con la marca de tiempo y los metadatos del evento. La consola del operador las lista junto con el evento que las activó, de modo que el revisor pueda saltar directamente al momento que le interesa — por ejemplo, todas las capturas activadas por el portapapeles en una sesión o el par de navegación en torno a una URL concreta.
Registro de eventos — qué se registra más allá de los clics
Más allá de las capturas de pantalla y el video, un registro de eventos estructurado captura el historial de interacción del usuario con todo el contexto. Cada evento tiene un tipo, una marca de tiempo, una referencia a una captura de pantalla asociada (cuando aplica) y su payload correspondiente. Eso es lo que hace el registro no solo hojeable visualmente, sino buscable y analíticamente útil.
Clics del ratón junto con coordenadas y elemento de destino
Cada evento de clic registra las coordenadas x/y y el elemento del DOM bajo el cursor (etiqueta, clase, ID, contenido de texto cuando está disponible). El revisor puede buscar en la grabación de sesión los clics en un botón o enlace concreto, sin tener que hojear las capturas de pantalla buscando uno.
Eventos de scroll (con throttle)
Los cambios de posición de scroll se registran con throttle para evitar el spam de registros. Resolución suficiente para reconstruir dónde miró el usuario en páginas largas, pero sin producir miles de eventos de scroll innecesarios por minuto.
Eventos de navegación incluyendo cambios de ruta SPA
Cada navegación — cargas de página completas, cambios de pushState de aplicaciones de página única, cambios programáticos de ubicación — se registra con la URL de origen, la URL de destino, el activador (clic en enlace, manual, programático) y el tiempo de finalización. Las navegaciones SPA que el registro tradicional pierde se atrapan en la capa de sondeo de URL de ZeroLeak.
Eventos de envío de formulario con referencias de campo
Cuando el usuario envía un formulario, el registro de eventos captura la URL de acción del formulario, su método y los nombres de los campos. Los valores reales de los campos se capturan a través del registro de entrada de teclado (de modo que se conserve el historial de escritura), no se repiten en el evento de formulario.
Transiciones de inactivo y activo
La sesión monitorea la actividad del usuario en la capa de entrada. Las transiciones entre los estados activo e inactivo se registran con marcas de tiempo, de modo que los revisores puedan ver los periodos de atención y la inactividad — útil para la revisión de cumplimiento y las preguntas de auditoría basadas en tiempo.
Metadatos a nivel de sesión al final de la sesión
Al final de la sesión se registran metadatos de resumen: duración total, distribución inactivo-activo, total de eventos de cada tipo, capturas de pantalla generadas, referencias a archivos de video y motivo de terminación (timeout, terminación manual, error). Si se configura un webhook de coordinador, este resumen también se dispara hacia él.
Dónde la grabación de sesión demuestra su valor
Auditorías de cumplimiento y revisión regulatoria
Reguladores que preguntan qué hicieron usuarios concretos en sesiones concretas — revisión HIPAA del acceso a registros de pacientes, cumplimiento de la mesa de inversión financiera, auditorías de tratamiento de datos gubernamentales. La captura activada por eventos produce un rastro por sesión corto e informativo que los revisores pueden recorrer rápidamente.
Investigación de amenaza interna
Cuando se sospecha de una fuga o una violación de política, el investigador debe saber qué hizo exactamente el usuario — no solo cuándo. Las capturas de pantalla secuenciales con el ratón marcado, las entradas de teclado en búfer por palabras y el contenido completo del portapapeles hacen la sesión reproducible en detalle sin ver horas de video.
Auditoría de acceso de contratistas y terceros
Usuarios externos a los que se da permiso solo de visualización en su entorno. La grabación completa por sesión — junto con la marca de agua visible que identifica al usuario — proporciona rendición de cuentas de todo lo que vieron y cada acción que hicieron durante la ventana de acceso.
Análisis de incidentes operativos
Tras un evento inesperado en una consola SCADA u operativa, la grabación muestra qué vio exactamente el operador en los momentos previos y en qué controles hizo clic. El par de antes y después de la navegación acelera mucho el diagnóstico de errores en cadena.
Preguntas frecuentes
¿Cuánto almacenamiento consume una sesión típica?
¿El usuario sabe que está siendo grabado?
¿Qué le ocurre a la grabación si la sesión termina de forma abrupta?
¿Cómo navegan los revisores por una sesión grabada?
¿Cómo encaja esto con la marca de agua y el aislamiento?
¿Puede la aplicación protegida desactivar la grabación o interferir con ella?
Vea la grabación activada por eventos en una demo en vivo
Abriremos una sesión, haremos clic en algunos enlaces, rellenaremos algunos formularios, copiaremos algo de contenido y mostraremos el índice de capturas de pantalla resultante, el registro de teclado y los segmentos de video — y cómo un revisor reconstruye la sesión a partir de ellos.