Diferencias entre Cookie, sessionStorage y localStorage
Los sitios web a veces guardan información dentro del navegador.
Mantener el estado de sesión iniciada. Recordar la configuración de visualización. Conservar el contenido del carrito. Retomar la operación anterior. Identificar una revisita desde el mismo navegador.
Los mecanismos representativos usados para esto son Cookie, sessionStorage y localStorage.
Estos mecanismos hacen que la Web sea cómoda. Pero desde el punto de vista del anonimato, se convierten en pistas para identificar el mismo navegador.
Qué es una Cookie
Una Cookie es un pequeño dato que un sitio web guarda en el navegador y que se envía al servidor en las solicitudes que cumplen determinadas condiciones.
Se usa para el estado de sesión iniciada, ID de sesión, configuración de visualización, analítica de acceso, identificación publicitaria y otros fines.
Por ejemplo, cuando inicias sesión en un sitio, se guarda en el navegador una Cookie que indica la sesión. La siguiente vez que accedes al mismo sitio, se envía esa Cookie. El sitio puede decidir que "este navegador corresponde a una persona usuaria con sesión iniciada".
Lo importante para el anonimato es que las Cookie permanecen aunque cambies la dirección IP.
Aunque accedas primero desde la conexión de casa y luego uses una para acceder con el mismo navegador, si se envía la misma Cookie, el sitio lo tratará como el mismo navegador.
Qué es sessionStorage
sessionStorage es un dato que se guarda temporalmente por pestaña o ventana del navegador.
En general, se borra al cerrar esa pestaña. Se usa para campos de formulario a medio completar, estado de pantalla, información temporal de operación y usos similares.
A diferencia de una Cookie, normalmente no se envía automáticamente en cada solicitud HTTP. JavaScript lo lee y escribe, y se usa en el procesamiento dentro de la página.
Sin embargo, que no se envíe al servidor no significa que no tenga relación con el anonimato. Los scripts de la página web pueden leerlo y, si es necesario, enviarlo al servidor.
Qué es localStorage
localStorage es un dato que se guarda a largo plazo en el navegador.
Permanece aunque cierres la pestaña. Permanece aunque reinicies el navegador. Puede usarse para configuración del sitio, tema, conservación de estado, identificadores y otros fines.
Permite guardar más datos que una Cookie y se maneja desde JavaScript.
En anonimato, hay que prestar atención a que los valores que quedan en localStorage pueden usarse para identificar revisitas.
Aunque elimines las Cookie, si queda un identificador en localStorage, puede tratarse como el mismo navegador.
Diferencias entre los tres
Cookie, sessionStorage y localStorage se diferencian por el periodo de conservación y la forma de envío.
| Elemento | Cookie | sessionStorage | localStorage |
|---|---|---|---|
| Periodo de conservación | Permanece hasta el plazo configurado | Hasta cerrar la pestaña o ventana | En principio permanece sin plazo, pero puede borrarse por acción de la persona usuaria, configuración del navegador, navegación privada o manejo del área de almacenamiento |
| Envío al servidor | Se envía automáticamente si cumple las condiciones | No se envía automáticamente | No se envía automáticamente |
| Uso principal | Inicio de sesión, sesión, analítica | Estado temporal de pantalla | Configuración, conservación de estado, identificadores |
| Precaución para el anonimato | El mismo navegador puede reconocerse aunque cambie la IP | Se usa en el procesamiento de la página | Puede permanecer después de borrar Cookie |
Todos son datos que quedan dentro del navegador. En anonimato no basta con mirar solo las Cookie.
Situaciones problemáticas para el anonimato
El problema aparece cuando el uso con nombre real y el uso anónimo se mezclan en el mismo navegador.
Por ejemplo, usar tal cual para actividad anónima un navegador donde había sesión iniciada con una cuenta de nombre real. Eliminar solo las Cookie y dejar localStorage. Abrir un sitio para uso anónimo y luego volver a un servicio de nombre real en la misma pestaña o el mismo navegador.
Con este tipo de práctica, la información dentro del navegador se mezcla.
| Situación | Qué ocurre |
|---|---|
| Usar nombre real y anonimato en el mismo navegador | Se mezclan Cookie e información guardada |
| Eliminar solo Cookie | Quedan localStorage y otros datos |
| Hacer actividad anónima con sitios iniciados abiertos | Las acciones se vinculan dentro del mismo entorno |
| Usar varias cuentas en el mismo navegador | Es más fácil que ocurra correlación de cuentas |
En anonimato, es importante no solo borrar los datos guardados, sino separar los entornos.
Cookie, sessionStorage y localStorage pueden gestionarse juntos bajo la categoría de "datos de sitios". Sin embargo, la forma en que se guardan y desaparecen no es igual.
Aunque pulses "borrar historial" en el navegador, según los elementos elegidos puede que se borren solo Cookie, solo caché o solo historial de navegación, y que quede una parte de los datos del sitio. Por el contrario, si borras todos los datos del sitio, también se borran estados de sesión iniciada y configuraciones.
| Operación | Precaución |
|---|---|
| Borrar solo historial de navegación | Pueden quedar Cookie o localStorage |
| Borrar Cookie | Pueden quedar otras áreas de almacenamiento, como localStorage |
| Borrar datos de sitios | También se borran estados de sesión iniciada y configuraciones |
| Ventana privada | Se comporta de forma distinta al entorno normal ya existente |
| Sincronización del navegador | La información puede volver desde otro dispositivo |
En anonimato, confirma el alcance de borrado para evitar "creer que lo borraste".
La separación es más importante que el borrado
Las Cookie y localStorage pueden borrarse. Sin embargo, es difícil seguir borrándolos perfectamente cada vez.
Cada sitio guarda en lugares distintos. El alcance de borrado cambia según la configuración del navegador. Las extensiones y la sincronización influyen. En el momento de iniciar sesión se crea un identificador nuevo.
Por eso, en anonimato es más realista no depender solo del borrado y separar el navegador de nombre real del navegador para uso anónimo.
En actividades de alto riesgo, se considera separar no solo el navegador, sino también el dispositivo, el OS y el entorno de red.
La navegación privada también puede ayudar como parte de la separación. Sin embargo, una ventana privada no es una tecnología de anonimización. No es un mecanismo que te oculte por completo de sitios web, proveedores de comunicación, redes del trabajo o la escuela, ni servidores de destino.
La ventana privada es principalmente una función para dejar menos historial y Cookie en el dispositivo. Si inicias sesión en una cuenta de nombre real, esa acción se vincula con la cuenta.
Qué comprobar
Sobre la información guardada dentro del navegador, comprueba estos puntos.
- Si no usas el mismo navegador para nombre real y anonimato
- Si no inicias sesión en cuentas de nombre real en el navegador para uso anónimo
- Si compruebas no solo Cookie, sino todos los datos del sitio
- Si piensas con la premisa de que localStorage y sessionStorage pueden quedar
- Si la sincronización del navegador no mezcla información con otros dispositivos
- Si las extensiones no tienen información guardada
Hay que prestar especial atención a la sincronización del navegador. Si marcadores, historial, extensiones o contraseñas guardadas del entorno de nombre real entran en el entorno anónimo, la separación se rompe.
Resumen
Cookie, sessionStorage y localStorage son mecanismos para que los sitios web guarden información dentro del navegador.
Las Cookie se envían automáticamente al servidor si cumplen determinadas condiciones. sessionStorage se usa para almacenamiento temporal por pestaña. localStorage es un área de almacenamiento que permanece a largo plazo.
Hacen que la Web sea cómoda, pero en anonimato se convierten en pistas para identificar el mismo navegador.
Aunque cambies la dirección IP, si quedan Cookie o localStorage, puede tratarse como el mismo navegador.
Para proteger el anonimato, es importante no solo borrar la información guardada, sino separar el entorno del navegador de nombre real y el entorno del navegador para uso anónimo.
Herramientas relacionadas
BrowserLeaks WebRTC
Recurso externo relacionado con este artículo. Ábrelo solo si encaja con tu situación y tu modelo de amenaza.
Por qué aparece aquí: Puede ayudar con el tema del artículo, pero está fuera de Anonymity Sense y conviene revisarlo antes de usarlo.
BrowserLeaks Fingerprint
Recurso externo relacionado con este artículo. Ábrelo solo si encaja con tu situación y tu modelo de amenaza.
Por qué aparece aquí: Puede ayudar con el tema del artículo, pero está fuera de Anonymity Sense y conviene revisarlo antes de usarlo.
EFF Cover Your Tracks
Recurso externo relacionado con este artículo. Ábrelo solo si encaja con tu situación y tu modelo de amenaza.
Por qué aparece aquí: Puede ayudar con el tema del artículo, pero está fuera de Anonymity Sense y conviene revisarlo antes de usarlo.
Tor Project
Recurso externo relacionado con este artículo. Ábrelo solo si encaja con tu situación y tu modelo de amenaza.
Por qué aparece aquí: Puede ayudar con el tema del artículo, pero está fuera de Anonymity Sense y conviene revisarlo antes de usarlo.