In che modo le app basate sulla posizione evitano di essere imbrogliate dal GPS emulato?

26

Alcune app come Foursquare richiedono all'utente di "registrarsi" in luoghi fisici, al fine di ottenere benefici economici.

Dato che il GPS emulato è disponibile per versioni personalizzate di Android, sembra facile ingannare tali app.

Considerati gli incentivi monetari, sono sicuro che molte persone ci hanno provato, quindi come fanno le app a prevenire l'imbroglio del GPS?

    
posta Nicolas Raoul 12.08.2014 - 07:29
fonte

5 risposte

25

Ci sono molti modi per tracciare la posizione dell'utente su un dispositivo mobile (andrò su come funziona in seguito).

Nessuno dei metodi di tracciamento è particolarmente facile da spoofing. Può essere fatto ma è semplicemente al di fuori del regno dell'utente medio poiché generalmente richiede un dispositivo modificato (fisicamente o programmaticamente) o un dispositivo esterno.

Inoltre, è molto più facile per gli sviluppatori legare più forme di tracciamento con una logica semplice (IE puoi solo 'controllare' x numero di volte entro il tempo y) di quanto lo sia per un hacker spoofare un'app come Foursquare e ricevi lo sconto del 5% a cena. Ancora una volta, può essere fatto, ma [la mia teoria è] finora non è economico per gli hacker.

Come promesso, ecco alcune delle grandi tecnologie sfruttate nel tracciamento geografico:

  • Segnalazione GPS. probabilmente ti è più familiare. È il rapporto più "costoso" perché richiede quantità relativamente elevate di energia per leggere diversi satelliti GPS. Oggi un sistema GPS puro viene usato raramente sui dispositivi mobili. I dispositivi GPS possono essere falsificati a livello di codice (cambiando la chiamata del software alla posizione del driver GPS) anche senza modificare affatto un dispositivo ( come si vede qui ).
  • Segnalazione GSM . Questo è forse il modo più comune in cui la tua posizione viene monitorata durante il giorno mentre tu si stanno muovendo. Il concetto è semplice. Il tuo telefono, con i normali messaggi alle torri cellulari vicine, triangola la tua posizione in un dato momento. Questo metodo è estremamente difficile da spoofing senza hardware esterno o alterando seriamente le funzionalità del telefono (ad esempio, se si contraffa una torre cellulare, sì, si è "non tracciati" geograficamente, ma non è possibile effettuare chiamate telefoniche). Inoltre, il traffico cellulare è crittografato. Potresti potenzialmente spoofare il punto di accesso in cui il software delle app comunica con il driver dei dati della torre cellulare del telefono, ma è anche difficile a dirsi.
  • Reporting LAN. Si tratta di un concetto piuttosto interessante perché fornisce alti livelli di precisione all'interno (qualcosa che è stato tradizionalmente un problema). Ciò richiede molte impostazioni, ma come minimo consentirebbe alle app di parlare con gli hotspot Wi-Fi registrati per confermare la tua posizione in base alla quale è connesso il wifi. Questo è teoricamente possibile spoofare ma dipenderebbe in gran parte dai livelli di crittografia per la firma della connessione legittima.
  • Report WAN. Questo non è altro che semplice segnalazione di indirizzi IP. Questa è forse la più facile da falsificare, ma l'ho messa qui per completezza in quanto è molto comune per i siti ottimizzati per i dispositivi mobili.
  • Altri (Bluetooth, RFID, Inertial nav, experimental, ecc.) Ci sono un bel po 'di altri metodi là fuori. Uno dei miei preferiti è Navigazione inerziale dove non ci sono trasmissioni esterne (quindi potenzialmente molto difficili da falsificare) poiché utilizza sensori interni e mappa per accertarti della tua posizione. Ciò è visibile nei sistemi di guida missilistica e in alcune app. Life360 ad esempio usa una variazione di questo in quanto utilizza pochissima energia (tutti i sensori sono già attivi).

