strava privacidad


A principios de esta semana saltaba la alerta. Strava, un popular servicio de planificación y compartición de rutas enfocado a runners y ciclistas, decidía mostrar un mapa de calor navegable con todas las rutas hechas por sus usuarios. Por supuesto, todo anonimizado.

La idea no es nueva y tiene un fin totalmente loable (ayudarnos a encontrar rutas chulas en nuestros alrededores). El problema viene cuando a esos datos (rutas anónimas) se le juntan una serie de factores a priori desconexos, y esto se agrega al conocimiento que previamente ya tenemos. En este caso, y al tratarse de una aplicación “eminentemente occidental”, algunos la han aprovechado para sacar conjeturas de por dónde podrían estar haciendo ejercicio algunos soldados destinados a zonas de conflicto. Y ya de paso, desvelar por dónde podrían estar asentadas algunas de las bases militares supuestamente secretas.

Basta hacer alguna búsqueda en países donde el uso de este tipo de aplicaciones es prácticamente nulo, y que además estén en guerra (Somalia o Irak, por poner dos ejemplos), para encontrarte con trazados en medio de la nada (EN) que empieza o terminan en espacios vacíos (EN). Por supuesto, podría tratarse de algún grupo de aventureros que de casualidad utilizaron el servicio por allí, pero lo más probable, habida cuenta de que turismo no es que haya mucho y que la gente autóctona como que no utiliza Strava en su día a día, es que estemos ante entrenamientos de personal militar (de los pocos que podrían estar interesados en utilizarlo en esos lares), con el riesgo de seguridad que ello conlleva (su base de operaciones seguramente esté situada cerca).

En estos días la compañía ha emitido un comunicado que hacía público CNN (EN) en el que avisaba, con una prosa más moderada, que trabajaría con el gobierno y quien hiciese falta para atajar las posibles tergiversaciones que se pudieran desprender del servicio, pero que el error (y aquí está lo importante), en todo caso, se debe más al desconocimiento del usuario que a una vulnerabilidad como tal.

Y es que tienen toda la razón del mundo.

Ya muchos se han hecho eco de la noticia, así que a sabiendas que me habíais pedido que hablara sobre ello, voy a detenerme en explicar cómo incluso un servicio como éste, que ofrece acceso a un mapa de calor anonimizado, pueden servir para desanonimizar usuarios de la aplicación. No porque esté mal diseñado, sino porque como ya he explicado en más de una ocasión, el propio funcionamiento de los algoritmos que rigen estos sistemas y la agregación adecuada de datos a la hora de realizar análisis de inteligencia en un escenario tan jodidamente rico en información como es el que nos ha tocado vivir, permite prácticamente cualquier cosa que se nos ocurra.

Desanonimizando perfiles en aplicaciones deportivas

La estrategia es justo la misma que ya comenté recientemente con el caso de Tinder y los servicios de contactos, y por ello, las recomendaciones (al final de la pieza) serán bastante parecidas.


Aplicado al caso de Strava, y ya que tenemos disponible un mapa de calor con rutas, lo primero de todo es entender cómo funcionan los mapas de calor, y apoyarnos en herramientas externas que nos permitan tergiversar el funcionamiento del servicio:

  • Seleccionamos una zona del mapa que tenga una ruta específica que queremos desanonimizar.
  • Clonamos ese mismo recorrido en MapMyRide (EN), una web que nos va a permitir descargar esa ruta en un archivo GPX (ES).
  • En este tipo de archivos se incluye información de posicionamiento junto a valores temporales. La idea es editarlo (para esto hay que tener nociones de XML) añadiéndole tiempos esperables para alguien que vaya andando/corriendo/en bici (sin pasarse, que si no los algoritmos de Strava entenderán que vamos en un vehículo a motor y no los tendrá en cuenta). El fichero pasará entonces a tener un formato parecido a este:
 <gpx xmlsn="datos del formato de archivo">
   <trk>
     <name>
       nombre de la ruta
     </name>
     <trkseg>
       <trkpt lat="latitud del segmento1" lon="longitud del segmento1">
         <time>tiempo que hemos tardado en recorrer el segmento1</time>
       </trkpt>
       <trkpt lat="latitud del segmento2" lon="longitud del segmento2">
         <time>tiempo que hemos tardado en recorrer el segmento2</time>
       </trkpt>
       ...
     </trkseg>
   </trk>
 </gpx>
  • Subimos la ruta dentro de Strava como una nueva actividad y creamos un nuevo segmento, para transformar toda la ruta, o parte de ella, en un segmento que podamos comparar con el resto de usuarios de la aplicación.
  • La app entonces nos mostrará los 10 mejores corredores por género y rango de edad, y tirando del perfil de cada uno podremos llegar a saber incluso con quién suelen entrenar y por dónde lo hace. Por supuesto, como la mayoría tiene nombre o foto reconocible, también podríamos ficharlos por otras redes sociales mediante una búsqueda en Google y demás herramientas OSINT para tirar más del hilo.

