Изследователите демонстрираха атака с помощта на Toast Message, която може социално да накара потребител да предостави опасни разрешения на Android.
Android е доста отворена платформа с фантастична общност на разработчици. Много от тези разработчици ще създават приложения, персонализирани ROM и други. Някои организации също участват в тестове за сигурност, като Palo Alto Networks Unit 42. Тази група е открила уязвимост в системата на Android Toast Message, която позволява на нападател, за да създаде псевдонаслагване, за да подмами потребителя да предостави опасни разрешения без техните знания. Това е вече е фиксиран в Актуализация на сигурността през септември и в Android Oreo, така че бъдете сигурни, че ако телефонът ви все още получава месечни корекции за сигурност или имате устройство с Android Oreo, не сте уязвими за тази атака.
Всички други устройства с Android са податливи към тази атака. Начинът, по който работи това, е, че използва тост известията в Android, за да заобиколи изискването за „рисуване отгоре“, т.е. разрешение за наслагване, което е как "
Наметало и кама"експлойтът проработи. Изследователите са използвали този експлойт, за да проектират социално потребителите да предоставят услугата за достъпност на тяхното атакуващо приложение, което им позволява след това да четат цялото съдържание на екрана, ключови входове и т.н. на устройството. След това те използваха същия метод, за да привлекат потребителите на приложението да предоставят администраторски достъп, като същевременно изобщо не знаеха за достъпа, който току-що предоставиха. Това позволява на атакуващия да инсталира приложения, да наблюдава устройството и също така се отваря за потенциала на ransomware.Android Toast Message Overlay атака обяснено
Но как всъщност работи? The разработчици зад доказателството за концепцията споделиха действителния изходен код на тяхната атака, който съдържа по-техническо обяснение зад уязвимостта. Но ще обясним накратко как и защо работи този експлойт.
Първо, трябва да обмислите какво е съобщение за тост. Те съществуват в Android от години и вероятно сте виждали много от тях на вашето устройство всеки ден. Тостовете са малки съобщения в долната част на екрана, които обикновено се появяват в сив балон с част от информацията.
Експлойтът използва тост съобщението, за да създаде наслагване върху екрана, без всъщност да изисква или да се нуждае от SYSTEM_ALERT_WINDOW разрешение, което се предполага, че е изискване за всяко приложение да рисува върху вашия екран. Вместо това, той прокарва наслагването чрез тост известие, създавайки бутони, които изглеждат така, сякаш са за законно предоставяне на доброкачествено разрешение или приемане на безсмислена подкана, но всъщност са за предоставяне на администратор на устройството или достъп за достъп до приложение. Създава два изгледа вътре в насложен тост.
Всичко това може да се направи поради неуспешна проверка на разрешението. Системата Android (актуализация на защитата преди Oreo и преди септември) всъщност не проверява какво се подава през системата Android Toast Overlay, вместо това предоставя разрешение без проверка. Това вероятно е, защото Google не е предвидил възможността за подаване на изглед чрез наслагване на тост.
Опитът на Android 7.1 за коригиране на атаката на Android Toast Overlay
В Android 7.1 изглежда, че Google се е опитал да блокира този експлойт. Имаше въведено време за изчакване за тост съобщения и създадено ограничение: само 1 тост съобщение за UID, идентификатор на процес на приложение. Това беше лесно заобиколено чрез многократно зацикляне и вместо това показване на повече тост наслагвания, така че на потребителя се създава илюзията, че това е последователен потребителски интерфейс. Ако не е създаден цикъл, след 3,5 секунди наслагването ще изчезне и потребителят ще види какво всъщност иска приложението да направи от потребителя - да даде администратор на устройството или права за достъпност.
Последици от успешна атака
Администраторът на устройството или разрешенията за достъпност, когато са предоставени на приложение, могат лесно да бъдат използвани за много видове злонамерени атаки. С помощта на този експлойт могат да бъдат създадени рансъмуер, кийлогъри и чистачи на устройства.
Приложенията не се нуждаят от никакви разрешения, за да покажат тост съобщение, въпреки че очевидно злонамереното приложение все още се нуждае от BIND_ACCESSIBILITY_SERVICE, както и от BIND_DEVICE_ADMIN, за да използва ефективно това наслагване на тост атака. По този начин най-добрата ви линия на защита срещу този вид атака, ако вашето устройство все още не е закърпено, е да проверите разрешенията, които дадено приложение е дефинирало в своя AndroidManifest, когато го инсталирате. Ако инсталирате приложение и не сте сигурни защо това приложение се нуждае от услуга за достъпност или привилегии на администратор на устройство, незабавно го деинсталирайте и се свържете с разработчика.
Притеснително е, че толкова проста част от Android, ниското съобщение за тост, може да бъде използвано за социално инженерство на потребителя да дава опасни разрешения. Надяваме се, че производителите ще пуснат септемврийските корекции за сигурност възможно най-скоро на устройства, за да защитят милионите, които лесно биха могли да се хванат на подобен експлойт.