Altre cose da ricordare:

  • Gli sviluppatori possono sfruttare qualsiasi numero di queste tecnologie, rendendo così un'app ancora più difficile da falsificare.
  • La maggior parte dei dati sulla posizione viene archiviata su un dispositivo mobile (e talvolta in molti luoghi) fino all'eliminazione esplicita. Pertanto uno sviluppatore può (potenzialmente) accedere ai precedenti punti di dati sulla posizione. Quindi se dici che eri al Café Mama di 20 volte oggi e l'app parla semplicemente con il siri per scoprire il tuo ultimo punto di geo-dati a 100 miglia di distanza, l'app si chiederà ...
  • Le forze dell'ordine avrebbero una maggiore capacità di determinare la tua posizione reale, quindi solo perché potresti aver spoofato un'app non significa che dovresti scommettere sulla tua vita (alcuni commenti suggeriscono che potresti usare questo spoofing in modo nefasto, quindi ho pensato di buttarlo qui dentro.
risposta data 12.08.2014 - 14:34
fonte
8

Per Ingress , il wargame globale di Google, vengono utilizzate una serie di misure anti-spoofing. Google tace sull'intera gamma, ma due che sono state dimostrate sono:

  • Limitazione di velocità: massimo 40 mph consentito nel gioco
  • Misure di corroborazione: gli SSID wifi di riferimento incrociato ricevuti con il loro database di posizione
risposta data 12.08.2014 - 13:55
fonte
3

La risposta breve è che (per quanto ne so io non è possibile fermare perfettamente l'emulazione della posizione su piattaforme aperte (ad esempio Android). Altre piattaforme più restrittive (ad es. IOS / Windows Phone non jailbroken) non tendono a soffrire tanto di questi problemi in quanto non consentono agli utenti lo stesso livello di libertà in termini di tipi di applicazioni che possono installare.

Ciò che i produttori di software possono fare è cercare di ridurre l'impatto e rilevare che le persone utilizzano male questa funzione. Ad esempio, un modo per farlo potrebbe essere quello di analizzare le posizioni degli utenti e se si muovono troppo velocemente, supponiamo che stiano utilizzando una qualche forma di spoofing / emulazione GPS.

    
risposta data 12.08.2014 - 13:08
fonte
1

Da quello che so, il modo in cui parli le posizioni è:

1) Usa la modalità sviluppatore con posizioni simulate. Ci sono modi per scoprire che stai utilizzando la modalità sviluppatore in modo che lo sviluppatore possa decidere che il GPS non è affidabile in questo caso. Quindi useranno altri modi per trovare la tua posizione come le reti wifi.

2) Puoi falsificare la tua posizione quando il tuo telefono è radicato, senza abilitare la modalità delle locazioni fittizie. Ancora una volta, in alcuni casi ci sono modi per scoprire che il telefono è radicato e di nuovo lo sviluppatore può decidere di non fidarsi della posizione GPS.

Ricorda che questa è solo una semplice spiegazione. Se vuoi vedere come alcune persone identificano posizioni simulate, leggi questo: link

Modifica: È stato portato alla mia attenzione che i dispositivi rooted potrebbero non essere sempre così facili da rilevare o non essere rilevabili affatto. Quindi la seconda versione potrebbe funzionare quando la radice non è rilevabile.

    
risposta data 12.08.2014 - 12:53
fonte
1

La chiave è una sfida a cui è facile rispondere per coloro che si trovano nel luogo e quasi impossibile per coloro che non ci sono.

Ad esempio, una semplice convalida può essere conoscendo l'id della torre cellulare e gli SSID Wi-Fi disponibili nel luogo. Se hai il telefono a portata di mano, la risposta è semplice e può essere eseguita automaticamente dal programma, ma se non ci sei, è difficile rispondere.

Ma dopo che qualcuno ha creato una mappa di esso. Sarà facile da falsificare.

E non posso davvero immaginare un modo migliore se i proprietari di proprietà locali non sono coinvolti.

Se i proprietari delle proprietà locali sono coinvolti, un altro modo consiste nel mettere un adesivo o uno schermo piccolo nella finestra del negozio con una parola chiave e indicare all'utente di inserirlo per convalidare la sua posizione. L'utente deve essere lì per inserire la parola corretta. Per evitare il problema di mappatura, la parola chiave può essere cambiata frequentemente.

    
risposta data 30.10.2016 - 00:38
fonte

Leggi altre domande sui tag