Ongewenst gedrag in mobiele Android-app

Beveiligingsproblemen en spyware vormen nu een serieus probleem voor smartphonegebruikers.





Trojaanse slang: Een Android-app genaamd Tap Snake doet zich voor als een onschuldig spel, maar kan worden gebruikt om onwetende gebruikers via GPS te volgen. Dit scherm toont de benodigde rechten.

In juli kondigde Citigroup bijvoorbeeld aan dat zijn programma voor mobiel bankieren voor de iPhone op ongepaste wijze vertrouwelijke informatie, waaronder de rekeningnummers van de gebruiker en hun pincode, ongecodeerd had opgeslagen in een verborgen bestand dat toegankelijk was voor andere programma's die op de iPhone van de gebruiker draaien. De rekeningnummers en pincode werden ook gekopieerd naar de desktopcomputer van de gebruiker toen de iPhone werd gesynchroniseerd.

Op het Android-platform van Google gaat het iets beter dankzij het onderliggende beveiligingsmodel van het besturingssysteem. iPhone-applicaties krijgen volledige toegang tot de gegevens van elke app. Maar Android-applicaties moeten aangeven welke machtigingen ze nodig hebben. Machtigingen kunnen de mogelijkheid omvatten om toegang te krijgen tot de vermeldingen in het adresboek van de gebruiker, om de locatie van een apparaat te bepalen met behulp van de GPS en om te bellen. Machtigingen bevinden zich in een speciaal bestand en worden weergegeven wanneer de applicatie wordt geïnstalleerd; ze zijn ook zichtbaar in het configuratiescherm van de Android-applicatie. Android ondersteunt momenteel 114 verschillende machtigingen, die u kunt zien op de ontwikkelaar website .



Het machtigingssysteem van Android verhindert niet dat apps uw gegevens stelen of andere kwaadaardige acties uitvoeren - het maakt het eenvoudigweg gemakkelijker om de apps te vinden die bij deze praktijk betrokken zijn. Maar het wordt steeds duidelijker dat dit niet altijd genoeg is.

Afgelopen juli ontdekten onderzoekers bijvoorbeeld dat een gratis wallpaper-programma voor Android genaamd Jackeey persoonlijke informatie verzamelde, waaronder de telefoonnummers van de gebruiker, voicemail-informatie en providergegevens, en deze naar een website in China stuurde. In augustus werd ontdekt dat een gratis spel genaamd Tap Snake eigenlijk een hulpmiddel is om heimelijk de locatie van een persoon te controleren. Tap Snake draait als een achtergrondservice en stuurt de locatie van een telefoon naar een website; de persoon die het spel op die telefoon heeft geïnstalleerd, kan vervolgens de locatie van de telefoon volgen met een ander programma genaamd GPS Spy.

Tap Snake schendt het Android-beveiligingsmodel niet: het programma vereist de mogelijkheid om als een service te worden uitgevoerd, de GPS-positie te bewaken en via internet te communiceren. Maar er zijn twee problemen met het Android-beveiligingsmodel. De eerste is granulariteit: hoewel Android-programma's de gebruiker moeten vertellen welke machtigingen ze gebruiken, verklaart dat niet wat de apps eigenlijk met deze machtigingen doen. Het tweede probleem is betrokkenheid: het model vereist dat iemand deze informatie gebruikt en verantwoordelijkheid neemt voor de veiligheid van de gebruiker.



Een bespreking van enkele Android-apps belicht dit probleem. Een paar weken geleden werd mij een applicatie met de naam Rare Black Wallpapers aanbevolen om de batterij te sparen. Ik merkte op dat de app de mogelijkheid vereiste om de inhoud van de SD-kaart te wijzigen of te verwijderen, volledige internettoegang en de mogelijkheid om de staat en identiteit van mijn telefoon te lezen. Verbaasd heb ik Hero Planet, het bedrijf dat deze applicatie levert, een e-mail gestuurd met de vraag waarom deze toestemmingen nodig waren. Hero Planet heeft nooit geantwoord, dus heb ik het programma verwijderd.

Evenzo vereist het programma Salamander eBook Reader voor Android machtigingen om uw fysieke positie te bepalen, volledige internettoegang te krijgen en de staat en identiteit van de telefoon te lezen. Ik heb Feel Social, de uitgever, een e-mail gestuurd, maar kreeg geen antwoord. De website van Feel Social ziet eruit alsof hij verlaten is en niemand nam de telefoon van het bedrijf op toen ik belde. Maar de app staat nog steeds in de Google Marketplace; wat doet die app met mijn GPS-informatie en volledige netwerktoegang? Ik heb het ook gedeïnstalleerd.

Een ander programma dat meer permissies vereist dan ik geschikt achtte, is Documents to Go, een programma waarmee ik Microsoft Office-bestanden kan lezen met mijn Android-telefoon. Dit programma vereist niet alleen de mogelijkheid om te lezen en te schrijven naar de SD-kaart van de telefoon, maar ook volledige internettoegang en de mogelijkheid om de staat en identiteit van de telefoon te lezen. Het start ook automatisch wanneer de telefoon opstart. Ik heb DataViz, de maker van het programma, een e-mail gestuurd en deze keer kreeg ik een reactie.



