/В России/

Cloak and Dagger: дыра во всех версиях Android

Внимание, это не учебная тревога. Это касается всех версий Android, и на момент публикации данного поста Google не закрыла эту уязвимость. Она позволяет воровать данные, в том числе пароли, устанавливать приложения с полным набором разрешений и следить за тем, что человек делает и что набирает на клавиатуре любого Android-телефона или планшета. Внимание, это не учебная тревога… Предупреждает  Kaspersky.

В чем заключается атака Cloak and Dagger
Если вкратце, то атака сводится к тому, что, используя приложение из Google Play, не требующее от пользователя никаких специальных разрешений, атакующие получают возможность выводить интерфейс этого приложения поверх других и нажимать за пользователя кнопки — так, что он сам этого не видит.

Это оказывается возможным потому, что при установке приложений из Google Play от пользователя не требуют в явном виде разрешать приложениям доступ к функциям SYSTEM_ALERT_WINDOW, а разрешение на доступ к ACCESSIBILITY_SERVICE (A11Y) получить довольно легко.

Что это за разрешения? Первое из них позволяет выводить интерфейс приложения поверх любого другого приложения, а второе дает доступ к набору функций для людей с ограниченным зрением и слухом. Доступ к Accessibility Service — весьма опасная штука, поскольку эта функция позволяет приложению не только отслеживать, что происходит в других приложениях, но и взаимодействовать с ними от лица пользователя.

Казалось бы, ну что может пойти не так?
Суть атак с использованием первого разрешения, SYSTEM_ALERT_WINDOW, примерно такова. Это разрешение, которое Google Play выдает фактически по умолчанию, дает приложению возможность показывать что угодно поверх любых других приложений. При этом выводимые окна могут быть произвольной формы, в том числе с дырками, а также они могут либо фиксировать нажатия, либо пропускать их — так, чтобы их учитывало приложение, находящееся уровнем ниже.

Например, можно создать прозрачный слой, который накладывается на клавиатуру Android-устройства и считывает все нажатия. Сопоставляя координаты места, где пользователь нажал на экран, и вид клавиатуры, атакующий получает возможность узнать, что именно пользователь набирает на этой самой клавиатуре. Вуаля, кейлоггер готов. Это один из примеров, который исследователи привели для демонстрации атаки.

Вообще, SYSTEM_ALERT_WINDOW — тоже довольно опасное разрешение, и Google сама полагает, что оно будет использоваться в малом количестве приложений. Но, поскольку оно нужно таким популярным программам, как Facebook Messenger (да-да, круглые портреты, которые выводятся поверх всего остального — это оно), Skype и Twitter, в Google, видимо, решили, что пользователям будет проще, если Google Play будет выдавать данное разрешение без явного вопроса пользователю. Простота и безопасность, к сожалению, довольно часто противоречат друг другу.

Чем опасны «Специальные возможности»
Изначальная цель у второго разрешения, Accessibility, очень даже благая — упростить людям с ограниченными возможностями в плане зрения и слуха пользование Android-устройствами. На практике данный пакет функций дает приложениям настолько большое количество возможностей, что используют его чаще всего совсем не за этим.

Скажем, для того, чтобы озвучивать голосом происходящее на экране для людей с плохим зрением, приложение с доступом к Accessibility может получать информацию о том, что происходит на устройстве: какое приложение открыто, куда нажимает пользователь, когда всплывает уведомление. То есть ему известен весь контекст происходящего. И это еще не все: приложение может не только наблюдать, но и предпринимать от лица пользователя различные действия.

В целом, Google в курсе того, что доступ к Accessibility дает приложению возможность творить на устройстве практически все, что ему вздумается, поэтому для каждого отдельного приложения Accessibility необходимо включать в отдельном меню в настройках телефона.

Проблема в том, что, используя первое разрешение, SYSTEM_ALERT_WINDOW, и умело выводя окна, которые закрывают большую часть экрана, кроме кнопки OK, атакующие могут убедить пользователя, что соглашается он на что-то абсолютно безопасное, в то время как на самом деле он своими руками выдаст приложению доступ к Accessibility.

Ну а дальше, поскольку Accessibility умеет воспринимать контекст, действовать от лица пользователя и, в том числе, покупать приложения в магазине Google Play, атакующим не составит труда скачать из Google Play приложение-шпион с доступами к чему угодно и дать ему все мыслимые разрешения. При этом делать это можно даже при выключенном экране или, скажем, показывая поверх всего происходящего видеоролик — так, что пользователь ничего не заподозрит.

Идеальный фишинг
Также доступ к SYSTEM_ALERT_WINDOW и ACCESSIBILITY_SERVICE позволяет злоумышленникам проводить фишинговые атаки так, что пользователь о них никогда не догадается.

Например, когда пользователь открывает приложение Facebook и пытается ввести туда логин и пароль, другое приложение с доступом к Accessibility может это отследить. А дальше, воспользовавшись SYSTEM_ALERT_WINDOW и возможностью выводить слои поверх остальных, оно может показать пользователю покрашенное в цвета «Фейсбука» фишинговое окно, в которое ничего не подозревающий пользователь и введет логин и пароль от своей учетной записи.

Знание контекста в данном случае позволяет разработчикам выводить фишинговое окно именно тогда, когда пользователь собирается вводить пароль, и именно там, где надо. Ну а поскольку после ввода пароля пользователь, как он и ожидал, попадет в Facebook, у него не появляется даже намека на подозрения, что что-то произошло.

Как защититься от плаща и кинжала
Авторы исследования протестировали атаку на трех самых популярных версиях Android — 5, 6 и 7, на которые в сумме приходится более 70% всех Android-устройств. Выяснилось, что все три версии уязвимы к этой атаке, и, скорее всего, более ранние версии также уязвимы. То есть, вероятнее всего, если у вас есть устройство на Android, то вас это тоже касается.

Так что вот наш главный совет:

1. Старайтесь не ставить неизвестные вам приложения из Google Play и других магазинов. Особенно бесплатные. Если вы не ставили и не запускали никаких сомнительных приложений, то и атаковать вас нечему. Правда, остается открытым вопрос, как отличить сомнительное приложение от безвредного.

2. Периодически проверяйте, к чему имеют доступ приложения на вашем устройстве и отзывайте лишние разрешения.

Источник: Kaspersky

Просмотров: 2 996 Комментариев: 0
Информация
Комментировать статьи на сайте возможно только в течении 15 дней со дня публикации.