Paroļu pārvaldnieki, kas izmanto Android Oreo automātiskās aizpildes API, ir potenciāli neaizsargāti pret datu noplūdi

Iespējamā drošības nepilnība Android Oreo automātiskās aizpildes API ļauj paroļu pārvaldniekiem nopludināt datus, piemēram, paroles, adreses vai kredītkartes.

Automātiskā aizpilde ir viena no lielākajām un visvairāk reklamētajām jaunajām funkcijām, kas ieviestas līdz ar Android 8.0 Oreo izlaišanu. Daudzas dažādas paroļu pārvaldības lietotnes, piemēram, LastPass, jau ir ieviesušas šo jauno API savās lietojumprogrammās. Un, lai gan tas var izrādīties diezgan uzlabojums salīdzinājumā ar iepriekšējām automātiskās aizpildes ieviešanām, izmantojot pieejamības pakalpojumus, ir jāņem vērā iespējamais drošības trūkums. Pagājušajā mēnesī GitHub tika publicēta baltā grāmata, kurā dokumentēts Android Oreo automātiskās aizpildes API raksturīgs trūkums, kas varētu iespējams, ka jūsu paroļu pārvaldnieks nopludinās vairāk jūsu personas datu, nekā jūs tam atļāvāt. Mēs ātri apskatīsim balto grāmatu, ko sarakstījis Marks Mērfijs (labāk pazīstams kā CommonsWare) un publicēts viņa GitHub lapā 2017. gada 8. augustā.


Iespējama datu noplūdes kļūda Android Oreo automātiskās aizpildes API

Kā defekts darbojas?

Automātiskās aizpildes ieviešana operētājsistēmā Android Nougat (un vecākās versijās) un pārlūkprogrammās, piemēram, Google Chrome, ir kaut kas ļoti vienkāršs. Parasti paroļu pārvaldības lietotnes izmantos pieejamības pakalpojumus, lai skenētu ekrāna saturu pieteikšanās lodziņā un ieteiktu automātiskās aizpildes datus, pamatojoties uz atrasto. Kamēr tas strādāja, tas var izraisīt ievērojamu kavēšanos.

Operētājsistēmā Android Oreo tas darbojas nedaudz savādāk, jo paroļu lietotnes tagad oficiāli atbalsta automātiskās aizpildes API. Trešo pušu paroļu lietojumprogrammām vairs nav nepieciešami pieejamības pakalpojumi, jo tās tagad var pildīt automātiskās aizpildes pakalpojuma lomu, sazinoties ar lietotnēm, izmantojot automātiskās aizpildes sistēmu. Kad lietotājs koncentrējas uz logrīku, sistēma iesaiņos informāciju par šo logrīku/veidlapu un nosūtīs to uz automātiskās aizpildes lietotni. Pēc tam lietojumprogramma atgriež atbilstošus automātiskās aizpildes datus, piemēram, paroles, e-pastus, kredītkartes vai jebkāda cita veida sensitīvus datus. Android sistēma darbojas kā starpnieks starp lietojumprogrammu, kas glabā datus, un lietojumprogrammu, kas tos pieprasa.

Automātiskās aizpildes lietotne operētājsistēmā Android 8.0 Oreo

Tomēr ļaunprātīgas lietotnes vai ļaunprātīga programmatūra faktiski var izmantot automātiskās aizpildes funkciju, lai iegūtu vairāk datu. Ļaunprātīga darbība var pieprasīt papildu automātiskās aizpildes datu ievadi ar neredzamu vai slēptu logrīku. Kamēr lietotājs piekrīt aizpildīt kādu no redzamajiem logrīkiem, piemēram, pieteikšanās veidlapu vai ko līdzīgu, neredzamais logrīks saņem arī papildu datus, jums to neredzot. Tas var būt patiešām bīstami, ja šī nopludinātā informācija ir jūsu parole, adrese vai kredītkartes informācija!

Iepriekš redzamajos ekrānuzņēmumos ir parādīta ļaunprātīga testa lietojumprogramma, kas izmanto šo drošības trūkumu.

Google atbilde uz problēmu

Saskaņā ar CommonsWare, šai drošības problēmai vēl nav Google publicēta publiska risinājuma. Tomēr mēs zinām, ka Google apzinās šo problēmu. CommonsWare norāda, ka Google inženieri atzina, ka problēma pastāv privātā problēmu izsekotāja ziņojumā, taču tā būtu grūti (ja ne neiespējami) to faktiski aizlāpīt vai izvērsiet labojumu.

Bet tas nenozīmē, ka automātiskās aizpildes lietošana ir pilnīgi nedroša, jo Google izmanto citu pieeju datu drošības nodrošināšanai. Uzņēmums ir cenšoties panākt, lai automātiskās aizpildes pakalpojumi risinātu šo problēmu savā galā un tādējādi cenšas veicināt izstrādātāju izpratni par to, ka tie uzlabo savus automātiskās aizpildes nodrošinātājus un padara tos drošākus. Kas tieši tiek piedāvāts?

