Oltre 1000 app Android possono accedere ai dati dell'utente senza le dovute autorizzazioni

I ricercatori hanno scoperto che molte app Android sul Google Play Store avevano modi per aggirare il modello di autorizzazione di Android per raccogliere i dati degli utenti.

Nonostante la percezione degli utenti, Android è in realtà abbastanza sicuro come sistema operativo mobile. Generalmente accettiamo la premessa che l'anello più debole sia l'utente; fintanto che controlli cosa installi e quali autorizzazioni concedi, dovresti essere al sicuro dall'accesso e dalla distribuzione non autorizzati dei tuoi dati. Se neghi a un'app Android l'accesso alla tua posizione, quell'app non dovrebbe avere alcun modo per capire dove ti trovi o dove sei stato. Tuttavia, secondo i ricercatori dell'International Computer Science Institute (ICSI), alcuni sviluppatori di app hanno trovato il modo di aggirare il modello di autorizzazione di Android.

Secondo CNET, lo studio è stato presentato il mese scorso a PrivacyCon dopo essere stato responsabilmente divulgato sia a Google che alla FTC lo scorso settembre. sebbene il

documento pubblicato sul sito web della FTC non elenca le app esatte che il team ha contrassegnato nella propria analisi (questi dettagli verranno forniti più avanti nel file Conferenza sulla sicurezza Usenix il mese prossimo), fornisce dettagli sul loro metodo di analisi e su come le app aggiravano il modello di autorizzazione di Android. Per quello che vale, Google afferma che la sicurezza e la privacy cambiano ciò che Google ha introdotto in Android Q chiuderà questi metodi di bypass, pertanto questo documento fornisce informazioni preziose sulle giustificazioni di Google per alcune delle modifiche alla piattaforma apportate in Android 10. Immergiamoci.

Come >1000 app hanno bypassato il modello di autorizzazione di Android

I ricercatori distinguono tra due diverse tecniche di elusione della sicurezza: canali laterali e canali nascosti. Le tecniche del canale laterale implicano l'accesso a particolari informazioni in un modo che non è coperto dal meccanismo di sicurezza; ad esempio, le app erano in grado di tracciare la posizione di un dispositivo utilizzando l'indirizzo MAC fino a quando Android Pie non ha introdotto la randomizzazione dell'indirizzo MAC. Le tecniche di canale nascosto implicano che due servizi cooperino per inviare dati da un servizio che ha accesso valido a uno che non lo ha; ad esempio, un'app a cui è stato concesso l'accesso alla posizione potrebbe condividere tali dati con un'app a cui non è stato concesso l'accesso.

Il team ICSI ha analizzato 88.113 delle app Android più popolari del Google Play Store statunitense e ha scoperto oltre 1.000 app e librerie di terze parti che utilizzano canali secondari e/o nascosti per aggirare le misure di sicurezza di Android in modo che possano accedere ai dati sulla posizione e agli identificatori persistenti degli utenti dispositivi. Il loro set di dati completo consisteva in 252.864 APK poiché il team periodicamente analizzava il Play Store alla ricerca di nuove versioni delle 88.113 app che intendevano analizzare. Inizialmente hanno testato il comportamento di ciascuna app su a Google Nexus 5X con Android 6.0.1 Marshmallow ma in seguito hanno testato nuovamente i risultati su a GooglePixel2 utilizzando Android Pie per dimostrare che i loro risultati erano ancora validi a partire dall'ultima versione al momento della divulgazione.

Con questo set di dati, il team ha sviluppato un metodo che utilizza l'analisi dinamica e statica per rilevare l'elusione del modello di autorizzazione di Android. In altre parole, il team ha studiato il comportamento dell'app controllando il comportamento di runtime dell'app (analisi dinamica) o scansionando il codice per comportamenti potenzialmente dannosi (analisi statica). analisi.) Naturalmente, gli sviluppatori di app dannose sono consapevoli di queste tecniche, utilizzando l'offuscamento del codice e il caricamento dinamico del codice per rendere più difficile l'analisi statica o TLS intercettazione per rilevare quando l'app è in esecuzione in un ambiente virtualizzato, pertanto il team ICSI ha utilizzato un mix di analisi statica e dinamica (analisi ibrida) nei propri processi test. Di conseguenza, il team ha scoperto che i seguenti dati venivano recuperati da app che non disponevano delle autorizzazioni richieste:

  • IMEI: poiché un IMEI è un identificatore univoco e persistente, è utile per i servizi online eseguire lo scraping in modo da poter tracciare i singoli dispositivi. Il team ha scoperto che il Salmonadi E Baidu Gli SDK utilizzavano un canale nascosto per leggere l'IMEI. Le app con accesso legittimo all'IMEI archiviavano file nascosti nella memoria esterna contenente l'IMEI del dispositivo in modo che altre app senza accesso legittimo potessero leggere l'IMEI. Le app identificate che utilizzano l'SDK di Baidu in questo modo includono le app dei parchi a tema Disney per Hong Kong e Shanghai, Samsung Health e Samsung Browser.
  • Indirizzo MAC di rete: Anche l'indirizzo MAC di rete è un identificatore univoco e in genere è protetto dall'autorizzazione ACCESS_NETWORK_STATE. Secondo i ricercatori, le app utilizzavano il codice nativo C++ per "richiamare una serie di chiamate di sistema UNIX non protette". Il team ha identificato 42 app che utilizzano Unity SDK per aprire un file socket di rete e un ioctl per ottenere l'indirizzo MAC, anche se hanno notato che 748 delle 12.408 app contenevano il codice in questione mentre mancavano ACCESS_NETWORK_STATE autorizzazione.
  • Indirizzo MAC del router: L'autorizzazione ACCESS_WIFI_STATE protegge il BSSID, ma la lettura della cache ARP in /proc/net/arp consente a un'app di ottenere tali dati senza bisogno di alcuna autorizzazione. Il ricercatore ha identificato il OpenX SDK come se utilizzasse questa tecnica del canale laterale.
  • Geolocalizzazione: I ricercatori hanno scoperto che l'app Shutterfly accedeva ai tag di posizione dei metadati EXIF ​​delle foto. Tutto ciò che serve è l'autorizzazione READ_EXTERNAL_STORAGE.

In Android Q, Google ora richiede che le app dispongano dell'autorizzazione READ_PRIVILEGED_PHONE_STATE per leggere l'IMEI. I dispositivi che eseguono Android Q ora trasmettono indirizzi MAC casuali per impostazione predefinita. Infine, Android Q Archiviazione con ambito le modifiche mitigano la capacità delle app di leggere i dati sulla posizione dalle foto. Pertanto, queste preoccupazioni sono state affrontate nell'ultima versione di Android, ma come tutti sappiamo, lo farà impiegare un bel po' affinché l'ultimo aggiornamento si propaghi.


Conclusione

Nel complesso, questo studio fornisce uno sguardo illuminante su come alcune app accedono ai dati che dovrebbero essere protetti tramite autorizzazioni. La ricerca ha esaminato solo un sottoinsieme di quelle che Google definisce autorizzazioni "pericolose", in particolare ignorando autorizzazioni come Bluetooth, contatti e SMS. Per tutti i dettagli su questo rapporto, consiglio di leggere il documento presentato alla FTC.