Passordadministratorer som bruker Android Oreos Autofill API er potensielt sårbare for datalekkasje

click fraud protection

En potensiell sikkerhetsfeil i Android Oreos Autofill API gjør det mulig for passordbehandlere å lekke data som passord, adresser eller kredittkort.

Autofyll er en av de største og mest publiserte nye funksjonene introdusert med utgivelsen av Android 8.0 Oreo. Mange forskjellige passordbehandlingsapper, som LastPass, har allerede implementert denne nye API-en i applikasjonene sine. Og mens det kan vise seg å være det ganske forbedring i forhold til de tidligere autofyll-implementeringene med tilgjengelighetstjenester, er det en potensiell sikkerhetsfeil å vurdere. Forrige måned ble det publisert en hvitbok til GitHub, som dokumenterer en iboende feil i Android Oreo Autofill API som kan potensielt føre til at passordbehandleren din lekker mer av dine personlige data enn du ga den tillatelse til. Vi skal gjøre en rask oversikt over hvitboken skrevet av Mark Murphy (bedre kjent som CommonsWare) og publisert på GitHub-siden hans 8. august 2017.


Potensiell datalekkasjefeil i Android Oreos Autofill API

Hvordan fungerer feilen?

Autofyll-implementeringen i Android Nougat (og lavere versjoner), og nettlesere som Google Chrome, er noe veldig enkelt. Vanligvis vil passordadministrasjonsapper bruke tilgjengelighetstjenestene til å skanne skjerminnholdet for en påloggingsboks og anbefale autofylldata basert på hva den finner. Mens det fungerte, det kan forårsake betydelig etterslep.

På Android Oreo fungerer dette litt annerledes, ettersom passordapper nå offisielt støttes med Autofill API. Tredjeparts passordapplikasjoner krever ikke tilgjengelighetstjenester lenger, siden de nå kan fylle rollen som en autofylltjeneste, kommunisere med apper gjennom Autofyll-rammeverket. Når brukeren fokuserer i en widget, vil systemet pakke litt informasjon om den widgeten/skjemaet og sende den over til autofyll-appen. Applikasjonen returnerer deretter relevante autofylldata som passord, e-poster, kredittkort eller andre typer sensitive data. Android-systemet fungerer som et mellomledd mellom applikasjonen som lagrer dataene og den som ber om dem.

Autofyll-app i Android 8.0 Oreo

Imidlertid kan ondsinnede apper eller skadelig programvare faktisk dra nytte av autofyll-funksjonen for å få mer data for seg selv. En ondsinnet aktivitet kan be om at ytterligere autofylldata legges inn med en usynlig eller skjult widget. Mens brukeren godtar å fylle ut en av de synlige widgetene, for eksempel et påloggingsskjema eller noe lignende, får den usynlige widgeten også tilleggsdata uten at du ser det. Dette kan være veldig farlig hvis den lekke informasjonen er passordet, adressen eller kredittkortopplysningene dine!

Skjermbildene ovenfor viser en ondsinnet testapplikasjon som utnytter denne sikkerhetsfeilen.

Googles svar på problemet

Ifølge CommonsWare har dette sikkerhetsproblemet ennå ikke en offentlig løsning lagt ut av Google. Vi vet imidlertid at Google er klar over problemet. CommonsWare opplyser at Google-ingeniører erkjente at problemet eksisterer i en privat problemsporingsrapport, men at det ville være vanskelig (om ikke umulig) å faktisk lappe den eller rulle ut en løsning.

Men det betyr ikke at Autofyll er helt utrygt å bruke, ettersom Google tar en annen tilnærming til å sikre datasikkerhet. Selskapet er presser på for å få autofyll-tjenester til å håndtere problemet på sin side og som sådan, prøver å øke bevisstheten for utviklere for å forbedre sine autofill-leverandører og gjøre dem tryggere. Hva foreslås egentlig?

