Специалисты компании Check Point обнаружили проблему в одном из защитных механизмов Android, которую активно эксплуатируют вымогатели, банковские трояны и адварь.
Начиная с Android 6.0.0 (Marshmallow) разработчики Google представили новую модель выдачи разрешений приложениям. В частности некоторые права получили пометку «опасных» (dangerous), то есть когда приложение впервые запрашивает доступ к каким-то «опасным» ресурсам и функциям, система спрашивает у пользователя, нужно ли разрешать данные действия.
Но наряду с «опасными» правами есть и другая категория — SYSTEM_ALERT_WINDOW. В отличие от других разрешений, в данном случае пользователь должен войти в меню (Settings -> Apps -> Draw over other apps) и вручную предоставить приложению данные права. В дальнейшем SYSTEM_ALERT_WINDOW фактически позволяет приложению без спроса перекрывать окна любых других приложений, к примеру, именно так на экране всплывает Facebook Messenger, когда кто-то из контактов хочет пообщаться.
Как не трудно догадаться, SYSTEM_ALERT_WINDOW также может использоваться в совсем других целях, в частности позволяет мошенникам показывать пользователям навязчивую рекламу, перекрывать окна других приложений оверлеем (как часто делают банковские трояны), устраивать фишинговые атаки и так далее. Специалисты Check Point отмечают, что согласно их данным, 74% вымогателей, 57% адвари и 14% банковских троянов эксплуатируют недочеты в системе выдачи разрешений.
Проблема заключается в том, что полностью запретить такое поведение невозможно, ведь им пользуются и легитимные приложения. Поэтому разработчики Google выпустили патч в составе Android 6.0.1, который выдает run-time разрешения приложениям, загруженным из официального каталога Google Play, что впоследствии может использоваться для получения прав SYSTEM_ALERT_WINDOW. Фактически это означает, что если малварь была загружена из Google Play (что встречается совсем нередко), проблем с эксплуатацией SYSTEM_ALERT_WINDOW у нее не возникнет. По данным Check Point, около 45% приложений, использующих SYSTEM_ALERT_WINDOW, пользователи загружают именно из Google Play.
Специалисты уже уведомили о проблеме разработчиков Google, и те согласились, что так быть не должно, однако исправления проблемы стоит ожидать не ранее третьего квартала 2017 года, то есть не раньше релиза Android O. Ограничить злоупотребление SYSTEM_ALERT_WINDOW должна новая функция TYPE_APPLICATION_OVERLAY, которая появится в новой версии ОС. Она не позволит приложениям размещать окна поверх критических системных окон, так что пользователь в любой момент сможет войти в настройки и блокировать вредоносную активность.