Loading...
  • Susana Gonzalez Derecho Digital y Tecnológico

    Susana Gonzalez

Mira que son cuquis las supercookies

El almacenamiento local y su uso como supercookies incide en el refuerzo del Privacy & Security by design.

Continuando con el post anterior sobre almacenamiento y captura de datos sin cookies, vamos a dar una “vuelta de tuerca” más al tema.

Y es que estamos ante un claro ejemplo, como tantos otros, de que la regulación va siempre por detrás de la tecnología. También en lo relativo a captura de datos y almacenamiento, campo en el que a fuerza de ir añadiendo matices a conceptos ya definidos hace que el resultado de las leyes que lo regulan quede bastante farragoso.

Porque tenemos la LSSI que regula el uso de las cookies estableciendo, en su artículo 22.2 que “…Los prestadores de servicios podrán utilizar dispositivos de almacenamiento y recuperación de datos en equipos terminales de los destinatarios, a condición de que los mismos hayan dado su consentimiento después de que se les haya facilitado información clara y completa sobre su utilización…”.

Sin embargo, lo que no termina de quedar completamente claro es a qué tipo de consentimiento se refiere la ley: ¿consentimiento a que se utilicen esos “dispositivos de almacenamiento” o consentimiento al tratamiento que se va a hacer de los datos recopilados con esos “dispositivos”?

La lógica nos dice que deberían ser ambos y, por tanto, deberíamos informar a los usuarios siempre de los “dispositivos” que nuestra web instala (pueda o no pueda el usuario aceptar o rechazar su utilización) y, además, informar del tratamiento de los datos personales que se va a realizarse y recoger el consentimiento expreso e informado previamente a dicho tratamiento.

Para cumplir con la ley, cuando hablamos de cookies, digamos, “tradicionales”, los navegadores tienen la opción de bloquear cookies y que no almacenen nada (lo que en algunos casos, sobre todo de cookies técnicas y necesarias, supondría que “no tendríamos una experiencia de navegación completa”) o de borrar las que tengamos almacenadas para no dar información que no queramos a terceros que visitemos.

Hasta ahí todo bien. Perfecto, vaya.

Hemos visto, sin embargo, en el post anterior que existen distintas formas de hacer seguimiento y almacenar/recuperar información del usuario que “bordean” algunas de las exigencias de la ley al utilizar sistemas que se regeneran pese a ser borradas o se sincronizan entre distintas plataformas sin que el usuario pueda hacer mucho al respecto.

Supercookies Almacenamiento local GDPR Privacy by design Susana GonzalezMe voy a centrar ahora en otra de las opciones que comentaba en ese post: las “supercookies” (luego explico el por qué de ese nombre) que, aunque no podemos decir que estén al margen de la regulación, sí que tienen algunas características específicas que no encajan en la descripción estricta de cookies y que, además, permiten almacenar muchísima más información que las cookies tradicionales.

Estoy hablando de la información que se almacena en el SessionStorage y LocalStorage de los navegadores. Y eso, ¿qué es?, os preguntaréis algunos, al igual que me lo pregunté yo cuando empecé a investigar y estudiar este tema.

Pues bien. Los navegadores, además del “almacén de cookies” (coloquialmente hablando) disponen de otros recursos en los que se puede almacenar información que luego podamos recuperar y tratar. Fundamentalmente tenemos dos: el SessionStorage o almacenamiento de sesión y el LocalStorage o almacenamiento local.

Funcionan de un modo similar al almacenamiento de cookies con dos salvedades:

  1. En primer lugar, el tamaño. Mientras que las cookies tienen una capacidad máxima de 4Kb (4096 bytes), aunque por lo general no pasan de 1Kb, este otro almacenamiento es muy superior, pudiendo llega a los ¡¡10Mb!! Es decir, equivaldría a la información almacenada en 10.000 cookies. Con la “ventaja” de no tener que estar particionada o dividida, con lo que en la práctica podemos almacenar cualquier cosa que queramos (texto, datos, imágenes, archivos.. lo que queramos).

