Функция в Android позволяет добывать список установленных приложений
Команда исследователей проанализировала одну из функций операционной системы Android, которая может представлять угрозу для конфиденциальности пользователей. Как показали результаты исследования, большое количество популярных приложений для Android на сегодняшний день используют Installed Application Methods (IAM) - набор вызовов API Android, которые позволяют разработчикам приложений получать список других приложений, установленных на устройстве.
Изначально данные вызовы позволяли разработчикам обнаруживать несовместимость приложений или настраивать взаимодействие с другими программами. Но ученые рассказали, что IAM также используется для отслеживания и идентификации пользователей, создавая риски конфиденциальности.
Команда из четырех ученых из университетов в Швейцарии, Италии и Нидерландах проанализировала тысячи приложений для Android-устройств и их код на предмет AIM-вызовов. Исследователи проанализировали 14 342 популярных Android-приложения в магазине Google Play Store, а также 7 886 приложений для Android, исходный код которых был опубликован в Сети. По данным исследовательской группы, использование IAM довольно распространено в коммерческих приложениях: 30,29% (4 214) приложений в Play Store осуществляют IAM-вызовы в своем коде. Для приложений с открытым исходным кодом это число составило всего 2,89% (228 приложений).
Опасность для конфиденциальности пользователей связана с тем, что рекламодатель может определить интересы и личные качества (сведения о поле, известных языках, религиозных убеждениях и возрасте) путем анализа списка установленных приложений пользователя. Кроме того, пользователи не могут защитить себя от отслеживания цифрового отпечатка браузера на основе IAM, поскольку приложению не нужно запрашивать разрешение у пользователя для осуществления данных вызовов. Кроме того, многие вызовы IAM также выполняются без ведома разработчика приложения.
Как отметили специалисты, почти половина всех зафиксированных IAM-вызовов, как в Play Store, так и в приложениях с открытым исходным кодом, была связана с packageName, который извлекает список локально установленных приложений. Другие использовались для получения технических сведений о приложении, таких как подписи, версии программы, время последнего обновления или номера версий SDK.
По словам экспертов, большинство IAM-вызовов исходили из сторонних библиотек, добавляемых в приложения, а не из самих программ. Более трети сторонних библиотек использовались в рекламных целях.
Как показали результаты опроса 70 разработчиков приложений, многие даже не знали о выполнении IAM-вызовов сторонними библиотеками.
Исследовательская группа призывает Google ограничить использование IAM-вызовов. По мнению специалистов, Google необходимо установить запросы разрешения на выполнение данных вызовов.