Pētnieki atklāja, ka daudzām Android lietotnēm Google Play veikalā bija veidi, kā apiet Android atļauju modeli, lai iegūtu lietotāja datus.
Neskatoties uz lietotāju uztveri, Android kā mobilā OS patiesībā ir diezgan droša. Mēs parasti pieņemam pieņēmumu, ka vājākais posms ir lietotājs; Kamēr skatāties, ko instalējat un kādas atļaujas piešķirat, jums jābūt aizsargātam no nesankcionētas piekļuves un datu izplatīšanas. Ja liedzat Android lietotnei piekļuvi savai atrašanās vietai, šai lietotnei nevajadzētu būt nekādā veidā, lai noskaidrotu, kur atrodaties vai kur esat bijis. Tomēr daži lietotņu izstrādātāji ir izdomājuši veidus, kā apiet Android atļauju modeli, norāda Starptautiskā datorzinātņu institūta (ICSI) pētnieki.
Saskaņā ar CNET, pētījums tika prezentēts pagājušajā mēnesī plkst PrivacyCon pēc tam, kad pagājušā gada septembrī tas tika atbildīgi atklāts gan Google, gan FTC. Lai gan papīrs, kas publicēts FTC tīmekļa vietnē nav norādītas precīzas lietotnes, kuras komanda atzīmēja savā analīzē (šī informācija tiks sniegta vēlāk vietnē
Usenix drošības konference nākamajā mēnesī), tajā ir sniegta informācija par viņu analīzes metodi un to, kā lietotnes apiet Android atļauju modeli. Google saka, ka Google maina drošību un konfidencialitāti ir ieviests operētājsistēmā Android Q slēgs šīs apiešanas metodes, tādējādi šis dokuments sniedz vērtīgu ieskatu Google pamatojumos dažām platformas izmaiņām, ko viņi ir veikuši operētājsistēmā Android 10. Nirsim iekšā.Kā vairāk nekā 1000 lietotņu apieta Android atļauju modeli
Pētnieki izšķir divus dažādus drošības apiešanas paņēmienus: sānu kanālus un slēptos kanālus. Sānu kanālu metodes ietver piekļuvi noteiktai informācijai tādā veidā, uz kuru neattiecas drošības mehānisms; piemēram, lietotnes varēja izsekot ierīces atrašanās vietai, izmantojot MAC adresi, līdz Android Pie ieviesa MAC adrešu randomizāciju. Slēpto kanālu metodes ietver divus pakalpojumus, kas sadarbojas, lai nosūtītu datus no viena pakalpojuma, kuram ir derīga piekļuve, tādam, kuram nav; piemēram, lietotne, kurai ir piešķirta piekļuve atrašanās vietai, var kopīgot šos datus ar lietotni, kurai nav piešķirta piekļuve.
ICSI komanda analizēja 88 113 populārākās Android lietotnes no ASV Google Play veikala un atklāja vairāk nekā 1000 lietotņu un trešo pušu bibliotēkas, kas izmantot sānu kanālus un/vai slēptus kanālus, lai apietu Android drošības pasākumus, lai viņi varētu piekļūt atrašanās vietas datiem un lietotāju pastāvīgajiem identifikatoriem. ierīces. Viņu pilnā datu kopa sastāvēja no 252 864 APK failiem, jo komanda periodiski meklēja Play veikalu, lai atrastu jaunas versijas 88 113 lietotnēm, kuras viņi plānoja analizēt. Viņi sākotnēji pārbaudīja katras lietotnes uzvedību a Google Nexus 5X darbojas operētājsistēma Android 6.0.1 Marshmallow, bet vēlāk atkārtoti pārbaudīja savus atklājumus uz a Google Pixel 2 darbojas Android Pie, lai pierādītu, ka viņu atklājumi joprojām bija spēkā jaunākajā izlaidumā atklāšanas brīdī.
Izmantojot šo datu kopu, komanda izstrādāja metodi, izmantojot dinamisku un statisku analīzi, lai noteiktu Android atļauju modeļa apiešanu. Citiem vārdiem sakot, komanda pētīja lietotnes uzvedību, pārbaudot lietotnes izpildlaika darbību (dinamiskā analīze) vai skenējot kodu, lai noteiktu potenciāli ļaunprātīgu darbību (statisku analīzi.) Protams, ļaunprātīgu lietotņu izstrādātāji apzinās šīs metodes, izmantojot koda apmulsināšanu un dinamisku koda ielādi, lai padarītu statisko analīzi grūtāku vai TLS. pārtveršana, lai noteiktu, kad lietotne darbojas virtualizētā vidē, tāpēc ICSI komanda savā darbā izmantoja statiskās un dinamiskās analīzes (hibrīda analīzes) kombināciju. testēšana. Rezultātā komanda atklāja, ka lietojumprogrammas, kurām nebija nepieciešamo atļauju, nokopj tālāk norādītos datus.
- IMEI: Tā kā IMEI ir unikāls, pastāvīgs identifikators, tiešsaistes pakalpojumiem ir lietderīgi to notīrīt, lai tie varētu izsekot atsevišķas ierīces. Komanda atklāja, ka Lašas un Baidu SDK izmantoja slēptu kanālu, lai nolasītu IMEI. Lietojumprogrammas ar likumīgu piekļuvi IMEI glabāja slēptos failus ārējā atmiņā, kurā bija ierīces IMEI, lai citas lietotnes bez likumīgas piekļuves varētu nolasīt IMEI. Identificētās lietotnes, kas šādā veidā izmanto Baidu SDK, ietver Disney atrakciju parku lietotnes Honkongai un Šanhajai, Samsung Health un Samsung Browser.
- Tīkla MAC adrese: Tīkla MAC adrese ir arī unikāls identifikators, un parasti to aizsargā atļauja ACCESS_NETWORK_STATE. Pēc pētnieku domām, lietotnes izmantoja C++ vietējo kodu, lai "izsauktu vairākus neapsargātus UNIX sistēmas zvanus". Komanda identificēja 42 lietotnes, kas izmanto Unity SDK, lai atvērtu a tīkla ligzda un ioctl, lai iegūtu MAC adresi, lai gan viņi atzīmēja, ka 748 no 12 408 lietotnēm satur attiecīgo kodu, bet trūka ACCESS_NETWORK_STATE. atļauju.
- Maršrutētāja MAC adrese: Atļauja ACCESS_WIFI_STATE aizsargā BSSID, taču, lasot ARP kešatmiņu mapē /proc/net/arp, lietotne var iegūt šos datus bez atļaujām. Pētnieks identificēja OpenX SDK, izmantojot šo sānu kanālu tehniku.
- Ģeolokācija: Pētnieki atklāja, ka lietotne Shutterfly piekļūst fotoattēlu EXIF metadatu atrašanās vietas atzīmēm. Viss, kas nepieciešams, ir READ_EXTERNAL_STORAGE atļauja.
Operētājsistēmā Android Q Google tagad pieprasa, lai lietotnēm būtu READ_PRIVILEGED_PHONE_STATE atļauja lasīt IMEI. Ierīces, kurās darbojas operētājsistēma Android Q, tagad pēc noklusējuma pārsūta nejaušinātas MAC adreses. Visbeidzot, Android Q Aptveramā krātuve izmaiņas mazina lietotņu spēju nolasīt atrašanās vietas datus no fotoattēliem. Tādējādi šīs bažas ir risinātas jaunākajā Android laidienā, taču, kā mēs visi zinām, tas tiks darīts aizņem diezgan ilgu laiku lai tiktu izplatīts jaunākais atjauninājums.
Secinājums
Kopumā šis pētījums sniedz izgaismojošu ieskatu par to, kā dažas lietotnes piekļūst datiem, kas ir jāaizsargā aiz atļaujām. Pētījumā tika aplūkota tikai daļa no Google sauktajām "bīstamajām" atļaujām, jo īpaši izlaižot atļaujas, piemēram, Bluetooth, kontaktpersonas un SMS. Lai iegūtu pilnu informāciju par šo ziņojumu, iesaku izlasīt papīrs, kas iesniegts FTC.