Esa primera característica hace que se almacenen en lugar distinto a las cookies normales y que permanezcan en nuestros dispositivos, aunque ejecutemos la opción de borrar las cookies de nuestro navegador.

  1. Pero es que, y aquí radica la diferencia más importante y la imposibilidad de cumplir estrictamente la LSSI, podemos – y debemos – informar al usuario de su instalación; pero de nada sirve, ya que el usuario no puede hacer nada para bloquear su uso. Bueno, técnicamente podría impedir la ejecución de código Javascript; pero en ese caso, la inmensa mayoría de las webs no funcionarían (siendo otro aspecto en el que no se ajustarían a la LSSI que dice que la negativa a su uso por parte del usuario no puede tener consecuencias negativas para su navegación).

En este caso, si deshabilitamos Javascript (único modo que tenemos actualmente para bloquear su uso) la web dejará de funcionar prácticamente en su totalidad, impidiendo en la gran mayoría de los casos (por no decir en todos) la navegación.

Es decir, esa información se puede almacenar quiera o no quiera el usuario, que no tiene capacidad para impedirlo y, además, sobrepasa, con mucho, la capacidad de almacenamiento de una cookie tradicional.

Encontramos aún una tercera diferencia, y es que, como decía antes, esa información almacenada no se borra cuando borramos las cookies. Incluso en algunos navegadores, no tenemos opción sencilla ni de ver su contenido ni de eliminarlo.

Ambos almacenamientos funcionan exactamente igual salvo una “pequeña” diferencia: el SessionStorage, como su propio nombre indica, es un almacenamiento de sesión y al cerrar el navegador, se borra automáticamente.

El LocalStorage, sin embargo, es persistente y, salvo que se borre expresamente, permanecerá en nuestro navegador incluso aunque lo cerremos o apaguemos el ordenador.

 “Jugando” con el almacenamiento local

Si recapitulamos es cuando somos conscientes del problema al que nos enfrentamos: los desarrolladores disponen de un almacenamiento capaz de guardar grandes cantidades de información de un usuario, en un lugar que no es accesible para él y que, además, no puede  bloquearlo.

Y claro, combinando esa capacidad de almacenamiento de información (no ilimitada, pero inmensa en comparación con las cookies) con un poquito de Javascript, el resultado es realmente preocupante.

Vamos a verlo con un ejemplo práctico. He preparado un par de “demos” para ver hasta qué punto no somos conscientes de lo vulnerables que somos y de las posibilidades de, sin hacer nada ilegal, realizar un seguimiento y trackeo que podría ser hasta peligroso.

En primer lugar, ¿qué tal un formulario? Cuántas veces a lo largo del día nos encontramos con formularios en nuestra navegación por la web: suscripciones, contactos, compras online, peticiones de información, … todo se hace a través de un formulario, y ahora, con el GDPR y la necesidad de articular las bases de datos automatizadas para que guarden la evidencia del consentimiento expreso e informado, los vamos a ver mucho más.

Pues bien, aquí os muestro uno muy sencillo. Aunque tiene una “singularidad”: no tiene botón de enviar… 😉

Demo 1

Vale. ¿Has cumplimentado el formulario? No le has dado a enviar porque no había opción de hacerlo.

Sin embargo, he capturado y almacenado lo que acabas de teclear. De hecho, está almacenado en el SessionStorage. Mientras no cierres el navegador, ahí estará almacenado. De hecho está aquí. 🙂

Vale, tiene un cierto “truco”. He utilizado la opción de hombre/mujer a modo de instrucción de envío y, al pulsar en una de las opciones equivale a enviar… 🙂 Pero lo mismo te podías haber encontrado en cualquier web.

¿Hacemos otra prueba? Esta vez no haré trampa: no habrá botones de opción ni de envío ni nada. Solamente un cuadro de texto.

Sin embargo, el resultado es…. Al menos, inquietante!

Demo 2

