Read phone state что это
Разрешения Android 6.0 в защите и нападении
Содержание статьи
Каждый день в мобильных устройствах выявляют уязвимости, которые могут быть проэксплуатированы злоумышленниками. Они могут отправить СМС на платный номер, могут собрать большую базу данных контактов и продать ее, а могут и скомпрометировать конкретного человека. Удачная эксплуатация уязвимости обычно предполагает соблюдение целого ряда условий. Но ведь можно пойти и другим путем! Дать пользователю вполне нужное приложение (игрушку с птичками), у которого в манифесте будет записан список интересной нам информации на устройстве. В данной статье мы рассмотрим способы получения и сохранения важной информации с Android-устройства.
Архитектура ОС Android построена таким образом, что позволяет обмениваться разного рода информацией между приложениями. Приложению, работающему с картами, нужно местоположение, диктофону — доступ к микрофону. Таким образом, с виду все ясно и прозрачно.
Мы открыто прописываем в манифесте приложения требуемые данные или возможности и получаем их при установке. Никто никого не обманывает, все добровольно. Но проблема состоит в том, что пользователи ужасно неграмотны в информационных технологиях. Мало кто задумывается, для чего тому же диктофону требуется твое местоположение или доступ к СМС. Приложение открыто заявляет о своих намерениях в манифесте, и странно было бы ожидать от него другого поведения.
Задолго до всем известного разоблачения я понимал, что игрушка со злыми птичками на твоем устройстве — это стукач, так как оно, помимо всего прочего, хочет читать идентификатор устройства и данные о вызовах. Простой вопрос «Тебе эти данные зачем?» обнажает истинные намерения ее создателей.
Пользователь при установке приложения ставится в положение «или разрешай все, что оно хочет, или останешься без программы». Только единицы пойдут в магазине искать приложение со сходной функциональностью, но с меньшими запросами (аналогов может вовсе не быть), поэтому у пользователей быстро входит в привычку жать «да-да-да» на все вопросы. Согласись, легко привыкать, когда за долгие годы офлайн-жизни у пользователей вырабатывался рефлекс автоматически подписывать многостраничные договоры, по принципу «ну, все же подписывают, наверное, тут ничего плохого, да и выход всего один — либо я подписываю тут, либо не получаю того, за чем пришел».
Если мы отберем все разрешения у приложения, ОС во избежание падения программы может просто отдать ему пустые значения. Можно обмануть приложение, подсунув ему заведомо ложные данные (местоположение Северного полюса) или просто нули. Например, приложение может спросить список контактов на устройстве, и разработчик предполагает в своей архитектуре, что он может быть пустым (совсем новое устройство). Тут даже и заподозрить нечего — и данные спасены, и приложение не сломалось.
На такие ухищрения приходилось идти вплоть до версии Android 6.0 Marshmallow. В ней появился новый механизм работы с разрешениями.
Он позволяет давать и забирать разрешения во время работы самого приложения. Для обратной совместимости старых аппликух (то есть у которых значение targetSdkVersion меньше 23) работает старый механизм запроса разрешений при установке. Обновленные приложения должны запрашивать разрешения в процессе работы. В настройках приложения мы можем посмотреть, к чему у приложения есть доступ, и при желании отозвать этот самый акцесс.
Рассмотрим работу данного механизма на устройстве с версией Android 6.0.
Давай установим птичек, но перед первым запуском отберем у них все права. При запросе прав при установке из гуглплея мы видим, что targetSdkVersion у приложения меньше 23. Экран настроек говорит нам о несколько завышенных интересах создателей приложения.
Запрос прав при установке птичек из маркетаХакер #204. Шифровальщик для AndroidКак насчет того, чтобы немного их укоротить?
После отзыва разрешений я запустил игру, и оказалось, что нормальной работе это ничуть не помешало. Видимо, фоновый сервис сбора данных никак не влияет на основной игровой интерфейс. Теперь давай рассмотрим работу с обновленным приложением Skype. Вот перед нами часть манифеста «похожего» приложения. Список разрешений и требований из манифеста приложения вдохновляет: Если бы только пользователи это видели. Раз мы хотим сохранить хотя бы малую долю частной жизни, остается уповать только на операционную систему. Рассмотрим процесс установки приложения. При установке из маркета никаких диалоговых окон не показывается — все разрешения приложение будет спрашивать потом. Проверим в настройках.
Запустим приложение. Последовательно идут семь запросов. Последовательно отклоняем все запросы, и скайп превращается в интернет-чат :). Постой, я сказал «в интернет-чат»? А почему он не спросил разрешения на доступ в интернет? А все потому, что разрешения делятся на две группы: обычные и опасные. Доступ теперь должны запрашивать только последние. Список обычных разрешений можно посмотреть тут. А вот — опасные разрешения (и их группы). Для создания запросов на разрешения есть подробные материалы: шаблоны использования запросов на доступ к разрешениям, рекомендации для доступа к разрешениям, а вот и полный список разрешений. С теорией мы более-менее разобрались, теперь перейдем к практике. Проникаем в список контактов (по-хорошему)Обогащенные этим новым знанием, давай напишем небольшое приложение, в котором будем читать данные о контактах пользователя через запросы в интерфейсе и в сервисе. Как недавно выяснилось, некоторые приложения очень часто любят читать эти данные (оно и неудивительно — вдруг там что-то изменилось, а создатели «хороших» приложений и не знают). Нажатием на кнопку мы проверяем версию ОС и, если она 23 и выше, делаем запрос на получение прав: Диалог на запрос прав После диалога в методе onRequestPermissionsResult нужно обработать ответ: Читаем контакты в одну строчку с переходами на новую строку: Показываем контакты в окне, при клике по окну оно скроется: А вот результат работы чтения контактов: Забыл взять контакты у совы Проникаем в список контактов (по-плохому)Теперь проделаем то же самое, но в сервисе, как и положено плохому приложению. Сервис никаких запросов слать не будет, а будет пытаться просто в лоб читать контакты. Если у приложения есть права, то сервис покажет Toast сообщение со списком контактов, если прав нет — вызовет ошибку с сообщением. Теперь исследуем поведение приложения, если выставить ему targetSdkVersion ниже 23. По умолчанию приложению были выданы права, и все работает штатно без запросов. После отключения прав в настройках приложения список контактов стал приходить пустым. Никаких ошибок мы не получили, но и контактов тоже. Значит, без нашего ведома приложения будут получать неактуальную информацию. ЗаключениеНовая версия Android включает в себя более надежные и гибкие настройки прав для приложений. Можно сказать, что в новой версии наши данные защищены более эффективно, но это не значит, что теперь тебе можно вслепую соглашаться со всеми предложениями, поступающими из всплывающих окошек. Будь бдителен! Страшная сказка на ночь для пользователей AndroidКаждый, наверное, сталкивался с сайтами, предлагающими пользователю платную подписку на ту или иную услугу. В силу специфики моей работы мне иногда приходится проверять подобные ресурсы. Чаще всего они наспех набиты контентом, фальшивыми комментариями и созданы специально для обмана пользователя. Создатели обещают золотые горы, а на деле все заканчивается банальным разводом на деньги. Данная статья — один из частных случаев анализа фейк-сайта с приложением для Android. Все началось с того, что мне прислали на проверку сайт. По виду — обычный варезный блог с громкими заголовками типа “Бесплатные обои и картинки для андроида”, “Самые умные программы на андроид” и тому подобное. Сразу бросилось в глаза, что во всех постах одинаковые комментарии, оставленные “разными людьми”. Содержание примерно следующее: — Сайт просит ввести номер телефона, это нормально? В общем факт обмана виден сразу, но я решил копать дальше. При попытке загрузить приложение из любого поста с помощью стационарного компьютера, меня перекидывает на другой ресурс. Ссылка вида http://****/**/?sub_id=* (ага, возможно партнерочка). Там мне предлагают купить за деньги Google Chrome (и ведь ведутся же люди!). Допустим… Но ведь ресурс посвящен приложениям для Android устройств, значит, нужно попробовать зайти с девайса. Как и следовало ожидать: вместо предложения купить супер-браузер загружается install.apk. “Вот это уже интересно” — подумал я и не ошибся. Первое, что бросилось в глаза — огромное количество потенциально опасных разрешений. Не слабый набор, правда? Мне стало интересно, что же приложение делает со всеми этими разрешениями. Не буду описывать сам процесс декомпиляции, лишь упомяну, что использовал apktools, dex2jar, JD-GUI и jad. В итоге я получил декомпилированные ресурсы и набор классов. Первое, на что я обратил внимание, это, разумеется, AndroidManifest.xml. Коротко о разрешениях: READ_PHONE_STATE — получение информации о телефоне (номер телефона, серийник, информация о вызовах); Так же есть ресивер, который срабатывает на следующие намерения: SMS_RECEIVED — получено sms-сообщение; Так как времени на изучение приложение у меня было немного (стояла задача в общих чертах узнать, что делает приложение), я не стал вдаваться во все тонкости. Почти все URL там зашифрованы, и для расшифровки нужно просидеть не один час. Можно, конечно, получить их с помощью WireShark, но в этом нет необходимости. Работа приложенияПришло время заглянуть в декомпилированные классы. Начнем пожалуй с MainActivity. Я прокомментирую функции, на которые стоит обратить внимание: При детальном анализе можно увидеть, что сообщение отправляется сразу, а не после нажатии кнопки “Далее” (как это обычно принято). Лицензионное соглашение есть, но оно очень хорошо запрятано. Но отправка сообщения — это не самая страшная проблема. Помните большое количество разрешений? Давайте посмотрим, зачем они все-таки нужны приложению. Чтобы сэкономить место и ваше время, я не буду выкладывать MainReceiver. Сразу скажу, что он обрабатывает и удаляет (!) входящие сообщения, а в случае необходимости еще и отвечает. Самое интересное находится в MainService. При запуске сервис подключается к серверу, запрашивает оттуда данные, получает нечто в json и при успешном ответе запускает метод executeCommands(jsonobject1). И тут начинается магия: Фактически это троянский конь. Классический такой троянский конь, позволяющий сливать данные пользователя и управлять его телефоном. РезюмеНа хабре не тот контингент, которому стоит читать нотацию на тему “не ставьте не проверенные приложения”, поэтому данную часть своего выступления я опущу. Первые вредоносные приложения просто отправляли платные sms-сообщения, потом начали рассылать себя всем из списка контактов, а теперь — мы имеем полноценную троянскую лошадь, которую можно дергать за поводья удаленно. Эволюция… Перечислю еще раз вкратце (для тех, кто пролистал, не читая код с моими комментариями) что умеет делать приложение: 1. Менять URL основного сервера Чем опасны разрешения для приложений в системе AndroidПо умолчанию все приложения для Android работают в песочнице – изолированная среда. Если они хотят получить доступ к данным, находящихся за пределами песочницы, изменить их или удалить, то должны получить на это согласие системы. Полномочия делятся на несколько категорий, но я расскажу только о двух из них: обычные и опасные. Для нормальных разрешений, например, доступ в интернет, создание иконки, подключение через Bluetooth и т.д., не требуется согласие пользователя. Если приложение требует «опасного» разрешения, тогда система запрашивает согласие у пользователя. Почему некоторые полномочия считаются опасными? В каких случаях лучше запретить доступ? Опасные разрешения для приложенийВ категорию «опасно» можно отнести девять групп полномочий. Приложения, которые их требуют, каким-то образом влияют на частную жизнь или безопасность пользователя. В каждой группе есть такие полномочия, которых может потребовать какое-либо приложение. Если пользователь одобрит какие-либо разрешения, приложение получает все разрешения из этой группы автоматически, без дополнительного подтверждения. Например, если приложение получает разрешение на чтение SMS-сообщений, то может также отправлять SMS-сообщения, просматривать MMS-сообщения и выполнять другие действия, относящиеся к этой группе. КалендарьОпасности: если вы активно используете календарь, приложение изучит вашу ежедневную рутину и, может быть, эти сведения передаст третьим лицам. Кроме того, из-за ошибки приложение может случайно удалить из календаря важную встречу. КамераОпасности: приложение может тайно записывать видео или делать фотографии в любое время. КонтактыОпасности: приложение может получить доступ к адресной книге. Эти данные являются очень привлекательной добычей для спамеров и мошенников. Это разрешение также позволяет получить доступ к списку всех аккаунтов, которые вы используете на вашем устройстве – Google, Facebook, Instagram и т.д. МестоположениеОпасности: приложение будет знать, где вы находитесь, в любое время. Может, например, дать знать грабителям, когда Вас нет дома. МикрофонОпасности: приложение может записывать всё, что происходит рядом с телефоном. Все разговоры. Не только тогда, когда Вы разговариваете по телефону, но и в течение всего дня. ТелефонУгрозы: когда Вы передаёте полномочия, связанные с телефоном, вы предоставляете приложениям выполнения практически любого действия, связанного с голосовой связью. Приложение будет знать, когда и кому Вы звоните, – и может само позвонить, в том числе на платные номера, за ваш счет. Датчики телаОпасности: если вы используете аксессуаров с датчиками тела (помимо встроенных в телефон датчиков движения), это приложение получает данные о том, что происходит с вашим телом. Угрозы: позволяет приложению принимать и читать входящие SMS-сообщения и отправлять их (разумеется, за ваш счет). Память устройстваОпасности: приложение может считывать, изменять или удалять любые файлы, хранящиеся на вашем телефоне. Как настроить разрешения для приложенийЕсли разрешения, которые запрашивает приложение, кажутся Вам подозрительными, не устанавливайте его – по крайней мере, не соглашайтесь на них. В каждом случае предоставление полномочий следует тщательно обдумать. Например, если какая-то игра или инструмент для редактирования фотографий, пытается получить доступ к вашему текущему местоположению, это выглядит страно. Между тем, карты и навигаторы действительно нуждаются в GPS-данных – но им не зачем получать доступ к списку контактов или SMS. В Android 6 и более поздней версии приложения спрашивают пользователей о разрешение всякий раз, когда требуется одно из опасных прав. Если вы не хотите их предоставлять, вы всегда можете отклонить запрос. Конечно, если приложение действительно нуждается в этом разрешении, оно будет отображать сообщение об ошибке и не будет правильно работать. Вы также можете проверить список предоставленных разрешений и изменить их для любого приложения. Для этого выберите пункт Настройки → Приложения (в зависимости от версии Android эти и другие элементы меню могут иметь разные названия). Теперь у вас есть на выбор два пути. Вы можете проверить все разрешения, предоставленные приложениям. Для этого нажмите на название приложения и выберите Разрешения. Другой способ – это просмотреть список всех приложений, которые уже требовали или могут не требовать одно из опасных прав. Например, хорошей идеей будет проверить, какие приложения хотят иметь доступ к списку контактов, и аннулировать разрешения в случае сомнений. Для этого щелкните Настройка приложения (значок шестеренки в правом верхнем углу) и выберите пункт Разрешения приложений. Особые разрешения для приложенийПомимо опасных разрешений, приложение также может потребовать особых разрешений. В таком случае будьте осторожны: так часто поступают трояны. ДоступностьЭто разрешение упрощает работу с приложениями и устройствами людям, имеющим проблемы со зрением и слухом. Этими функциями могут злоупотреблять вредоносные программы. После получения таких разрешений доступа троянские программы могут извлекать данные из приложений (в том числе ввод текста – пароли). Кроме того, вредоносные программы могут приобретать приложения в магазине Google Play. Стандартное приложение для общенияБанковские трояны хотят быть стандартными приложениями для обработки SMS, потому что таким образом они могут читать SMS-сообщения и скрывать их – даже в более поздних версиях Android. Например, троянские программы могут использовать эту функцию для перехвата паролей, передаваемых банками в сообщениях SMS и для того чтобы подтвердить вредные операции без ведома пользователя (помните, что они могут скрывать SMS-сообщения). Всегда сверхуПраво наложения окна поверх других приложений позволяет троянам отображать фишинговые окна вместо интерфейса оригинальных приложений (обычно это относится к приложения мобильного банкинга или социальных сетей). Жертва думает, что вводит свой пароль в форму реального приложения, но, на самом деле, всё происходит в ложном окне, открывающемся трояном, а конфиденциальные данные мигрируют к преступникам. Права администратора устройстваЭти разрешения позволяют пользователям изменять пароль, блокировать камеру или удалять все данные с устройства. Вредоносные программы часто пытаются получить такие права, потому что их трудно потом удалить. Права rootЭто самое опасное разрешения. По умолчанию система Android никогда не дает их приложениям, но некоторые троянские программы могут использовать уязвимости в системе, чтобы получить root-права. Тогда все остальные защиты становятся бесполезными – вредоносная программа может использовать права root для выполнения всего, независимо от того, какие полномочия были одобрены или отклонены. Стоит отметить, что даже новая система разрешений (в Android 6 и выше) не защищает полностью от вредных программ. Например, trojan-Gugi неоднократно заражает жертву, требуя (до получения результата) разрешения на внесение изменений в интерфейс. В конечном итоге, вредоносное приложение перекрывает все другие приложения до тех пор, пока не получит необходимых разрешений. Выводы – каких разрешений заслуживают приложенияПриложения не должны делать всё, что хотят на вашем телефоне, особенно, если они без причины хотят прав из категории опасных. Однако, существуют приложения, которым действительно нужно много разрешений. Например, антивирусные программы для сканирования системы и защиты от угроз. Прежде чем дать некоторые полномочия, подумайте о том, действительно ли приложение в них нуждается. Если вы не уверены, поищите эту информацию в интернете. В конце надо добавить, что даже самый бдительный пользователь не защищен от вредоносных программ, использующим уязвимости системы. Поэтому так важно правильное управление разрешениями приложений (помогает защитить конфиденциальные данные от приложений-шпионов). Разрешения приложений в Android 6 и вышеОбъясняем, что значат те или иные разрешения приложений в Android 6 и выше — и стоит ли выдавать их приложениям. Обновлено 28.09.2018: В Android 8 (Oreo) разрешения приложений устроены иначе, в том числе добавилась отдельная группа разрешений «Специальный доступ». Подробнее об этом читайте в посте «Разрешения приложений в Android 8». В Android есть очень хороший защитный механизм — система разрешений для приложений. По сути, это набор действий, которые система разрешает приложению выполнять. Дело в том, что по умолчанию все приложения в Android работают в изолированной среде — так называемой «песочнице». И для того чтобы сделать что-либо с чем-то, так сказать, общественным, им надо получить разрешение. Разрешения эти разделены на несколько категорий, но нас интересуют только две из них — «Обычные» и «Опасные». В группу «Обычные» входят такие вещи, как доступ в Интернет, создание ярлыков, подключение по Bluetooth и так далее. Эти разрешения выдаются приложениям без обязательного согласия пользователя, то есть система вас ни о чем не спрашивает. А вот для того, чтобы получить одно из «опасных» разрешений, приложение обязательно должно спросить владельца устройства, согласен ли он его выдать. Чем же опасны «опасные» разрешения и стоит ли выдавать их приложениям? Давайте разберемся. Опасные разрешенияВ категорию «Опасные» входят девять групп разрешений, которые так или иначе связаны с безопасностью данных пользователя. В свою очередь, каждая из групп содержит несколько разрешений, которые может запрашивать приложение. Если одно из разрешений в данной группе пользователь уже одобрил, все остальные разрешения из той же группы приложение получит автоматически — без нового запроса пользователю. Например, если приложение уже успело запросить и получить разрешение на чтение SMS, то впоследствии оно автоматически получит разрешение и на отправку SMS, и на прием MMS, и на все остальные разрешения из данной группы. КалендарьЧем опасно: Если вы активно пользуетесь электронным ежедневником, то доступ к нему позволит узнать все о том, чем вы занимались в прошлом, занимаетесь сегодня и собираетесь заниматься в будущем, — настоящая находка для шпиона. Также какое-нибудь криво написанное приложение может нечаянно стереть важные встречи из календаря. КамераЧем опасно: Приложение сможет в любой момент сделать фото или записать видео, не предупреждая вас об этом. КонтактыЧем опасно: Позволяет приложению заполучить всю вашу адресную книгу — этим данным будут очень рады спамеры и мошенники. Также разрешает доступ к списку всех учетных записей, с помощью которых вы входите в приложения на данном устройстве, — Google, «Яндекс», Facebook, «ВКонтакте» и так далее. МестоположениеЧем опасно: Позволяет приложению следить за всеми вашими перемещениями. Например, жулики могут узнать, что вы уехали в отпуск, и попробовать наведаться к вам домой. МикрофонЧем опасно: Приложение сможет вести аудиозапись всего, что происходит рядом со смартфоном. Всех ваших разговоров. Не только по телефону. ТелефонЧем опасно: Выдавая приложению разрешение данной группы, вы позволяете ему совершать практически любые действия, которые касаются голосовой связи. Приложение сможет узнать, когда и кому вы звонили. Или позвонить куда угодно за ваш счет, в том числе на «очень платные» номера. СенсорыЧем опасно: Разрешает приложению следить за тем, что происходит с вашим телом, используя информацию от датчиков соответствующей категории, если они у вас есть и вы ими пользуетесь (встроенные в смартфон датчики движения не входят в эту категорию). Чем опасно: Позволяет приложению получать и читать все ваши текстовые сообщения. А также отправлять SMS (разумеется, за ваш счет) — например, чтобы подписать вас на какую-нибудь платную «услугу». ПамятьЧем опасно: Предоставляет приложению возможность читать, изменять и удалять любые ваши файлы, хранящиеся в памяти смартфона. Как настроить разрешения приложенийСтоит внимательно относиться к запрашиваемым приложением разрешениям. Если игра или приложение для обработки фотографий запрашивают доступ к вашему текущему местоположению, это, скорее всего, ненормально — таким приложениям данная информация ни к чему. А вот навигационному приложению GPS действительно нужен — но, в свою очередь, совершенно незачем давать ему доступ к контактам или SMS, например. В случае если права, которые запрашивает приложение, выглядят слишком подозрительно, лучше такое приложение вовсе не устанавливать. Или можно просто не разрешить ему доступ к тем функциям и данным, которыми вы не хотите делиться. В Android версии 6 и новее приложения выводят запрос пользователю в тот момент, когда им требуется то или иное из «опасных» разрешений. Если вы не согласны разрешать приложению доступ, то вы можете просто нажать кнопку «Отклонить». Правда, в том случае, если приложение действительно нуждается в том или ином разрешении, могут возникнуть ошибки в его работе. Запрос приложением разрешений на работу со звонками на устройстве Android 6.0.1 Кроме того, список выданных разрешений можно в любой момент проверить и изменить в настройках операционной системы. Чтобы это сделать, перейдите в Настройки —> Приложения. Дальше есть два варианта. Во-первых, можно посмотреть все разрешения, выданные конкретному приложению: для этого нажмите на название интересующего вас приложения и выберите пункт Разрешения. Во-вторых, можно посмотреть на полный список приложений, которые запрашивали или могут запросить одно из «опасных» разрешений. Например, узнать, какие приложения были бы не прочь запросить у вас доступ к контактам и каким он уже разрешен, а также запретить это тем из них, которым вы не доверяете. Для этого нажмите на шестеренку в правом верхнем углу и выберите пункт Разрешения приложений. Таким образом, приложению, чтобы, например, отправить SMS, необходимо будет спросить у пользователя один раз разрешение, после чего пользователь сможет в любой момент отказать приложению в этом праве, просто передвинув кружок в настройках. Особые праваПомимо разрешений, которые входят в категорию «Опасные», в Android есть еще несколько прав приложений, о которых стоит знать. Если какое-либо приложение запрашивает такие права, это повод как следует задуматься и проверить, не попался ли вам троянец. Специальные возможности (Accessibility)Наличие этих прав в приложении позволяет ему упростить использование приложения или устройства для пользователей с ограничениями, такими как слабое зрение или проблемы со слухом. Но в то же время система Android устроена таким образом, что тот же набор возможностей оказывается очень удобным инструментом для вредоносных приложений. Обладая этими правами, троянцы могут перехватывать данные из других приложений, в том числе вводимый пользователем текст. Кроме того, используя эти возможности, зловреды могут даже покупать приложения в Google Play Store. Приложение для работы с SMS по умолчаниюМногие троянцы пытаются стать приложением для работы с SMS по умолчанию, ведь это позволяет им не только читать SMS, но и скрывать их от пользователя, даже в современных версиях Android. Например, это может понадобиться троянцам для того, чтобы перехватывать одноразовые коды для подтверждения банковских транзакций. Права на отображение своего окна поверх других приложенийОбладая этими правами, троянцы могут показывать свои фишинговые окна поверх других приложений, например мобильных банков или социальных сетей. Вам кажется, что вы вводите свои логин и пароль в окно настоящего приложения — а на самом деле это происходит в фальшивом окне, созданном троянцем, и данные учетной записи утекают к злоумышленникам. Права администратора устройстваОбладая этими правами, приложение может среди прочего сменить пароль, заблокировать камеру или даже удалить все данные с устройства. Многие троянцы запрашивают эти права, так как приложение, которое является администратором устройства, гораздо сложнее удалить. Примеры запроса приложением прав администратора Права суперпользователяЭто самые опасные права. В штатном режиме получение приложением таких прав в Android не предусмотрено, но некоторые троянцы умеют сами получать права суперпользователя, эксплуатируя уязвимости в системе. Самое неприятное, что наличие у приложения прав суперпользователя обесценивает все остальные защитные механизмы: воспользовавшись этими правами, зловред может совершить любое действие в системе, вне зависимости от того, какие ему выданы разрешения. Стоит отметить, что даже новая система работы с разрешениями, появившаяся в Android 6, не защищает от зловредов, она лишь предоставляет пользователю возможность предотвратить потерю данных или денег. Например, троянец Gugi настойчиво запрашивает у пользователя права на перекрытие других приложений, обосновывая это необходимостью работы с окнами. Получив же эти права, троянец блокирует работу устройства своим окном до тех пор, пока не получит все остальные необходимые ему права. ЗаключениеНе всем приложениям стоит разрешать делать на смартфоне все, что они хотят. А некоторые разрешения лучше вообще не давать — благо Android 6 и новее это позволяет. Тем не менее бывают такие приложения, которым действительно нужно очень много разных прав. Например, антивирусным программам, чтобы нормально работать, иметь возможность сканировать систему и проактивно защищать от угроз, требуется не только разрешение на доступ к файлам, но и еще много чего. Однако слепо раздавать разрешения нельзя даже тем приложениям, которым вы доверяете. Просто перед тем, как дать эти разрешения, подумайте, действительно ли они нужны данному конкретному приложению.
Такая бдительность, правда, не защищает от того, что какой-нибудь зловред получит права сам через уязвимости в системе. Поэтому важно не только правильно настроить разрешения для сравнительно «мирных» приложений, охотящихся за вашими личными данными, но и иметь средство для обнаружения гораздо более опасных «буйных» зловредов — не забудьте установить на ваше Android-устройство надежный антивирус. Обновлено 28.09.2018: В Android 8 (Oreo) разрешения приложений устроены иначе, в том числе добавилась отдельная группа разрешений «Специальный доступ». Подробнее об этом читайте в посте «Разрешения приложений в Android 8».
|