Специалисты портала TheBestVPN.com изучили 81 VPN-приложение из официального каталога Google Play и пришли к выводу, что многие из них запрашивают настораживающие и совершенно ненужные им разрешения.
Для классификации приложений исследователи воспользовались документацией и терминологией разработчиков Google. То есть «нормальными» считаются разрешения, которые Android выдает приложениям, не привлекая пользователя, а «опасными» называются разрешения, которые связаны с доступом к пользовательским данным (которой может предоставить приложению только сам пользователь).
Исследователи выяснили, что 50 приложений из изученных запрашивают у пользователя хотя бы одно «опасное» разрешение и доступ к данным. Хуже того, в некоторых случаях специалистам так и не удалось понять, зачем приложениям понадобились эти права. Например, некоторые VPN-приложения запрашивают доступ на запись и чтение на внешних накопителях; доступ на чтение и изменение системных настроек; полный доступ к журналам вызовов; доступ к управлению локальными файлами и так далее.
«Теоретически для работы VPN-приложения необходима всего пара разрешений. Простых INTERNET и ACCESS_NETWORK_STATE должно быть достаточно. Если приложение запрашивает большое количество “опасных” разрешений, это должно настораживать», — пишут исследователи.
Список самых «злостных нарушителей», по мнению TheBestVPN, можно увидеть ниже. Полный список всех изученных приложений и результаты анализа можно увидеть здесь.
Название приложения | Кол-во «опасных» разрешений | Разрешения |
Yoga VPN | 6 | android.permission.ACCESS_FINE_LOCATION android.permission.READ_PHONE_STATE android.permission.WRITE_SETTINGS android.permission.ACCESS_COARSE_LOCATION android.permission.READ_EXTERNAL_STORAGE android.permission.WRITE_EXTERNAL_STORAGE |
proXPN VPN | 5 | android.permission.ACCESS_FINE_LOCATION android.permission.READ_PHONE_STATE android.permission.ACCESS_COARSE_LOCATION android.permission.READ_EXTERNAL_STORAGE android.permission.WRITE_EXTERNAL_STORAGE |
Hola Free VPN | 4 | android.permission.READ_PHONE_STATE android.permission.ACCESS_FINE_LOCATION android.permission.READ_EXTERNAL_STORAGE android.permission.WRITE_EXTERNAL_STORAGE |
Seed4.Me VPN | 4 | android.permission.ACCESS_FINE_LOCATION android.permission.ACCESS_COARSE_LOCATION android.permission.READ_EXTERNAL_STORAGE android.permission.WRITE_EXTERNAL_STORAGE |
OvpnSpider | 4 | android.permission.ACCESS_FINE_LOCATION android.permission.READ_LOGS android.permission.ACCESS_COARSE_LOCATION android.permission.WRITE_EXTERNAL_STORAGE |
SwitchVPN | 4 | android.permission.ACCESS_FINE_LOCATION android.permission.ACCESS_COARSE_LOCATION android.permission.READ_EXTERNAL_STORAGE android.permission.WRITE_EXTERNAL_STORAGE |
Zoog VPN | 4 | android.permission.ACCESS_FINE_LOCATION android.permission.ACCESS_COARSE_LOCATION android.permission.READ_EXTERNAL_STORAGE android.permission.WRITE_EXTERNAL_STORAGE |
UPD.
Представители Seed4.Me VPN считают, что их продукт был ошибочно помещен в список "опасных" VPN. Разработчики пояснили для чего приложение использует получаемые разрешения:
android.permission.ACCESS_FINE_LOCATION
android.permission.ACCESS_COARSE_LOCATION
В нашем приложении есть функция Trusted Networks (Доверенные сети). Для использования этой функции нужно разрешение на получение геолокации. Для чего нужна эта функция: когда пользователь подключается к новой сети Wi-Fi, если сеть не находится в списке доверенных, наше приложение рекомендует включить VPN. Это полезно, когда вы, например, подключаетесь к бесплатному Wi-Fi в кафе, помогает защитить личные данные от перехвата.
С момента выхода Android 9 операционная система требует эти разрешения (до этого разрешения не требовались). Приложение спрашивает о разрешении на стартовом экране и показывает сообщение с объяснением, зачем ему нужно это разрешение. Если пользователь не хочет использовать функцию "Доверенные сети", он может либо не давать разрешения на доступ на стартовом экране, либо позже отключить доступ к этой функции для нашего приложения в системных настройках (Настройки > Приложения и Уведомления > Seed4.Me VPN > Разрешения > Доступ к местоположению). Все остальные функции приложения будут работать.
android.permission.READ_EXTERNAL_STORAGE
android.permission.WRITE_EXTERNAL_STORAGE
Разрешения на чтение и запись из внешнего хранилища требуется для отладки при обращении пользователя в поддержку. У нас есть команда технической поддержки 24/7 и, если приложение не работает должным образом, то пользователи могут собирать отладочную информацию путем долгого нажатия на кнопку Support (Помощь). Приложение спросит пользователя, хочет ли он инициализировать функцию сбора информации о подключении, и, если он согласится, то приложение сохранит информацию на внешний носитель. Пользователь может воспроизвести проблему и после повторного нажатия на кнопку "Помощь" он сможет отправить электронное письмо в нашу поддержку. Отладочная информация будет автоматически прикреплена к электронному письму и удалена из внешнего хранилища.
Приложение не запрашивает разрешения на доступ пока пользователь сам не захочет собрать информацию для отладки. По умолчанию разрешение отключено для приложения и другие функции приложения его не требуют. Если пользователь собирал информацию однажды, то он может отключить данную функцию в настройках (Настройки > Приложения и Уведомления > Seed4.Me VPN > Разрешения > Использовать память телефона).