sábado, mayo 09, 2020

Cómo evitar que Google utilice tu red WiFi en sus servicios de localización

Este no es un tema nuevo, pero he de reconocer que a mí, personalmente, me pasó desapercibido y quería compartirlo con vosotros. Se trata de "cómo evitar que Google utilice tu red WiFi en sus servicios de localización". Algo que no es nuevo, pero que en su momento tuvo su impacto en los medios de comunicación y que hoy en día, tras la aprobación del GDPR en Europa se ha quedado en una zona gris.

Figura 1: Cómo evitar que Google utilice tu red WiFi en sus servicios de localización

Para los que no conozcáis la historia, hay que volver atrás en el tiempo a cuando Google quería mejorar los servicios de localización de sus plataformas móviles. Es decir, cómo saber dónde se encuentra un teléfono Android con mucha más exactitud. Para ello, se decidió utilizar un sistema basado en las bases de datos de Wardriving.

Wardriving y el Google Street Car

Hace ya tiempo, el Wardriving se convirtió en una diversión de los hackers muy extendida. La idea era meter en un mapa todas las redes WiFi de la ciudad para que cualquiera que quisiera, pudiera conectarse a Internet.  Es decir, el concepto era geoposicionar redes WiFi por toda la ciudad. Eso se podía hacer andando, en coche o en bicicleta.

Figura 3: Iconografía para redes WiFi descubiertas

Se creó una iconografía completa que se ponía en forma de pegatinas, dibujos pintados en las paredes o apps que te decían en qué lugares de la ciudad podrías encontrar redes WiFi con las que te pudieras conectar a Intenet, ya fuera porque eran redes abiertas, o inseguras con WEP, o con contraseñas fáciles de WPA o WPA2

Figura 4: Iconografía de Wardriving por las ciudades

De hecho, la competición en muchos de los congresos y conferencias de hackers era conseguir el máximo posible de redes WiFi con la información de conexión a la red para la base de datos de Wardriving. Congresos tan importantes como DefCON o EkoParty, tenían sus secciones específicas dedicadas solo al Wardriving.  Debido a esto, yo os recomendaba hacer esto antes de ir a hacer un Ethical Hcking a una empresa porque los empleados suelen conectarse a muchas redes WiFi cercanas a sus oficinas.

Figura 5: Memes con el asunto de Google Steet Vier Car y el sniffig de redes WiFi

Aquello se cerró, no sin que hubiera un lío en muchos países, e incluso Google tuvo que compartir los datos que había ido escaneando en cada uno de los países con los cuerpos de seguridad que tuvieron que revisar la información que había capturado de esas redes abiertas para ver, si en algún caso, habían capturado conexiones a Internet de los usuarios de la red sin cifrar que llevara información sensible y que, Google, hubiera almacenado sin conocimiento de los usuarios. Google borró los datos, y dijo que había sido culpa de una librería estándar mal usada.

Lo mismo, pero en Android

Por supuesto, la idea de copiar el concepto del Wardriving de la comunidad hacker para ir escaneando desde el Google Street Car todas las redes WiFi de la ciudad estaba bien, pero no era comparabale para nada si utilizaban los terminales smartphone con Android, que cada vez empezaban a tener más cuota de mercado frente a los líderes en el mundo móvil, donde iPhone, Motorola, Nokia o BlackBerry comenzaban a dejar paso a Android cada día más. En el libro de Hacking y Seguridad de Comunicaciones Móviles (2ª Edición) se hablan de estas técnicas para todo tipo de conexiones.

Figura 7: Libro de Hacking y Seguridad en comunicaciones móviles
GSM/GPRS/UMTS/LTE (2G,3G y 4) 2ª Edición

