Восьмого марта Google представила предварительный выпуск Android P, который почти со стопроцентной вероятностью вскоре сменит имя на Android 9. В новой версии в очередной раз изменился интерфейс, появились новые функции панели уведомлений, поддержка HDR, двух камер, но наше внимание, как всегда, привлекает нечто гораздо более интересное: безопасность и новые механизмы ограничений.
 

Запрет на фоновое использование камеры и микрофона

Об одном из самых заметных security-новшеств Android стало известно еще до выхода превью Android P, писали о нем и мы. Это, конечно же, запрет на использование камеры, микрофона и любых сенсоров приложениями, которые находятся в состоянии Idle, то есть свернуты и работают в фоне. Так что разного рода малварь, которая любит снимать и слушать происходящее вокруг, теперь должна отвалиться.

Но есть один нюанс: как быть с софтом, предназначенным для поиска смартфона? Есть множество приложений, позволяющих удаленно снимать и прослушивать происходящее, чтобы быстрее найти свой украденный смартфон.

Для этого Google в очередной раз предлагает использовать так называемый foreground service. Это специальный тип фоновой службы, которая имеет уведомление в панели уведомлений, а потому заметна пользователю. Никто не мешает тому же пользователю скрыть это уведомление стандартными средствами.

 

Запрет на cleartext HTTP

Второе важное нововведение Android P — полный запрет на использование HTTP без TLS (то есть без шифрования) для всех приложений, собранных для новой версии Android. Другими словами, если в build.prop приложения указан targetSdkVersion больше 27, то приложение не сможет подключаться к хостам по HTTP.

Это ограничение тем не менее можно обойти, если указать в файле настроек безопасности сети (network_security_config.xml) список разрешенных доменов:

<domain-config cleartextTrafficPermitted="false">
    <domain includeSubdomains="true">secure.example.com</domain>
</domain-config>
 

Шифрование резервных копий

Пока эта функция еще не активирована, но в следующих выпусках Android P можно будет указать пароль, без которого невозможно восстановить резервные копии настроек приложений, автоматически отправляемых в Google Drive. Это в том числе означает, что даже у Google не будет доступа к твоим данным. Apple, кстати, всегда имела доступ к резервным копиям и отдавала их властям по первому же запросу.

 

Диалоги подтверждения с защитой от MITM

Еще одно интересное нововведение Android P — доступный сторонним разработчикам «защищенный» диалог подтверждения (ConfirmationDialog). Он позволяет удостовериться, что пользователь действительно увидел текст диалога и согласился с ним, даже в том случае, если смартфон пользователя был взломан и малварь получила контроль над ядром и фреймворком.

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

 

Запрет на использование скрытых API

В Android есть ряд скрытых, недоступных обычным приложениям API. Мы уже рассказывали о них и продемонстрировали, как получить доступ к этим API с помощью рефлексии. Так же поступают и другие разработчики приложений, а это приводит к уязвимостям и нестабильностям в работе приложений (скрытые API могут меняться и исчезать от версии к версии).

В Android P доступ к скрытым API запрещен. Более того, новая версия Android выводит уведомление в том случае, если приложение использует объявленные устаревшими (deprecated) API. Это должно заставить разработчиков перейти на использование новых API.

 

Криптографический модуль StrongBox

Некоторые из устройств, оснащенных Android P, могут иметь встроенный криптографический модуль StrongBox, работающий в кооперации с модулем TEE (Trusted Execution Environment, например, TrustZone в процессорах Qualcomm). По сути, этот модуль — реализованный в железе Keymaster HAL (Hardware Abstraction Layer), который в текущих версиях ОС представляет собой библиотеку, реализованную производителем устройства или чипсета.

Как происходит работа с Keymaster
Как происходит работа с Keymaster
 

Реализация OMAPI API

Android P поддерживает GlobalPlatform Open Mobile API (OMAPI API), предназначенный для доступа к защищенным элементам (Secure Elements, SE), специальным микрочипам, которые обычно устанавливаются в SIM-карты, банковские карты, карты оплаты проезда и смартфоны с поддержкой бесконтактных платежей.

