В операционной системе Android с каждой новой версией появляются дополнительные механизмы для защиты пользователей от вредоносного программного обеспечения. Например, в Android 13 такой новинкой стали «Настройки с ограниченным доступом». В этом посте мы поговорим о том, что представляет собой данный механизм, от чего он призван защищать и насколько успешно справляется с этой защитой (спойлер: не очень).
Что такое «Настройки с ограниченным доступом»
Как работают «Настройки с ограниченным доступом»? Допустим, вы устанавливаете приложение из стороннего источника — то есть загружаете откуда-то APK-файл и запускаете его установку. Предположим, что этому приложению для работы требуется доступ к определенным функциям, которые Google считает особенно опасными (и не зря, но об этом позже). В этом случае приложение попросит вас включить для него нужные функции в настройках операционной системы.
Однако в Android 13 и 14 для приложений, установленных пользователем из APK-файлов, сделать это не получится. Если вы пойдете в настройки смартфона и попытаетесь дать приложению опасные разрешения, то вам покажут окно с заголовком «Настройки с ограниченным доступом» (на английском — «Restricted setting»). В нем будет написано, что «В целях безопасности доступ к этой функции пока ограничен» или, соответственно, «For your security, this setting is currently unavailable».
Какие же разрешения в Google считают настолько опасными, что блокируют к ним доступ для любых приложений, загруженных не из магазина? К сожалению, в Google не торопятся делиться этой информацией. Поэтому ее приходится собирать из публикаций независимых источников, предназначенных для Android-разработчиков. На данный момент известно о двух таких ограничениях:
Разрешение на доступ к «Специальным возможностям».
Разрешение на доступ к уведомлениям.
Не исключено, что этот список будет меняться в будущих версиях Android. Но пока, по всей видимости, это все разрешения, которые в Google решили ограничивать для приложений, загруженных из неизвестных источников. Теперь поговорим о том, зачем это вообще нужно.
Почему в Google считают, что «Специальные возможности» — это опасно
Мы уже рассказывали про «Специальные возможности» в недавнем посте «Три самые опасные функции Android». Если вкратце, то «Специальные возможности» — это набор функций Android, созданных для помощи людям с серьезными нарушениями зрения.
Изначальная идея состоит в том, чтобы с помощью «Специальных возможностей» приложение могло быть полноценным посредником между визуальным интерфейсом операционной системы и человеком, который не способен пользоваться этим интерфейсом, но может отдавать команды и получать информацию другим способом — как правило, голосом. Таким образом, «Специальные возможности» — это своего рода собака-поводырь для виртуального пространства.
Используя «Специальные возможности», приложение может видеть все, что происходит на экране Android-устройства, и совершать любые действия от имени пользователя — нажимать любые кнопки, вводить что-то в любые поля, менять настройки и так далее.
Из-за этого «Специальные возможности» очень полюбили создатели вредоносных приложений для Android — этот набор функций позволяет им делать очень много нехорошего: читать переписку, подсматривать пароли, воровать финансовую информацию, перехватывать одноразовые коды подтверждения транзакций и так далее. Более того, «Специальные возможности» позволяют зловреду еще и совершать действия от имени пользователя в других приложениях: например, ввести в банковском приложении команду на перевод и подтвердить транзакцию одноразовым кодом из текстового сообщения.
Вот поэтому в Google считают разрешение на доступ к «Специальным возможностям» особенно опасным — и правильно делают. Для тех приложений, которые размещены в Google Play, их использование означает дополнительные проверки модераторами. Ну а для программ, загруженных из неизвестных источников, разработчики Android попытались и вовсе отключить доступ к данному набору функций.
Почему в Google ограничивают доступ к уведомлениям
Со «Специальными возможностями» разобрались, теперь поговорим, что же не так с доступом приложений к уведомлениям (в Android эта функция называется Notification Listener — «Прослушиватель уведомлений»). А опасность в том, что в уведомлениях может содержаться масса личной информации пользователя.
Например, имея доступ ко всем уведомлениям, вредоносное приложение может читать практически всю входящую часть переписки пользователя. И, в частности, перехватывать те сообщения, которые содержат одноразовые коды для подтверждения банковских транзакций, аутентификации в тех или иных сервисах (например, мессенджерах), смены пароля и так далее.
И тут возникают две серьезные угрозы. Во-первых, приложение, имеющее доступ к функции Notification Listener, получает простой и удобный способ следить за пользователем, что очень ценно для шпионского ПО.
Во-вторых, используя полученную из уведомлений информацию, вредоносное приложение может угонять аккаунты пользователя. И все это без каких-либо дополнительных ухищрений, сложных технических трюков или дорогостоящих уязвимостей — просто используя штатные возможности Android.
Неудивительно, что в Google считают доступ к уведомлениям не менее опасным, чем доступ к «Специальным возможностям», и пытаются ограничить его для программ, загруженных не из магазинов приложений.
Как Android-зловреды обходят «Настройки с ограниченным доступом»
В Android 13 и 14 механизм защиты от использования опасных функций вредоносными приложениями, загруженными из неизвестных источников, устроен следующим образом. Магазины приложений обычно используют так называемый session-based-метод установки. Инсталлированные этим методом приложения система считает безопасными, не включает для них ограничения, а пользователь может разрешить таким приложениям доступ к «Специальным возможностям» и «Прослушивателю уведомлений».
Но если приложение установлено без использования метода session-based — а так с очень высокой вероятностью происходит, когда пользователь вручную загружает APK, — то оно считается опасным и для него включается функция «Настройки с ограниченным доступом».
Отсюда следует и механизм обхода ограничений: пусть загруженное из недостоверного источника вредоносное приложение и не может получить доступ к «Специальным возможностям» или уведомлениям. Но оно может использовать session-based-метод для… установки другого вредоносного приложения! А вот оно уже будет считаться безопасным, и ограничения доступа для него не включатся.
И это совсем не теоретическая опасность, а вполне себе практическая проблема: создатели вредоносного ПО уже успели сориентироваться и в свежих версиях своих творений научились обходить механизм «Настроек с ограниченным доступом». Так что ограничения Android 13 и 14 смогут помешать только старым зловредам, а от новых защитить, увы, не смогут.
Как отключить «Настройки с ограниченным доступом» при установке приложения из сторонних источников
Хоть это и небезопасно, но порой пользователю может понадобиться дать доступ к «Специальным возможностям» (Accessibility) или «Прослушивателю уведомлений» (Notification Listener) приложению, загруженному не из магазина. Мы рекомендуем быть в этом случае предельно осторожными и обязательно проверить такое приложение перед установкой надежным антивирусом.
Чтобы отключить ограничения, нужно:
Открыть настройки смартфона.
Перейти в пункт Приложения.
Выбрать то приложение, для которого вы хотите снять ограничения доступа к функциям.
В верхнем правом углу нажать на значок с тремя точками.
Выбрать пункт Разрешить доступ к настройкам.
Вот и все: после этого пункт меню, позволяющий выдать приложению нужные разрешения, станет активным.
Как защитить Android-смартфон
Поскольку полагаться на «Настройки с ограниченным доступом» нельзя, защищаться от вредоносного ПО, злоупотребляющего доступом к «Специальным возможностям» или уведомлениям, придется другими способами:
Относитесь с осторожностью к любым приложениям, которые запрашивают доступ к этим функциям, — выше мы уже говорили о том, почему это действительно опасно.
Старайтесь устанавливать приложения из официальных магазинов. Иногда зловреды встречаются и в них, но все же такая опасность гораздо ниже, чем шанс нахватать троянов на безвестном сайте в интернете.
Если вам все-таки приходится установить приложение из неизвестного источника, не забудьте отключить эту возможность сразу после установки.
Проверяйте все устанавливаемые приложения надежным мобильным антивирусом.
Если вы используете бесплатную версию нашей защиты, то это надо не забывать делать вручную перед запуском каждого нового приложения.