jueves, noviembre 14, 2024

Open Gateway: Cómo detectar a un ciberestafador que manipula el GPS con FakeGPS usando el API de Device Location Verification

Las medidas de seguridad informática deben evolucionar al mismo ritmo al que evolucionan los sistemas de las tecnologías de información, y las amenazas que van a apareciendo. Las necesidades cambian y el mundo de la tecnología se adapta de forma dinámica, y las medidas de seguridad deben ir alineadas con los nuevos requisitos marcados por los avances tecnológicos actuales y las amenazas reales existentes. Y por desgracia, las ciberestafas y el fraude crecen en el ámbito digital y, por ello, debemos estar más preparados, aplicar nuevas medidas de fortificación, y ser conscientes de cómo podemos estar más preparados y de qué posibilidades contamos.


En el presente artículo se quiere hablar del problema de la falsificación de la ubicación y las ciberestafas que se crean. Hay gran cantidad de aplicaciones y servicios que necesitan verificar la ubicación lo más cercana o real posible de un usuario para ofrecerle un catálogo de servicios. O algo más crítico, que alguien se haga pasar por ti, ya que ha extraído o robado tus credenciales y se hace pasar por ti desde una ubicación lejana como, por ejemplo, un país extranjero o una ciudad en la que no vives. 

También para hacer fraude o simplemente para hacer una ciberestafa en una aplicación en la que la ubicación es parte fundamental del servicio, como las plataformas de transportes de personas y mercancías, las de citas, o las de servicios ofrecidos por ubicaciones GPS. También para evitar los controles de rutas hechos por esos servicios basados en ubicación GPS.

Un ejemplo muy claro de protección de sistemas basados en ubicación puede ser la comprobación de la ubicación del terminal móvil cuando se hace uso de una tarjeta de crédito, o comprobar que los accesos a funciones privilegiadas o servicios privilegiados son sólo válidos cuando una persona tiene su terminal móvil con él en una ubicación pre-establecida, como el lugar donde se realiza una compra, o el head-quarter de la compañía. 

Cómo detectar con una línea de código si un terminal está dónde dice que está

Por ejemplo, el acceso a funciones de alta seguridad en una CRA (Central Receptora de Alertas) o un SOC (Security Operation Center) podría ser solo accesible desde la ubicación del centro físico de la CRA o el SOC, por lo que comprobar la ubicación, y comprobar que esta no ha sido manipulada es fundamental. Esto, se puede hacer con el API de Device Location Verification. Vamos a trabajar con Open Gateway y vemos cómo se hace. Para ello partimos del siguiente escenario:

PRIMERO: Yo, como usuario, me encuentro en Distrito Telefónica y lo puedo mostrar con una aplicación como Google Maps. Partimos que estoy aquí. La ubicación es real.

Figura 3: Ubicación real en Google Maps

SEGUNDO: Un atacante utiliza la aplicación
FakeGPS para engañar a una aplicación sobre la ubicación que proporciona el GPS del dispositivo. 

Figura 4: Con Fake GPS nos situamos en Málaga

Como se puede ver en la imagen se puede ver como el atacante como la ubicación GPS en Málaga, por lo que cuando la aplicación real haga uso del GPS del dispositivo móvil, ésta recibirá la ubicación de Málaga.

TERCERO: Ahora, en la siguiente imagen, se puede ver que (en este caso Google Maps) se obtiene la ubicación de Málaga. De esta forma si la aplicación hace restricción por ubicación para evitar algo se “bypassea” de forma sencilla por el atacante.

Figura 5: Google Maps nos detecta ahora en Málaga.
Hemos engañado a Google Maps con Fake GPS.

Esto debe ser tenido en cuenta, ya que no podemos fiarnos de dicha ubicación GPS, ya que puede ser modificada y evitar dicha restricción.

CUARTO: Ahora, con la API de Device Location Verification podemos acceder a información real sobre la ubicación, en un radio, dónde se encuentra el dispositivo, y verificar si de verdad se encuentra donde dice que se encuentra. 
Como se puede ver en la imagen siguiente, a pesar de lo que diga la información GPS, podemos ver gracias a la API de Device Location Verification  que el usuario NO se encuentra en Málaga, que es lo que indica el color rojo.

Figura 7: El API de Device Location Verification
confirma que no está en Málaga.

En otras palabras, lo que nos decía la aplicación anterior que había sido engañada con FakeGPS quedaría invalidado, ya que Device Location Verification nos indica que no se encuentra en Málaga. Para saberlo debemos ir validando diferentes radios que puedan cubrir varias zonas. El usuario tiene un consentimiento explícito en el uso de la API.


Por otro lado, si probamos con Device Location Verification (y nuestro querido portal de demos de Open Gateway hecho en IdeasLocas) sobre el Distrito C de Telefónica podremos identificar que realmente nos encontramos ahí, y no dónde nos decía el atacante, como vemos en la imagen siguiente.

Figura 9El API de Device Location Verification
confirma que estamos en Distrito C.

Es importante, entender que un servicio puede disponer de esta API para validar que un usuario no intenta engañarle con la ubicación, ya sea para abusar del servicio o cualquier intención que exista. Además, es un hecho fundamental cuando se quiere controlar las ciberestafas o el fraude y evitar las acciones sospechosas que se hacen desde ubicaciones lejanas, ya que se puede validar que el usuario no está dónde dice estar. Esto último tiene una clara alineación con evitar el fraude en pagos o transferencias.

Figura 10: Código en Python para detectar el fraude de ubicación.

El ejemplo anterior, con un código en Python, se puede ver cómo se accede a Latitud y Longitud del GPS y luego se verifica con Device Location Verification para detectar el fraude. Además de ese APIOpen Gateway tiene la API de Device Status con la que se puede validar si el número se encuentran en Roaming o no. Esto es interesante, ya que permite también sumarle una capa extra de seguridad para identificar que no se encuentra fuera del país.


En muchas ocasiones, ante un robo de tarjeta, credenciales u otros elementos se hacen uso de ellos desde ubicaciones lejanas (fuera del país), por lo que se puede controlar con Device Status y verificar realmente que la operación no se realiza desde fuera del país.


Las capacidades de seguridad que ofrece Open Gateway son altísimas, por lo que este es uno de los casos de uso que se puede encontrar. Iremos desgranando más casos de uso y no dudes en probarlo y revisar la documentación que existe. Tienes el Partner Program y el Developer Hub.

Saludos,

No hay comentarios:

Publicar un comentario