Secure Element — отдельный микропроцессор с собственной памятью. Он отвечает за безопасное хранение и выполнение платежных приложений. В смартфонах с поддержкой NFC SecureElement обычно впаян в материнскую плату, но также может находиться SIM-карте или даже в карте памяти.

 

Одной строкой

  • Начиная с Android P приложения больше не смогут прочитать серийный номер устройства через переменную Build.SERIAL. Она всегда будет равна UNKNOWN. Для получения серийного номера теперь нужно полномочие READ_PHONE_STATE.
  • Появилась нативная поддержка высокопроизводительного поточного шифра ChaCha20, который в том числе используется в браузере Chrome при соединении с сайтами Google, в ядре Linux для генерации случайных чисел и в некоторых системах потокового вещания.
  • Правила SELinux теперь запрещают приложениям делиться данными с другими приложениями путем выставления открытых прав доступа на файлы.
  • В следующих выпусках Android P планируется включить поддержку рандомизации MAC-адресов при сканировании Wi-Fi-сетей. Это позволит бороться с отслеживанием пользователей (в iOS такая функция встроена еще с версии 8).

Получится ли у Google сделать по-настоящему безопасный Android, способный составить конкуренцию iOS?

Загрузка ... Загрузка ...

10 комментариев

  1. baragoz

    13.03.2018 at 14:41

    Если учесть, что своевременно обновляются только флагманы, Сони и Нексусы, то это все мало кого коснется. На куче устройств — 6 . 0 последняя официальная прошивка.

  2. Ericks0n

    13.03.2018 at 15:06

    Хорошая статья. Было бы хорошо, если бы в следующей раз рассказали о LineageOS, давно уже о ней ничего интересного не рассказывали.

  3. Skybad

    13.03.2018 at 15:08

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

  4. X.3.

    13.03.2018 at 17:54

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

  5. Андрей Письменный

    Андрей Письменный

    13.03.2018 at 18:46

    Так Microsoft именно это и делал, пока Windows Phone был жив. Энтузиазма у производителей это по понятным причинам не вызывает: если у всех одинаковый софт и одинаковое железо, то выиграет тот, кто будет делать это железо дешевле других.

  6. john_

    14.03.2018 at 06:58

    Сейчас выигрывает никто. Одни делают говно — оболочки с кучей Троянов и встроенных приложений, другие в этом не разбираются и жрут что дают. «Вот этот телефон за 3990 само то.»
    Гугл перестаёт выпускать обновления (даже важные билютени безопасности) для устройств старше 3х лет. Афону 5s уже 5 лет — до сих пор новейшая ось стоит, хоть и кастрированная немного. Но все заплатки на баги и уязвимости, которые можно залатать программно — эпл заглатывает.
    Кастомизация это хорошо, до тех пор, пока не начинает вредить.

  7. john_

    14.03.2018 at 07:04

    Майкрософт же слились из за дерьмового маркетинга. Они слишком много обещают, а потом говорят — да нам пох*#, иди покупай новый телефон.
    У меня была замечательная Nokia Lumia 625. Замечательная она была до тех пор, пока не пришло кривое обновление до WP8.1, которое глючило и бажило как только можно, а ещё телефон перезагружался периодически при этом выделяя кучу тепла в атмосферу. В прямом смысле. Становился горячий как печка и терял 30-40%% батареи. И видимо проблема была в делезе, а не софтверная.
    Плюсом мертвый магазин приложений. Хоть в андроиде полно поделок от школьников, возможно больше чем нормальных приложений, но в MS Store были одни поделки от школьников. И остаются там до сих пор. Крупные игроки типа Facebook и VK уже перестали развивать свои приложения. За свои деньги (столько стоит средний телефон на андроиде), мелкомягкие ничего не могут предложить пользователю, кроме обещаний «ща все будет».

    • baragoz

      14.03.2018 at 09:23

      Вот удивительно, как такая огромная контора как Майкрософт, могла так много лет методично сливать мобильную ось?

  8. Mark0711

    30.03.2018 at 02:40

    Всем привет подскажите пожалуйста как получить рут прова на HTC M10

Оставить мнение

Check Also

Эксплоиты в десятку. Обзор самых интересных докладов с мировых ИБ-конференций

В последние годы мы отучились воспринимать Windows как нечто невероятно дырявое. Эта опера…