La cuestión es que con estos sencillos pasos (ya ve que tampoco hay que ser un genio para hacerlo), ya no solo podríamos encontrar potenciales ubicaciones de bases militares en países en conflicto, sino también identificar con nombre y apellidos a los militares que allí están destinados (o stalkear a alguna vecina que tengamos cerca :)), pudiendo además conocer sus movimientos en otras bases, lo que en inteligencia sin lugar a duda da muchísimo juego (acuerdos con otros ejércitos locales, destinos anteriores,…) y diseñar posibles extorsiones metiendo a familia o conocidos de por medio.

Los límites, de nuevo, solo están en nuestra imaginación. Con el suficiente acceso a información y los conocimientos precisos, hoy en día cualquiera de nosotros estamos expuestos a una serie de riesgos que van desde los más triviales (que alguien comprometa nuestras cuentas) a los más terribles (poner en peligro nuestra vida o la de nuestros conocidos, que nos usurpen la identidad…).

Y esto compete a Strava (EN), sí, pero también a prácticamente cualquier servicio de compartición de datos que utilizamos a diario.

Sin ir más lejos, antesdeayer un lector de esta página señalaba muy acertadamente como las pulseras cuantificadoras y las cámaras IP, algunas de ellas analizadas por estos lares, suponen de facto la aceptación de una pérdida de privacidad más que considerable, y que normalmente viene explicada en letra pequeñita cuando creamos la cuenta (registro de actividad compartido con servicios de terceros, acceso del gobierno de turno a esos datos si así fuera necesario…).

Algunos tips a considerar

¿Qué podemos hacer para minimizar el impacto de estas tergiversaciones? Pues la respuesta más obvia es que si de verdad no queremos comprometernos a ser víctima de alguna, lo mejor es que directamente no utilicemos estas herramientas.

Como tampoco hay que ser un paranoico de la privacidad, vamos a ver algunas cosas que sí podemos hacer y que reducen drásticamente el impacto que podría tener su explotación el día de mañana:


  • Mecánicas de desinformación: Intentar, en la medida de lo posible, no utilizar nombre y apellidos. Un Pablo I. sirve el propósito y complica un pelín más mi identificación. Y lo mismo pasaría con la foto de perfil. Tenemos que entender que hablamos de información que puede ser comprometedora (rutas de deporte, que normalmente haremos cerca de nuestro domicilio/trabajo), por lo que incluso podemos llegar un paso más allá y activarlo cuando estemos haciendo otras actividades no asociadas con el deporte y no tan identificativas de nuestro día a día (viajes que hagamos por turismo, por ejemplo). Todo esto lo que mete es ruido, y el ruido, como bien sabe, es molesto.
  • Crearse una careta: Sobre esto seguramente escriba una pieza en profundidad un día de éstos, pero la idea no es que no estemos en Internet, es que mostremos únicamente el Yo que queremos mostrar. Quienes me habéis empezado a seguir por mi recién abierta cuenta de Instagram (ES) sabréis de qué hablo :). De esta manera, todo lo que pueda salir el día de mañana estará asociado a una parte de su identidad que por el motivo que sea ha decidido “ceder”, y puesto que se trata de algo que no es estrictamente definitorio suyo, no va a tener tanto impacto en su día a día.
  • Definir muy bien los ajustes de privacidad: Herramientas como Strava permiten seleccionar una zona segura en la que la aplicación no contabiliza las rutas. Un servidor, por ejemplo, comparte muchísimo de mi día a día por las redes, pero nunca de los alrededores de mi casa y normalmente a horas distintas a las que en verdad ocurre la actividad. La idea es ojear aunque sean cinco minutos la pestaña de privacidad de la aplicación de turno, y decidir qué exponemos y en qué cuantía, haciendo lo propio a la hora de compartir nosotros esa información por redes sociales.

Son tres tips muy genéricos, pero es que con una estrategia bien planificada el impacto de futuras tergiversaciones del servicio de turno (que le aseguro que seguirán saliendo) será muchísimo más limitado. Que sí, seguirá estando ese riesgo, pero al menos seremos nosotros quienes controlan, en la medida de lo posible, el alcance del mismo, no delegándolo a la buena praxis de una compañía, en el diseño del servicio, o peor aún, en los objetivos buscados por aquellos que den a conocer/pongan en funcionamiento el vector de ataque.

 

________

Puede ver más artículos de esta serie en #MundoHacker, donde tratamos en varios tutoriales las medidas para atacar y/o defenderse en el mundo digital.

Y si el contenido que realizo le sirve en su día a día, piense si merece la pena invitarme a lo que vale un café, aunque sea digitalmente.

hazme patrono pabloyglesias