Более 1000 приложений Android могут получать доступ к пользовательским данным без соответствующих разрешений

Исследователи обнаружили, что многие приложения Android в Google Play Store имеют способы обойти модель разрешений Android для сбора пользовательских данных.

Несмотря на мнение пользователей, Android на самом деле довольно безопасен как мобильная ОС. Обычно мы принимаем предположение, что самым слабым звеном является пользователь; пока вы следите за тем, что устанавливаете и какие разрешения предоставляете, вы должны быть в безопасности от несанкционированного доступа и распространения ваших данных. Если вы запретите приложению Android доступ к вашему местоположению, то у этого приложения не будет возможности определить, где вы находитесь или где вы были. Однако, по мнению исследователей из Международного института компьютерных наук (ICSI), некоторые разработчики приложений нашли способы обойти модель разрешений Android.

В соответствии с vrenture.com/исследование было представлено в прошлом месяце на КонфиденциальностьCon после того, как в сентябре прошлого года об этом ответственно сообщили Google и Федеральной торговой комиссии. Хотя

документ опубликован на сайте FTC не перечисляет точные приложения, которые команда отметила в своем анализе (эти подробности появятся позже в Конференция по безопасности Usenix в следующем месяце), он предоставляет подробную информацию об их методе анализа и о том, как приложения обходили модель разрешений Android. Чего бы это ни стоило, Google заявляет, что безопасность и конфиденциальность меняют то, что Google представил в Android Q закроет эти методы обхода, поэтому этот документ дает ценную информацию об обоснованиях Google некоторых изменений платформы, которые они внесли в Android 10. Давайте погрузимся.

Как более 1000 приложений обошли модель разрешений Android

Исследователи различают два разных метода обхода безопасности: побочные каналы и скрытые каналы. Методы побочных каналов подразумевают получение доступа к определенной информации способом, не предусмотренным механизмом безопасности; например, раньше приложения могли отслеживать местоположение устройства по MAC-адресу, пока Android Pie не представил рандомизацию MAC-адресов. Методы скрытого канала предполагают взаимодействие двух служб для отправки данных от одной службы, имеющей действительный доступ, к другой, у которой его нет; например, приложение, которому предоставлен доступ к местоположению, может поделиться этими данными с приложением, которому не предоставлен доступ.

Команда ICSI проанализировала 88 113 самых популярных приложений для Android из магазина Google Play в США и обнаружила более 1000 приложений и сторонних библиотек, которые использовать побочные каналы и/или скрытые каналы для обхода мер безопасности Android, чтобы они могли получить доступ к данным о местоположении и постоянным идентификаторам пользователей. устройства. Их полный набор данных состоял из 252 864 APK-файлов, поскольку команда периодически очищала Play Store в поисках новых версий 88 113 приложений, которые они планировали проанализировать. Первоначально они тестировали поведение каждого приложения на Гугл Нексус 5X под управлением Android 6.0.1 Marshmallow, но позже повторно протестировали свои выводы на Гугл Пиксель 2 запустили Android Pie, чтобы доказать, что их выводы все еще действительны на момент раскрытия информации.

Используя этот набор данных, команда разработала метод с использованием динамического и статического анализа для обнаружения обхода модели разрешений Android. Другими словами, команда изучала поведение приложения, проверяя поведение приложения во время выполнения (динамический анализ) или сканируя код на предмет потенциально вредоносного поведения (статический анализ). анализ.) Конечно, разработчики вредоносных приложений знают об этих методах, используя обфускацию кода и динамическую загрузку кода, чтобы усложнить статический анализ или TLS. перехвата для обнаружения того, когда приложение работает в виртуализированной среде, поэтому команда ICSI использовала сочетание статического и динамического анализа (гибридный анализ) в своих тестирование. В результате команда обнаружила, что следующие данные собирались приложениями, не имеющими необходимых разрешений:

  • IMEI: поскольку IMEI является уникальным, постоянным идентификатором, онлайн-сервисам полезно его очищать, чтобы они могли отслеживать отдельные устройства. Команда обнаружила, что лососевые и Байду SDK использовали скрытый канал для чтения IMEI. Приложения с законным доступом к IMEI хранили на внешнем хранилище скрытые файлы, содержащие IMEI устройства, чтобы другие приложения без законного доступа могли прочитать IMEI. Идентифицированные приложения, использующие SDK Baidu, включают приложения тематических парков Disney для Гонконга и Шанхая, Samsung Health и Samsung Browser.
  • Сетевой MAC-адрес: Сетевой MAC-адрес также является уникальным идентификатором и обычно защищен разрешением ACCESS_NETWORK_STATE. По мнению исследователей, приложения использовали собственный код C++ для «вызова ряда незащищенных системных вызовов UNIX». Команда определила 42 приложения, использующих Unity SDK для открытия сетевой сокет и ioctl для получения MAC-адреса, хотя они отметили, что 748 из 12 408 приложений содержали рассматриваемый код, но не имели ACCESS_NETWORK_STATE. разрешение.
  • MAC-адрес маршрутизатора: Разрешение ACCESS_WIFI_STATE защищает BSSID, но чтение кэша ARP в /proc/net/arp позволяет приложению получать эти данные без каких-либо разрешений. Исследователь выявил OpenX SDK использует этот метод побочного канала.
  • Геолокация: Исследователи обнаружили, что приложение Shutterfly получало доступ к меткам местоположения метаданных EXIF ​​фотографий. Все, что требуется, — это разрешение READ_EXTERNAL_STORAGE.

В Android Q Google теперь требует, чтобы приложения имели разрешение READ_PRIVILEGED_PHONE_STATE на чтение IMEI. Устройства под управлением Android Q теперь по умолчанию передают случайные MAC-адреса. Наконец, Android Q Ограниченное хранилище изменения ограничивают возможность приложений считывать данные о местоположении с фотографий. Таким образом, эти проблемы были решены в последней версии Android, но, как мы все знаем, это будет занять довольно много времени для распространения последнего обновления.


Заключение

В целом, это исследование дает наглядное представление о том, как некоторые приложения получают доступ к данным, которые должны быть защищены разрешениями. В исследовании рассматривалась только часть того, что Google называет «опасными» разрешениями, в частности пропуская такие разрешения, как Bluetooth, контакты и SMS. Для получения полной информации об этом отчете я рекомендую прочитать документ, представленный в FTC.