Недавно мы «порадовали» пользователей iPhone проблемами безопасности BLEee, но вряд ли мы сторонники какого-либо из фронтов в извечном споре Apple vs. Android, и готовы рассказать «отличную» новость про Android, если, конечно, в вашей душе есть место для злорадства.


Исследователи из Check Point Software Technologies обнаружили уязвимость, предположительно, в более чем 50% устройств на базе ОС Android в реализации механизма автонастройки для подключения к мобильному оператору по протоколу OMA CP (Open Mobile Alliance Client Provisioning), что позволяет злоумышленнику подменить как минимум следующие параметры устройства, осуществив атаку Man-in-the-middle с применением фишинга:


  • сервер сообщений MMS;
  • адрес прокси-сервера;
  • домашнюю страницу и закладки браузера;
  • адрес почтового сервера;
  • серверы синхронизации контактов и календаря.

Реализация OMA CP


OMA CP — это протокол управления устройством передачи данных спецификации OMA Device Management, разработанный в соответствии с мобильным стандартом Открытого Мобильного Альянса (Open Mobile Alliance), использующий XML-подобный SyncML (Synchronization Markup Language). Протокол OMA CP использует беспроводной протокол передачи данных WAP. Текущая версия OMA CP — 1.1 от 2009 года. При этом для обмена не требуется, чтобы в смартфоне присутствовала SIM-карта или было настроено подключение к Интернету.


Векторы атак используют процесс предоставления данных мобильному клиенту «по воздуху» (over-the-air (OTA) provisioning), с помощью которого мобильные операторы устанавливают необходимые настройки на устройства, подключающиеся к сотовой сети.


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


Если верить исследованию, базовая ОС Android не использует защитные механизмы OMA CP, при этом большинство вендоров решают этот вопрос самостоятельно с помощью аутентификации OTA. Поэтому, если любишь перепрошивать свой девайс стоковым Android, то сейчас есть повод задуматься.


Условия и реализация атаки


Для отправки вредоносных OMA CP сообщений атакующему достаточно иметь GSM-модем и находиться в пределах досягаемости жертвы/жертв. При этом возможны как таргетированные атаки, так и широковещательная рассылка запросов на изменение настроек.


NETWPIN-аутентификация


За редким исключением (рассмотрено ниже про Samsung) сообщения от оператора аутентифицируются, предоставив девайсу его же IMSI (Mobile Subscriber Identity, уникальный 64-битный идентификатор устройства, аналогичный IP-адресу в «этих ваших интернетах»).


Насколько сложно «достать» IMSI — вопрос отдельный, но есть как минимум следующие способы:


  • вредоносное приложение на устройстве (при этом достаточно разрешения в манифесте permission.READ_PHONE_STATE);
  • посмотреть SIM-карту жертвы;
  • использование ISMI-catcher, имитирующих мобильные вышки, что потребует определенных вложений, но вполне возможно.

При получении CP-сообщения пользователю не предоставляется какая-либо информация об отправителе, и решение о легитимности решается сугубо жертвой.


USERPIN-аутентификация


Даже если у злоумышленника отсутствует ISMI, то можно осуществить следующий вектор атаки:


  • отправка сообщения от имени оператора с запросом о применении настроек;
  • автоматический запрос у пользователя PIN-кода системой;
  • отправка CP-сообщения с настройками, защищенного PIN-кодом, указанным пользователем.

Особо отличившийся


Если большинство уязвимых смартфонов использует слабые механизмы аутентификации OMA SMS, то в некоторых устройствах Samsung эта защита не была реализована в принципе на момент исследования (март 2019 г.). Злоумышленник мог просто отправить сообщение с запросом на настройку смартфона и при условии, что пользователь согласится с установкой, задаваемые в CP-сообщении параметры были бы применены. На данный момент Samsung выпустила обновление безопасности для исправления SVE-2019-14073. Так что, если ты не любитель обновлений от вендора или фанат кастомных Android-прошивок, то лучше озаботиться данной проблемой.
Что интересно, у Samsung это уже не первый случай подобного отношения к безопасности OMA CP:



В Samsung Galaxy S4-S7 приложение omacp игнорирует разграничения безопасности, что ведет к применению незапрашиваемых WAP Push SMS сообщений, в результате чего происходит неавторизованное изменение настроек в рамках набора уязвимостей SVE-2016-6542.

Противодействие


  • Самый брутальный способ: отключение приложения omacp. Но тогда «шторка» твоего Android может лишиться части уведомлений, которые для тебя могут быть критичны.
  • Если не используешь Samsung и стоковый Android (или вдруг устройство неизвестного однодневного китайского бренда), то в принципе достаточно будет разумного использования головы, потому что векторы атак предполагают твое непосредственное участие.
  • Так как по сути это MitM-атака, то большинство вопросов «точечно» (на уровне критичных приложений) решается использованием certificate pinning, хотя на практике многие бизнес-приложения пренебрегают данным способом.

Как дела у Apple? и философский вопрос


К счастью для злорадного (нет, это не ты) Apple-пользователя, в данных устройствах используется механизм Apple iOS profiles с использованием сертификатов. Почему похожая система защиты не используется в Android-устройствах? Вопрос более чем интересный.

Комментарии (2)


  1. Sklott
    05.09.2019 15:06

    Больше похоже на какие-то очередные страшилки.

    Во-первых, не знаю как сейчас но несколько лет назад на стоковом андроиде не было имплиментации OMA CP. Никакой!
    Т.е. если ее кто и делал, то только сами вендоры.
    Во-вторых, даже когда ее делали, то точно так-же как и с безопасностью резали почти всю функционльность (т.к. на андроиде нет всех этих настроек!). Т.е. максимум что можно установить это APN и MMS сервер.
    Так что утверждения о том что более 50% андроид телефонов «в опасности» звучит бредом.
    Может это следует читать как 50% андрод телефонов Samsung, тогде еще поверю…


    1. member0
      05.09.2019 18:03
      +1

      С одной стороны — да. С другой, даже не 50%, а 5% Самсунгов на андроиде — это уже катастрофа (самсунг — это ~300 млн проданных смартов/год). Проблема в распространенности.