Position Android Phone without GPS signal
Actualmente exiten otros metodos de posicionar un terminal sin la necesidad de utilizar la señal GPS. A traves de Google Maps Geolocation API ubicaremos un dispositivo.
https://developers.google.com/maps/documentation/geolocation/intro?hl=es-419
Existe 4 maneras de posicionar un dispositivo sin necesidad de GPS
-
La manera mas basica de geoposicionar un dispositivo.
datos = { "considerIp": "true" }
-
Utilizacion de tecnica wardriving. Muchos personas usan dispositivos GPS para determinar la ubicación de los hotspots hallados y registrarla en un sitio web
datos = { "considerIp": "false", "wifiAccessPoints": [ { "macAddress": "xx-xx-xx-xx-xx-xx", "signalStrength": -48, "signalToNoiseRatio": 0 }, { "macAddress": "xx-xx-xx-xx-xx-x1", "signalStrength": -49, "signalToNoiseRatio": 0 } ] }
-
CDMA, LTE y GSM principales sistemas de radio utilizados en los teléfonos celulares. Para mas informacion https://es.wikipedia.org/wiki/MCC/MNC
datos = { "considerIp": "false", "cellTowers": [ { "cellId": CID, "locationAreaCode": LAC, "mobileCountryCode": MCC, "mobileNetworkCode": MNC } ] }
Existen diferentes bases de datos de donde podemos sacar informacion.
-
Herrevad: This database contains the WiFi connections history of preinstalled Google apps in Android OS devices. It can be WIFI connections of Google Play, Google Maps, Youtube, etc
/data/com.google.android.gms/databases/herrevad
-
Wigle: Open source network observation, positioning, and display client from the world's largest queryable database of wireless networks.
/data/net.wigle.wigleandroid/databases/wiglewifi.sqlite
-
Astro: Es un gestor de archivos que aparte de explorar, organizar, descargar y compartir archivos, tambien guarda todas las wifis y cell tower a las que el telefono se conecta.
/data/com.metago.astro/databases/mdm.db
Para instalar el porgrama ejecutaremos los sigueintes comandos
git clone https://github.com/NoSuitsSecurity/GeoAndroid.git
cd GeoAndroid
pip install -r requirements.txt
Change API Credential: Necesitas crear una Clave de API de Google para poder utilizar esta utilidad. Para crear una clave visite esta pagina https://developers.google.com/maps/documentation/geolocation/intro?hl=es-419
Una vez obtenia la clave, cambia:
GeoForensic.py
9 YOUR_API_KEY = " "
templates/index.html
7 'mapsApiKey': ' '
Uso:
usage: python3 GeoForensic.py [options]
Example with long option names
optional arguments:
-h, --help Show this help message and exit
-db, --db_path DB_PATH Path of sqlite
-t, --type TYPE herrevad or wigle
Ejemplo:
python3 GeoForensic.pyimport -db /home/usuario/Documents/herrevad.db -t herrevad
En la carpeta Template encontraremos el archivo *.html en funcion de las opciones que hayamos escogido.