Cloak And Dagger Exploit gebruikt overlays en toegankelijkheidsservices om het systeem te kapen

click fraud protection

Wat we bij XDA ooit voor ogen hadden als een proof of concept beveiligingskwetsbaarheid, is nu bevestigd door computerwetenschappers van het Georgia Institute of Technology in Atlanta. Het team geeft details over wat zij noemen "mantel en dolk" exploits die de gebruikersinterface van de meeste versies van Android kunnen overnemen (inclusief 7.1.2). Gezien de aard ervan is het moeilijk te repareren en ook moeilijk te detecteren.

Cloak and Dagger is een exploit die gebruik maakt van twee machtigingen om de gebruikersinterface over te nemen zonder de gebruiker de kans te geven de kwaadaardige activiteit op te merken. De aanval maakt gebruik van twee machtigingen: SYSTEEM_ALERT_WINDOW ("teken er bovenop") En BIND_ACCESSIBILITY_SERVICE ("a11j") die zeer vaak worden gebruikt in Android-apps.

We hebben heeft dit in het verleden uiteengezet, maar wat deze kwetsbaarheid zo acuut maakt, is het feit dat applicaties die SYSTEM_ALERT_WINDOW aanvragen, deze toestemming automatisch krijgen wanneer ze via de Google Play Store worden geïnstalleerd. Wat betreft het inschakelen van een toegankelijkheidsservice: een kwaadaardige applicatie kan een gebruiker vrij eenvoudig sociaal manipuleren om deze te verlenen. De kwaadaardige applicatie kan zelfs worden ingesteld om een ​​toegankelijkheidsservice te gebruiken voor een semi-legitiem doel, zoals controleren wanneer bepaalde applicaties open zijn om bepaalde instellingen te wijzigen.

Zodra deze twee machtigingen zijn verleend, is het aantal aanvallen dat kan plaatsvinden talrijk. Het stelen van pincodes, tweefactorauthenticatietokens, wachtwoorden of zelfs denial-of-service-aanvallen zijn allemaal mogelijk. Dit is te danken aan de combinatie van overlays om de gebruiker te laten denken dat hij interactie heeft met een legitieme app en de toegankelijkheidsservice die worden gebruikt om tekst- en aanraakinvoer te onderscheppen (of zijn eigen invoer door te geven). invoer).

Een paar maanden geleden hebben we een dergelijke kwetsbaarheid getheoretiseerd, waarbij we een proof-of-concept-applicatie zouden maken die gebruikmaakt van SYSTEM_ALERT_WINDOW en BIND_ACCESSIBILITY_SERVICE om een ​​overlay over het wachtwoordinvoerscherm in de XDA Labs-app te tekenen en toetsinvoer te onderscheppen om te vegen wachtwoorden. Deze applicatie die we voor ogen hadden zou een applicatie zijn voor het beheren van automatische rotatie, die een overlay zou gebruiken om een ​​onzichtbaar kader op het scherm te tekenen controlerotatie (in plaats van WRITE_SETTINGS aan te vragen, wat vlaggen zou oproepen) en een toegankelijkheidsservice waarmee de gebruiker het automatisch roteren van profielen per app kan beheren basis. In theorie zou dit een voorbeeld zijn van een toepassing die gebruik maakt van 'cloak-and-dolk'. Niemand van ons team was echter bereid hun risico te riskeren ontwikkelaarsaccounts door de geautomatiseerde app-scansystemen van Google uit te dagen om te zien of onze proof-of-concept-exploit zou worden toegestaan ​​op de Play Winkel.

In ieder geval hebben deze onderzoekers het werk gedaan en testaanvragen ingediend om te bewijzen dat het gebruik van deze twee machtigingen inderdaad een groot veiligheidsprobleem kan zijn:

Zoals u kunt zien, zijn de aanvallen onzichtbaar voor gebruikers en bieden ze volledige controle over het apparaat. Momenteel zijn alle versies van Android vanaf Android 5.1.1 tot en met Android 7.1.2 hiervoor kwetsbaar exploiteren, gezien het feit dat het misbruik maakt van twee machtigingen die anders volledig legitiem zouden worden gebruikt doeleinden.

Verwacht niet dat er binnenkort een echte oplossing voor dit probleem op uw apparaat zal verschijnen, hoewel er rekening mee moet worden gehouden dat de wijzigingen aangebracht in SYSTEM_ALERT_WINDOW in Android O zal deze fout gedeeltelijk aanpakken door te voorkomen dat kwaadaardige apps volledig over het hele scherm tekenen. Bovendien waarschuwt Android O nu via een notificatie als een applicatie actief een overlay tekent. Met deze twee wijzigingen is de kans kleiner dat een kwaadaardig programma met de exploit wegkomt als de gebruiker is attent.

Hoe bescherm je jezelf op versies vóór Android O? Installeer zoals altijd alleen apps die u vertrouwt van bronnen die u vertrouwt. Zorg ervoor dat de machtigingen die zij vragen overeenkomen met wat u verwacht.

Wat betreft de honderden miljoenen vaste gebruikers die er zijn, aldus een woordvoerder van Google Play Store-bescherming zal ook de nodige oplossingen bieden om de mantel- en dolkaanvallen te voorkomen. Hoe dit precies zal worden bereikt, is onduidelijk, maar hopelijk gaat het om een ​​manier om te detecteren wanneer deze twee machtigingen kwaadwillig worden gebruikt. Ik betwijfel echter of het al dergelijke gevallen kan detecteren, dus in ieder geval is het het beste om te controleren welke machtigingen worden verleend aan elke applicatie die u installeert.