Así, los terminales Android (y también los terminales iPhone) utilizan un sistema de mantenimiento de los servicios de localización construido de la siguiente forma. Por un lado, aprovechándose los cada vez mejores servicios de GPS de los terminales reportan las potencias de señales capturadas  por cada terminal móvil de todos los elementos que emiten señales, ya sean BlueTooth, conexiones a redes de telefonía 2G, 3G y 4G, o redes WiFi. La idea es guardar de cada uno de ellos:
- El identificador físico que lo define de forma unívoca: BSSID, SSID, MACs, etc... 
- La potencia de la señal con que llega al terminal móvil. 
- La posición GPS que se puede obtener del servicio puro GPS. 
- Timestamp de cuándo se hace la captura de datos. 
- Información del terminal smartphone que hace la captura de datos.
Todos estos datos llegan a una base de datos donde se almacenan en Google. Con esos datos, utilizando algoritmos de triangulación y calibración,  permiten a Google saber:
- Dónde se encuentra realmente cada terminal móvil más allá de lo que marque el servicio GPS. 
- Saber dónde se encuentra cada terminal incluso si el sistema GPS falla. 
- Saber dónde se encuentra cada terminal con un servicio de menor latencia que el GPS. 
- Alimentar la base de datos con dónde se encuentra cada antena de telefonía exactamente. 
- Saber exactamente donde se encuentra cada red WiFi - incluida la tuya - del mundo.
Sin esta base de datos que da soporte a los servicios de localización de Google, aplicaciones tan populares como Waze o Google Maps funcionan regular. Puedes hacer la prueba tú mismo de forma sencilla. Basta con que pongas una ruta de tu casa a al trabajo en cualquiera de estas dos aplicaciones y quites la WiFi - la apagas en tu terminal iPhone o Android - y verás como, usando solo el GPS, los servicios de localización  funcionan regular y tienen márgenes de error muy altos.

Pero a muchas personas esto no les gusta, ya que también se guarda información de horarios de encendido y apagado del Access Point, de la seguridad de la red, de los fabricantes detrás de los dispositivos, y un buen número de insights que se podrían sacar.

Cómo sacar tu red WiFi de la bae de datos de Google Location Services

Esos datos también se utilizan para alimentar la ubicación en caso de anuncios mostrados por ubicaciones geográficas, o para otro tipo de servicios basados en ubicación. Es decir, gracias a la información que mantiene de las redes WiFi que captura usando los terminales Android como sensores, las conexiones a Internet de estos para enviarlos a sus servidores, y que tú tienes una red WiFi en tu casa, disfrutan de unos servicios de localización mejores que los que tuvo la industria de navegadores GPS para coches en su momento.

Figura 8: Gracias las bases de datos WiFi, Google Maps tiene
una precisión y velocidad mucho mayor que un GPS "tradicional"

Pero claro, Google (y Apple) no han pedido permiso a nadie para capturar esos datos tuyos. Supongamos que tú no quieres tener nada que ver con Google y no quieres que usen tu infraestructura tecnológica para hacer sus negocios. Pues entonces, tal y como está el panorama hoy en día, tienes que ser tú el que haga Opt-Out de su base de datos haciendo algo que no es muy sencillo para todos lo usuarios:
Es decir, debes llamar a tu red WiFi de una forma especial, ya que Google se compromete a eliminar de sus bases de datos todos los datos asociados a redes WiFi cuyo nombre SSID acabe en _nomap. Es decir, debes entrar y cambiar tú el nombre de tu red WiFi si no quieres que Google lo utilice para sus servicio de localización con los que desarrolla su negocio en el mundo Android.

Figura 9: Página de ayuda en Google para explicar _nomap

No sé si este es el mecanismo más correcto o no. Y lo cierto es que si fuera un Opt-in, es decir, que Google indexara solo la información de las redes WiFi acabadas en _map, probablemente no tendría suficiente densidad de redes WiFi para construir unos servicios de localización potentes, pero lo cierto es que a día de hoy, Google y Apple se han construido la red de localización más potente del mundo gracias a que utilizan todos sus dispositivos, y cuando digo todos me refiero a todos - smartphone, SmartTVs, smartWatches, etc... -, en sensores para capturar información del espectro de señales a su alrededor y almacenan esa información para explotarla en su beneficio.

Saludos Malignos!

Autor: Chema Alonso (Contactar con Chema Alonso)


No hay comentarios:

Publicar un comentario