Pirmkārt, automātiskās aizpildes nodrošinātāji vajadzētu sadalīt savus datus. Tā vietā, lai saglabātu visus automātiskās aizpildes datus vienā pūlā, izstrādātājiem ir jāsadala nodalījumos glabātie lietotāja dati. Piemēram, adreses/tālruņa nodalījums, kredītkartes nodalījums, paroles/lietotājvārda nodalījums utt. Automātiskās aizpildes pakalpojumam vienlaikus ir jāatdod tikai viena nodalījuma dati, pamatojoties uz fokusēto logrīku. Šis ir viens no publiski pieejamas lapas automātiskās aizpildes lietotnēs, pasargājot sevi no datu noplūdes neredzamiem logrīkiem.

Saskaņā ar Google inženieru teikto, ir arī dažas citas lietas, kas jādara paroļu pārvaldnieku izstrādātājiem. Piemēram, automātiskās aizpildes nodrošinātājam dati ir jānodod atpakaļ tikai konkrētajai lietotnei, kas tos sākotnēji piegādāja. Tas jādara, pārbaudot pakotnes nosaukumu un lietojumprogrammas publisko parakstu, lai pat modificēts APK nevarētu tai piekļūt. Otra lieta būtu tāda, ka automātiskās aizpildes lietotnēm ir nepieciešama autentifikācija, pirms faktiski tiek nodrošināti dati, ar šī autentifikācijas darbība, kas informē lietotāju, kāda veida dati tiks sniegti lietotnei, kas to pieprasa. Šajā ieteikumā patiesībā ir daudz kļūdu, no kurām vissvarīgākā ir tā, ka Google šos padomus faktiski neīsteno.

Ņemiet vērā, ka daudzi no iepriekš minētajiem priekšlikumiem tika ņemti no CommonsWare privāto problēmu izsekotāja ziņojuma, nevis no kādas oficiālas Google dokumentācijas lapas. Lai iegūtu sīkāku tehnisko informāciju par to, kā lietotnes, kurās tiek izmantota automātiskās aizpildes API, var pasargāt sevi no šāda veida uzbrukumiem, ļoti iesakām izlasīt CommonsWare pilnībā balts papīrs.

Kuras lietotnes ir aizsargātas pret šo trūkumu?

Mēs esam sazinājušies ar 1Password, Enpass un LastPass izstrādātājiem par šo ievainojamību, un šo 3 lietotņu drošības komandas ir apgalvoja ka viņi ir drošs, lai gan mēs vēl neesam pārbaudījuši šos apgalvojumus.

Kā redzams iepriekš minētajos paziņojumos, 1Password pirms datu aizpildīšanas pieprasa lietotāja autentifikāciju, arī iepriekš informējot par to, kādi dati tiks aizpildīti. Tas palīdz arī novērst klusās aizpildīšanas problēmu, jo katrai darbībai, kurā tiek pieprasīti automātiskās aizpildes dati, tiks parādīts autentifikācijas uznirstošais logs.

Enpass nekad neatklās visu atslēgu piekariņu pieprasītājai lietotnei neatkarīgi no tā, vai tā ir ļaunprātīga vai īsta. Lietotājam tiks parādīti tikai tie saglabātie vienumi, kas atbilst pieprasītājas lietotnes pakotnes nosaukumam. Viņi arī apstiprināja, ka viņi ieviesīs vairāk pasākumu, ievērojot Google ieteikumus.

Turklāt LastPass mums apstiprināja, ka, lai gan viņi nezināja par problēmu pirms Android Oreo izlaišanas, viņu lietotne izmanto datu sadalīšana, lai aizsargātu lietotājus, kā arī citas pārbaudes, lai pārliecinātos, ka LastPass aizpilda tikai ar ierakstu saistīto lietotni.

Lai gan nevajadzētu būt nekādām problēmām, izmantojot šīs 3 lietojumprogrammas, ja vēlaties palikt skaidrā, jums vajadzētu atspējot pilnībā automātiski aizpildiet savā tālrunī, līdz varat ar paroļu pārvaldnieka izstrādātāju apstiprināt, ka viņu lietotne ir droša no šīs līnijas uzbrukums. Par laimi to var viegli izdarīt, dodoties uz Iestatījumi> Sistēma> Valodas un ievade> Papildu un atrodot preferenci "Automātiskās aizpildes pakalpojums", pieskaroties tai un atlasot "Nav".

Kā jau teicām iepriekš, nav zināms, vai Google patiešām var šo problēmu novērst, tāpēc uzticamu lietotņu izmantošana vai vienkārši funkcijas atspējošana ir vienīgais veids, kā saglabāt drošību. Ja vēlaties uzzināt vairāk par šo problēmu un visu ar to saistīto informāciju, izlasiet oriģinālu balts papīrs, kas to dokumentē vietnē GitHub.


Šis raksts tika atjaunināts 13.09.17., lai precīzāk atspoguļotu LastPass, Enpass un 1Password atbildes.