Først av alt, leverandører av autofyll bør partisjonere dataene deres. I stedet for å holde alle autofyll-data i et enkelt basseng, bør utviklere dele opp brukerdataene som er lagret i partisjoner. For eksempel en adresse-/telefonpartisjon, en kredittkortpartisjon, en passord-/brukernavnpartisjon osv. Autofyll-tjenesten skal bare levere tilbake dataene til én partisjon om gangen basert på den fokuserte widgeten. Dette er en av de offentlig tilgjengelige sider på Autofyll-apper som beskytter seg mot lekkasje av data til usynlige widgets.

Det er også noen andre ting som utviklere av passordbehandlere bør gjøre, ifølge Googles ingeniører. For eksempel skal leverandøren av autofyll bare levere tilbake dataene til den spesifikke appen som leverte dem i utgangspunktet. Dette bør gjøres ved å bekrefte pakkenavnet og den offentlige signaturen til applikasjonen, slik at selv en modifisert APK ikke får tilgang til den. Den andre tingen ville være at autofyll-apper krever autentisering før de faktisk gir dataene den autentiseringsaktiviteten som informerer brukeren om hva slags data som vil bli gitt til appen som ber om det. Dette rådet har faktisk mange feil, den viktigste er at disse rådene faktisk ikke håndheves av Google.

Husk at mange av forslagene ovenfor ble hentet fra CommonsWares private problemsporingsrapport, og ikke fra noen offisiell Google-dokumentasjonsside. For en ytterligere, mer teknisk oversikt over hvordan apper som bruker Autofill API kan beskytte seg mot denne typen angrep, anbefaler vi sterkt at du leser fullstendig hvitbok fra CommonsWare.

Hvilke apper er trygge for denne feilen?

Vi har kontaktet utviklerne av 1Password, Enpass og LastPass om dette sikkerhetsproblemet, og sikkerhetsteamene bak disse 3 appene har hevdet at de er sikre, selv om vi ennå ikke har bekreftet disse påstandene.

Som vi kan se i uttalelsene ovenfor, krever 1Password autentisering fra brukeren før de fyller ut dataene, og gir dem også beskjed om hvilke data som skal fylles ut på forhånd. Dette hjelper også med det stille fyllingsproblemet, siden en autentiseringspopup vises for hver aktivitet som ber om autofylldata.

Enpass vil aldri avsløre hele nøkkelringen til appen som ber om, enten det er ondsinnet eller ekte. Bare de lagrede elementene som samsvarer med pakkenavnet til appen som ber om, vil bli presentert for brukeren. De bekreftet også at de vil ha flere tiltak på plass etter Googles råd.

Videre bekreftet LastPass for oss at selv om de ikke visste om problemet før Android Oreo-utgivelsen, bruker appen deres datapartisjonering for å beskytte brukere, sammen med andre kontroller for å sikre at LastPass bare fyller ut appen knyttet til oppføringen.

Selv om det absolutt ikke burde være noen problemer med å bruke disse 3 applikasjonene, bør du deaktivere hvis du vil holde deg helt i det fri. autofyll helt på telefonen til du kan bekrefte med passordbehandlerens utvikler at appen deres er trygg fra denne linjen angrep. Heldigvis kan dette enkelt gjøres ved å gå til Innstillinger > System > Språk og inndata > Avansert og finne "Autofyll-tjeneste"-preferansen, trykke på den og velge "Ingen".

Som vi sa ovenfor, er det ikke kjent om Google faktisk kan sende ut en løsning for dette, så å bruke pålitelige apper eller ganske enkelt deaktivere funksjonen er den eneste måten du kan være trygg på. Hvis du vil lese mer om denne saken og alle detaljene knyttet til den, bør du lese deg opp på originalen hvitt papir som dokumenterer det på GitHub.


Denne artikkelen ble oppdatert 9/13/17 for å mer nøyaktig gjenspeile implikasjonen av svarene fra LastPass, Enpass og 1Password.