¿Lo has visto? ¡¡Un auténtico keylogger en toda regla!! Eso sí, sin instalarte absolutamente nada dañino en tu dispositivo realmente.

No he instalado ningún programa ni malware ni he hecho nada ilegal. Simplemente un par de instrucciones (literalmente) de Javascript.

Esos datos que he capturado los he almacenado en LocalStorage. Puedes cerrar el navegador, incluso reiniciar el ordenador. Seguirán ahí. (si lo has hecho y quieres comprobarlo, pulsa aquí una vez vuelvas a este post). (1) (2)

Es decir, “cualquiera” podría capturar los datos que introduzcamos en una web. Ya sea en un formulario, escribiendo un post, mandando un mensaje,…. Y lo podría almacenar y recuperar cada vez que quisiera.

No solo lo que tecleemos, obviamente, del mismo modo podría capturar infinidad de información nuestra (IP, navegador, preferencias de uso, dónde hacemos clic, historial…. TODO) sin limitación de tamaño, pues recordemos que tiene disponible hasta 10Mb de espacio. Lo podría capturar y lo podría almacenar y recuperar cuando quisiera. Sin avisarnos y sin que nos demos cuenta.

Las conclusiones que podemos sacar de todo esto son varias. Por una parte, y es a donde quería llegar al comienzo, la regulación debería ser más ágil a la hora de regular determinadas prácticas (no soy partidaria en absoluto de la hiper regulación; simplemente digo que quienes regulan, deberían estar un poco más “puestos” o mejor asesorados por profesionales expertos en cada materia y en lo que es la realidad del mundo en que vivimos) y pensar más en seguridad y privacidad by design que no a posteriori tratando de limitar acciones concretas.

Por otro lado, la necesidad de concienciación de lo inmensamente vulnerables que somos (nosotros y nuestros datos) en internet. Desde el momento que pulsamos una tecla en nuestro ordenador o dispositivo (incluso, como hemos visto, aunque no sea el enter o el botón de enviar) perdemos el control de lo que hayamos enviado, ya sea un mensaje, una imagen o una simple letra.

Luego nos llevamos las manos a la cabeza cuando vemos en las noticias consecuencias por uso de datos personales (caso Facebook, por ejemplo. Cuántas veces no vemos en nuestros muros amigos que han autorizado con su cuenta de Facebook (sin leer, por supuesto) a una aplicación que va a capturar toooooodos sus datos (a saber para qué), a cambio de saber qué animal fueron en una vida pasada o a qué personaje de Star Wars se parecen).

Sé consecuente, lee los tratamientos que se va a dar a tus datos y ten cuidado dónde los vas a teclear. Y, sobre todo, a la mínima, desconfía!

Y, si tu web utiliza este tipo de recursos, debes informar siempre al usuario de su uso. El hecho de que no pueda hacer nada para impedirlo no exime de que deba de ser informado y prestar su consentimiento expreso. Máxime si vas a recoger datos personales, puesto que entonces ya no será por LSSI sino por GDPR.

(1) LocalStorage funciona en todos los navegadores (es una instrucción de html5), pero en Edge presenta algunas inconsistencias (de hecho hay una incidencia abierta porque no funciona cuando se invoca desde una pestaña nueva, como es el caso, https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/110656/). Por ello, si utilizas Edge no podrás comprobar, que los datos permanecen ahí a pesar de haber cerrado el navegador o reiniciado el ordenador.
(2) Podemos evitar que LocalStorage no permanezca si habilitamos la opción “Conservar datos locales solo hasta que salgas del navegador”. En caso contrario, ahí estarán esperando a que “alguien” los lea.
By |2018-04-24T16:53:30+00:00abril 24th, 2018|Blog, ciberseguridad, Conciencia digital, LegalWebCompliance|0 Comments

About the Author:

Abogado especialista en Derecho Digital y Tecnológico, seguridad de la información, Auditora jefe ISO 27000, protección de datos y Ciberseguridad, innovación, estrategia digital, marketing y comunicación #AlwaysON©

Leave A Comment

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.