Un script de reproducción de sesión es una programación que permite registrar las pulsaciones de teclas, los clics, los movimientos del mouse y el comportamiento de desplazamiento de los usuarios de un sitio web junto con el contenido completo de la página web que están visitando. La reproducción de sesiones es una herramienta popular para ayudar a las empresas a determinar cómo se utilizan sus sitios web y para identificar problemas potenciales como enlaces rotos, problemas de diseño de páginas o motivos por los que los usuarios abandonan un sitio.
Con la reproducción de la sesión, un proveedor de servicios de análisis externo proporciona al editor del sitio web HTML para que lo inserte en el código fuente de cada página web. A diferencia de los scripts que simplemente agregan estadísticas para cosas como usuarios únicos o tiempo en el sitio, los scripts de reproducción de sesiones registran sesiones de navegación individuales y envían los datos a los servidores del proveedor de servicios. A continuación, el editor puede ver las grabaciones a pedido. El uso de scripts de respuesta de sesión es controvertido debido al potencial de violaciones de la privacidad.
Un estudio de la Universidad de Princeton encontró que más de 400 sitios web con mucho tráfico contenían secuencias de comandos de reproducción de sesiones. El estudio también reveló que las solicitudes de inclusión voluntaria del usuario no existían y que los datos no siempre se manejaban de forma segura. Los investigadores encontraron que, aunque los proveedores de servicios tenían la intención de redactar automáticamente información confidencial, como contraseñas e información de tarjetas de crédito, el proceso es defectuoso.
A veces, se recopila más información de la esperada porque el script no puede distinguir entre la información que es útil para mejorar la interfaz de usuario (UI) del sitio y la información que debe permanecer privada por ley. Por ejemplo, la información relacionada con la salud escrita en un formulario web podría ser registrada por el script y enviada al proveedor de servicios accidentalmente si el visitante del sitio web finalmente decide no enviar el formulario. En este caso, si el visitante hubiera enviado el formulario, los datos se habrían redactado. Sin embargo, debido a que el formulario se completó pero no se envió, siguió siendo parte de la grabación.
Para evitar la filtración accidental de datos privados, los editores de sitios web deben identificar todas las páginas que muestran o aceptan información del usuario y elimine manualmente la información confidencial cuando se recopile inadvertidamente. Este proceso, que implica inspeccionar el código del lado del servidor subyacente, puede llevar mucho tiempo y debe repetirse cada vez que se actualiza el sitio o se cambia una aplicación web que impulsa el sitio.
Para evitar que se registre una sesión del navegador, los usuarios finales pueden ajustar la configuración del navegador para evitar que se ejecuten todos los scripts, pero este enfoque también puede limitar la funcionalidad de algunos sitios web. Otra opción es utilizar un brextensión de propietario como NoScript, uBlock Origin o uMatrix y solo permita que los scripts se ejecuten en sitios que el usuario haya incluido en la lista blanca.