Laura Caiafa, manager technische ondersteuning bij DataViz, schreef me terug dat Documents to Go op Android de mogelijkheid vereist om de identiteit van de telefoon te lezen, omdat het productregistraties koppelt aan het IMEI/MEID-nummer van de telefoon (een soort serienummer). Bovendien controleren we de netwerkstatus van de telefoon op roaming voordat we de gebruiker toestaan ​​zich te registreren, waarvoor ook deze toestemming nodig is.

Volledige internettoegang is vereist om de toepassing te registreren (wat Documents to Go rechtstreeks doet, in plaats van via de webbrowser). Ten slotte start het programma met installeren wanneer een telefoon wordt ingeschakeld.

Een probleem met deze handmatige onderzoeksaanpak is dat het ongelooflijk tijdrovend is. Een tweede probleem is dat je niet kunt zien wat de telefoon doet met deze machtigingen: stuurt hij mijn vertrouwelijke gegevens naar criminelen, gebruikt hij mijn positie en internettoegang om me locatiegebaseerde advertenties te laten zien, of registreert hij gewoon mijn applicatie zodat ik gratis updates kan krijgen?



Een werkende oplossing voor dit probleem wordt woensdag gepresenteerd op de Usenix-symposium over ontwerp en implementatie van besturingssystemen (OSDI) in Vancouver, Canada. Het programma, TaintDroid genaamd, gebruikt een benadering genaamd data labeling of tainting om de stroom van persoonlijke informatie via een draaiende Android-telefoon te controleren.

TaintDroid is ontwikkeld door onderzoekers van de Pennsylvania State University, Duke University en Intel Labs en is ontworpen om 30 verschillende Android-applicaties te analyseren. De onderzoekers deden enkele zeer interessante ontdekkingen. Hoewel bijvoorbeeld 21 van de 30 applicaties toestemming nodig hadden om de telefoonstatus te lezen en toestemming om via internet te communiceren, hebben slechts twee van de applicaties het telefoonnummer of de unieke code van het apparaat naar de externe server verzonden. Een van deze verzendt de informatie elke keer dat de telefoon opstart, waardoor de ontwikkelaar weet op hoeveel telefoons de app momenteel is geïnstalleerd, maar ook de privacy van elke gebruiker op een behoorlijk significante manier wordt geschonden.

De onderzoekers schrijven in hun paper dat de helft van de door hen gecontroleerde applicaties de locatiegegevens van de gebruiker naar advertentieservers van derden heeft verzonden zonder dat daarvoor impliciete of expliciete toestemming van de gebruiker nodig is, dat wil zeggen zonder dit feit in de licentieovereenkomst voor eindgebruikers van de applicatie te onthullen. In sommige gevallen werden locatiegegevens naar advertentieservers verzonden, zelfs als er geen advertentie in de applicatie werd weergegeven. U kunt de paper downloaden van de onderzoekers' website .

Sommige commentatoren zouden kunnen beweren dat het OSDI-document een verder bewijs is dat het beleid van Apple om elke applicatie in de app store handmatig te controleren superieur is aan het Android-beleid. De waarheid is dat we gewoon niet weten hoeveel apps verborgen in de App Store van Apple persoonlijke informatie stelen, omdat er geen gemakkelijke manier is om de mogelijkheden van programma's die beschikbaar zijn om te downloaden te controleren. Het beoordelingsproces van Apple evalueert de broncode van de applicatie niet, dus het zou mogelijk zijn voor een kwaadwillende ontwikkelaar (of zelfs een enkele programmeur binnen een app-ontwikkelingsbedrijf) om er iets doorheen te sluipen. In ieder geval bij Android probeert het besturingssysteem te voorkomen dat apps toegang krijgen tot elkaars gegevens en internet gebruiken, tenzij ze om die toestemming vragen.

Een andere factor in het voordeel van Android is het gebruik van het Linux-besturingssysteem, waarvoor alle broncode beschikbaar is. De onderzoekers van Penn State, Duke en Intel zouden TaintDroid kunnen ontwikkelen omdat het relatief eenvoudig is om onder de motorkap van Android te kruipen en de nodige functionaliteit te installeren. Hoewel het mogelijk zou zijn om dezelfde resultaten op de iPhone te bereiken, zou het reverse-engineeringproces aanzienlijk moeilijker zijn.

Maar informatie over slecht app-gedrag is niet voldoende om Android-gebruikers beveiliging te bieden. Gebruikers missen simpelweg de waakzaamheid en de kennis om gebruik te maken van de informatie die Android biedt. Tenzij Google beleid vaststelt om de privacy van zijn mobiele gebruikers te beschermen, zal Android steeds meer worden gezien als een systeem dat wordt geplaagd door beveiligingsproblemen, ook al is de echte reden hiervoor dat we een beter idee hebben van wat er op Android gebeurt dan op de andere smartphoneplatforms.

zich verstoppen