Revelaron una técnica para poder identificar el navegador mediante el Favicon
Se dio a conocer una nueva técnica utilizada para poder identificar a una instancia de un navegador. El método se basa en las características del procesamiento de imágenes de Favicon con la ayuda de las cuales el sitio determina los íconos que se muestran en los marcadores, pestañas y otros elementos de la interfaz del navegador.
Los navegadores guardan las imágenes de Favicon en una caché separada, que no se superpone con otras cachés, es común a todos los modos de operación y no se borra con los limpiadores estándar de caché y de historial de navegación.
Esta función permite utilizar el identificador incluso cuando se trabaja en modo incógnito y dificulta su eliminación. La autenticación mediante el método propuesto tampoco se ve afectada por el uso de VPN y complementos de bloqueo de anuncios.
El método de identificación se basa en el hecho de que en el lado del servidor es posible determinar si el usuario ha abierto previamente la página analizando la información sobre la carga de Favicon si el navegador no solicitó la imagen de Favicon especificada en los parámetros de la página, luego, la página se cargó antes y la imagen se muestra desde el caché.
Dado que los navegadores permiten configurar su propio Favicon para cada página, es posible codificar información útil a través de un reenvío secuencial del usuario a varias páginas únicas.
Cuantos más redireccionamientos haya en la cadena, más identificadores se pueden determinar (el número de identificadores está determinado por la fórmula 2 ^ N, donde N es el número de redireccionamientos). Por ejemplo, 4 usuarios pueden abordar dos redireccionamientos, 3 – 8, 4 – 16, 10 – 1024, 24 – 16 millones, 32 – 4 mil millones.
La desventaja de este método son los grandes retrasos: cuanto mayor es la precisión, más tardan las redirecciones en abrir la página.
32 redirecciones generan identificadores para todos los usuarios de Internet, pero provocan un retraso de unos tres segundos. Para un millón de identificadores, el retraso es de aproximadamente un segundo y medio.
El método implica trabajar en dos modos: escritura y lectura:
- El modo de escritura genera y almacena un identificador para el usuario que accedió por primera vez al sitio.
- El modo de lectura lee un identificador almacenado previamente.
La elección del modo depende de la solicitud del archivo Favicon para la página principal del sitio: si se solicita la imagen, los datos no se almacenan en caché y se puede suponer que el usuario no ha accedido al sitio antes o al caché el contenido está desactualizado. Según los investigadores, al especificar el encabezado HTTP Cache-Control, es posible lograr el Favicon en la caché hasta por un año.
En modo lectura, al abrir un sitio, el usuario está encadenado a páginas predefinidas con sus Favicons y el servidor HTTP analiza qué Favicons se solicitan del servidor y que se muestran sin acceder al servidor desde la caché. La presencia de la solicitud se codifica como «0» y la ausencia como «1». Para que el identificador se conserve en futuras llamadas, se muestra un código de error 404 en respuesta a las solicitudes de Favicon, es decir, la próxima vez que abra el sitio, el navegador intentará cargar estos favicons nuevamente.
En el modo de escritura, en el bucle de redireccionamiento para páginas que codifican «1», se devuelve la respuesta correcta del Favicon, depositada en la caché del navegador (cuando se repite el ciclo, los datos del Favicon se devolverán desde la caché, sin acceder al servidor), y para páginas que codifican «0» – código de error 404 (si repite el ciclo de redireccionamiento, los datos de la página se volverán a solicitar).
El método funciona en Chrome, Safari, Edge y parcialmente en Firefox. En Firefox para Linux, el uso de Favicons como Supercookies se ve obstaculizado por una función que evita que el navegador almacene en caché el Favicon.
Curiosamente, los autores del método de autenticación notificaron a los desarrolladores de Firefox sobre esta función hace aproximadamente un año, señalando que había un error en el caché, pero sin mencionar su trabajo y que corregir el error conduciría a la posibilidad de identificación del usuario.
Fuente: https://www.cs.uic.edu