#MundoHacker: Cómo falsear la localización en Android e iOS

localizacion movil fake

Conforme más pasa el tiempo y madura el ecosistema de aplicaciones móviles, más desarrollos utilizan nuestro posicionamiento para ofrecer características nuevas.

Esto no es estrictamente malo, sino todo lo contrario. De hecho, parte de esa contextualidad que fue mantra de esta santa casa hace unos años se la debemos a la democratización de la explotación del posicionamiento de nuestros dispositivos, que permite a cualquier desarrollador ofrecer una única herramienta que en todo momento está enfocada a las necesidades, habitualmente locales, del usuario.

Sin embargo, hay veces que por exigencias de guión nos interesaría poder aparentar estar en otro lugar. Entre ellas:

  • Privacidad: Quizás prefiramos perder los beneficios de la contextualidad a cambio de una suerte de localización ficticia, estableciendo así unas mecánicas de desinformación informativa que eviten los efectos nocivos de la burbuja de filtros o como medida para paliar esa monitorización masiva a la que estamos expuestos (recuerde que siempre hay que mostrar nuestro perfil digital más bonito).
  • Funcionalidad: Algunas aplicaciones están diseñadas específicamente para mostrar X contenido dependiendo del lugar donde estemos, perdiéndonos de paso todo lo que ocurre fuera. Este el caso de servicios como Netflix o HBO, que solo operan en el país donde fueron contratados. O quizás queramos cazar Pokemons sin movernos de nuestra casa, hacer checkins en lugares en los que previamente hemos estado (y no pudimos hacerlos en el momento) o conocer nuevas personas en Tinder días antes de irnos de viaje. La cuestión es que algunas de estas herramientas ofrecen la capacidad de modificar la ubicación, y otras no. Y en estos últimos casos quizás pueda ser de interés hacer uso de alguna herramienta de Fake GPS.
  • Investigación: Por último, aquellos que se dedican a la auditoría precisan de herramientas de este tipo para realizar sus análisis, habida cuenta de que no siempre se pueden realizar in situ, y a la hora de sacar conclusiones, lo suyo es que el entorno de prueba sea lo más cercano a la realidad posible.

Con esto en mente, quería preparar un tutorial rápido sobre qué alternativas tenemos a día de hoy en los dos sistemas operativos líderes del mercado para modificar bajo demanda nuestra localización móvil: Android e iOS.

Pero antes de nada…

Algunas consideraciones previas

Me parece importante señalar varios puntos.

El primero y más obvio es que según en qué servicio vayamos a hacer uso de un sistema de Fake GPS, lo mismo estaremos inclumpliendo la política de uso del mismo, y por tanto, nos estamos jugando la posibilidad de que nos baneen. En el caso de Tinder, por ejemplo, la aplicación ya ofrece mediante pago la opción de cambiar nuestra localización, por lo que claramente estamos haciendo algo que es considerado ilegal. Y lo mismo pasaría con la amplia mayoría de juegos basados en localización (Ingress, Pokemon Go…), que han sido diseñados precisamente para que se disfruten al aire libre y en persona.

Además, hay que ser conscientes de que no siempre va a funcionar, y que dependiendo de cómo haya habilitado el servicio el control de la localización del usuario, puede ser fácilmente identificable.

La localización suele venir dada por el sistema GPS, que se creó precisamente para estos derroteros. Pero además, y como ya he explicado en alguna otra ocasión, también se puede obtener mediante triangulación de antenas (lo que utiliza habitualmente las compañías de telecomunicaciones), mediante el estudio de las redes WiFi que tenemos alrededor nuestro (algo muy utilizado, por ejemplo, por Google) o mediante la IP de conexión, asociada ineludiblemente a un espacio geográfico. Y, por supuesto, por la unión de varios de estos sistemas.

Con un Fake GPS podremos cambiar la localización de nuestro dispositivo, pero eso no evita que la herramienta haga uso de otros controles para darse cuenta de que en efecto algo está pasando.

Afortunadamente, he de decir que la mayoría de aplicaciones de uso habitual no tienen habilitados controles de este tipo, fiándose al 100% de lo que diga el GPS. Pero si nuestro objetivo es pasar desapercibidos ante los ojos del Gran Hermano, quizás solo modificando la localización GPS no vayamos a conseguir nada más que levantar sospechas.

Cómo modificar nuestra ubicación con un sistema de Fake GPS

La manera de implementarlo depende bastante de si estamos en un entorno Android o uno iOS. Vamos a verlos por separado.

fake gps android

Fake GPS en Android

Las opciones de desarrollador de Android ya nos permiten simular ubicación, por lo que únicamente necesitaremos de una herramienta creada ex profeso para ello.

En mi caso suelo utilizar Floater (EN), que no necesita tener rooteado el dispositivo, y que es de las más completas que hay en el mercado.

La instalación, no obstante, requiere de una serie de pasos que podrían fruncir el ceño a más de uno:

  • Nos pide permiso para mostrarse por encima de otras aplicaciones: Mientras Floater está activa, dejará una marca de agua en el margen superior izquierdo de la pantalla, de forma que si la pulsamos nos mostrará un mapa en el que podemos elegir nuestra posición fake. Pero este tipo de permisos también podrían permitir, en esencia, robar cualquier tipo de credenciales de forma opaca al usuario (una pantalla transparente que registra todo lo que el usuario escribe, o fuerza a este a pulsar en botones invisibles que lo suscriban a servicios premium). Sobra decir que creo que Floater es de fiar, pero torres más altas han caído.
  • Tenemos que tener habilitadas las opciones de desarrollador: Para ello, basta con ir a los Ajustes de Android > Información del Teléfono, y pulsar 5 o 10 veces seguidas (depende de la versión) en el Número de compilación. A partir de entonces tendremos un nuevo menú con estas opciones.
  • Nos pedirá establecer Floater como la aplicación para simular ubicación por defecto: En mi caso y como ya tenía las opciones de desarrollador activas, la misma app me llevó a la página de desarrolladores para que lo hiciera. Si no, está en ese menú que acabamos de habilitar.

Y su funcionamiento es el esperable de un servicio de este tipo. Podemos bien elegir el punto del mapa donde queremos aparentar estar, o bien elegir un trayecto y la duración del mismo, de forma que Floater emula estar de viaje.

Además hablamos de una aplicación persistente, por lo que para cerrarla (y volver a tener nuestra localización real) hay que cerrar la aplicación por completo (quitarla de la memoria), que en algunos dispositivos se consigue simplemente eliminándola de la barra de notificaciones, y en otros mediante el cierre de la app en la pantalla de aplicaciones en uso.

GPS iOS

Fake GPS en iOS

En el sistema operativo de la manzanita la cosa se complica considerablemente.

A nivel del propio SO, Apple nos permite gestionar desde Ajustes > Privacidad > Localización, que aplicaciones pueden acceder al GPS y cuáles no. Además, cuando una app está haciendo uso de la localización, el sistema lo muestra mediante un icono que aparecerá en la esquina superior derecha de la pantalla, por lo que en todo momento sabremos que esto está ocurriendo.

Sin embargo, si lo que queremos es controlar la localización que mostramos en nuestros servicios, la única manera de hacerlo es teniendo el dispositivo con jailbreak activado.

Y una vez lo tengamos, haremos uso de alguna de las múltiples aplicaciones de Fake GPS que hay en el market de jailbreak (Cydia, habitualmente), como puede ser LocationHandle (EN), Fake GPS (EN) o FakeMyi (EN).

Con esto ya tendríamos una herramienta para modificar a nuestro antojo la señal GPS del dispositivo. Utilícela de forma responsable :).

 

________

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