Funciona ya sea teniendo una meta actualización, o un JavaScript, que continuamente envía una solicitud para mantener viva la sesión.
Básicamente, funciona al tener un identificador de sesión, que es una cadena aleatoria. Este identificador de sesión puede ser válido para digamos 3 minutos.
Cada minuto, esa página web ejecutará el código JavaScript o realizará una meta actualización, lo que hará que la página obtenga un nuevo identificador de sesión válido por otros 3 minutos.
La razón por la que sabe que ha cerrado la ventana es que la sesión ya no se renovará, por lo que su sesión caducará.
La razón de usar un sistema de este tipo es evitar que las personas falsifiquen las direcciones MAC y las direcciones IP para "robar" la sesión de inicio de sesión de otra persona.
La ventana emergente a menudo se entrega a través de HTTPS, por lo que una vez que el usuario original deja de usar la sesión, no hay forma de que el atacante mantenga la sesión activa.
En algunos casos, se usa un esquema de interbloqueo en lugar de HTTPS (o algunas veces en combinación), que consiste en un JavaScript que se construye para intercambiar secretos con el servidor cada vez que se renueva, de una manera que requiere un Ataque MITM para someter el sistema.