Содержание статьи
- Что такое безопасность?
- Старички: BlackBerry 10
- Экзотика: Tizen и Sailfish
- Jolla Sailfish
- Samsung Tizen
- Apple iOS
- Что у нас со слежкой за пользователем и с утечками?
- Windows 10 Mobile
- Google Android
- Сколько телефонов с Android зашифровано?
- Большой Брат следит за тобой
- Слово редактора
- Можно ли сделать Android действительно безопасным?
- Заключение
Что такое безопасность?
Нельзя говорить о безопасности устройства, не определив, что мы, собственно, имеем в виду. Физическую безопасность данных? Защиту от методов низкоуровневого анализа с извлечением микросхемы памяти или же просто защиту от любопытных, которые не знают пароля и не умеют обманывать сканер отпечатков пальцев? Передача данных в облако — плюс это или минус с точки зрения безопасности? А в какое облако, кому и куда, каких именно данных, знает ли об этом пользователь и может ли отключить? А насколько вероятно на той или иной платформе подхватить троянца и расстаться не только с паролями, но и с деньгами на счете?
Аспекты безопасности мобильных платформ невозможно рассматривать в отрыве друг от друга. Безопасность — это комплексное решение, охватывающее все грани использования устройства от коммуникаций и изоляции приложений до низкоуровневой защиты и шифрования данных.
Сегодня мы коротко опишем основные достоинства и проблемы во всех современных мобильных ОС, которые имеют хоть какое-то распространение. В список входят Google Android, Apple iOS и Windows 10 Mobile (увы, но Windows Phone 8.1 назвать современной уже нельзя). Бонусом пойдут BlackBerry 10, Sailfish и Samsung Tizen.
Старички: BlackBerry 10
Прежде чем приступать к описанию актуальных платформ, скажем пару слов о BlackBerry 10, которая уже сошла с дистанции. Почему BlackBerry 10? В свое время система активно продвигалась как «самая безопасная» мобильная ОС. В чем-то это было действительно так, что-то, как всегда, преувеличили, что-то было актуальным три года назад, но безнадежно устарело сегодня. В целом нам нравился подход компании BlackBerry к безопасности; впрочем, не обошлось и без провалов.
Плюсы:
- Микроядерная архитектура и система доверенной загрузки — это действительно безопасно. Прав суперпользователя за все время существования системы не получил никто (между прочим, пытались неоднократно, в том числе в серьезных конторах — BlackBerry далеко не всегда была аутсайдером).
- Также невозможно обойти пароль на разблокирование устройства: спустя десять неудачных попыток данные в устройстве полностью уничтожаются.
- Нет никаких встроенных облачных сервисов и нет целенаправленной слежки за пользователем. Данные не передаются на сторону, если только пользователь не решит установить облачное приложение самостоятельно (опционально поддерживаются такие службы, как OneDrive, Box.com, Dropbox).
- Образцовая реализация корпоративных политик безопасности и удаленного контроля через BES (BlackBerry Enterprise Services).
- Надежное (но опциональное) шифрование как встроенного накопителя, так и карт памяти.
- Облачных резервных копий нет совсем, а локальные шифруются с помощью безопасного ключа, привязанного к BlackBerry ID.
Минусы:
- Данные по умолчанию не шифруются. Впрочем, компания может активировать шифрование на устройствах сотрудников.
- Шифрование данных блочное, одноранговое; отсутствует понятие классов защиты и что-либо, хотя бы отдаленно напоминающее Keychain в iOS. Например, данные приложения Wallet можно извлечь из резервной копии.
- В учетную запись BlackBerry ID можно зайти просто с логином и паролем; двухфакторная аутентификация не поддерживается. Сегодня такой подход совершенно неприемлем. Кстати, если известен пароль от BlackBerry ID, можно извлечь ключ, с помощью которого расшифруется созданный привязанным к данной учетке бэкап.
- Защита от сброса к заводским настройкам и защита от кражи очень слабая. Она обходится простой заменой приложения BlackBerry Protect при сборке автозагрузчика или (до BB 10.3.3) понижением версии прошивки.
- Отсутствует рандомизация MAC-адреса, что позволяет отслеживать конкретное устройство с помощью точек доступа Wi-Fi.
Еще один звоночек: BlackBerry охотно сотрудничает с правоохранительными органами, оказывая максимально возможную помощь в поимке преступников, которые пользуются смартфонами BlackBerry.
В целом при грамотной настройке (а пользователи, выбравшие BlackBerry 10, как правило, настраивают свои устройства вполне грамотно) система способна обеспечить как приемлемый уровень безопасности, так и высокий уровень приватности. Впрочем, «опытные пользователи» могут свести все преимущества на нет, установив на смартфон взломанную версию Google Play Services и получив все прелести присмотра «Большого Брата».
Экзотика: Tizen и Sailfish
Tizen и Sailfish — явные аутсайдеры рынка. Аутсайдеры даже в большей степени, чем Windows 10 Mobile или BlackBerry 10, доля которой упала ниже отметки 0,1%. Их безопасность — это безопасность «неуловимого Джо»; о ней мало что известно лишь потому, что они мало кому интересны.
Насколько оправдан такой подход, можно судить по недавно опубликованному исследованию, в котором обнаружено порядка сорока критических уязвимостей в Tizen. Тут можно разве что подытожить давно известное.
- Если не проводились серьезные независимые исследования, то говорить о безопасности платформы нельзя. Критические уязвимости вскроются не раньше, чем платформа получит распространение. Но будет поздно.
- Зловредного ПО нет лишь из-за слабой распространенности платформы. Тоже в каком-то роде защита.
- Механизмы безопасности недостаточны, отсутствуют или описаны лишь на бумаге.
- Любые сертификации говорят лишь о том, что устройство прошло сертификацию, но ровным счетом ничего не говорят о фактическом уровне безопасности.
Jolla Sailfish
С Sailfish ситуация неоднозначная. С одной стороны, система как бы жива: на ее основе время от времени анонсируются какие-то устройства, и даже «Почта России» приобрела большую партию устройств с запредельно высоким ценником. С другой — пользователям предлагают заплатить стоимость крепкого середнячка на Android за модель под управлением Sailfish, обладающую характеристиками китайского дешевого смартфона трехлетней (!) давности. Такой подход сработает в единственном случае: если модели на Sailfish будут закупаться за бюджетные деньги, после чего раздаваться государственным служащим нижнего звена. Разумеется, о какой-то там безопасности при таком подходе думать участникам сделки совсем не интересно.
И даже наличие государственных сертификатов не дает никакой гарантии точно так же, как ее не дает открытый исходный код. К примеру, уязвимость Heartbeat была обнаружена в прошивках роутеров, исходный код для которых был в открытом доступе более десяти лет. В операционной системе Android, которая также обладает открытым исходным кодом, новые уязвимости обнаруживаются регулярно.
Экзотические ОС — это отсутствие инфраструктуры, крайне ограниченный набор устройств и приложений, недоразвитые средства управления корпоративными политиками безопасности и более чем сомнительная безопасность.
Sailfish OS |
Samsung Tizen
Несколько особняком от остальных «экзотических» платформ стоит Samsung Tizen. В отличие от Ubuntu Touch и Sailfish, Tizen — вполне распространенная система. Под ее управлением работают десятки моделей умных телевизоров Samsung, а также умные часы и несколько бюджетных смартфонов (Samsung Z1–Z4).
Как только Tizen получила заметное распространение, за систему взялись независимые исследователи. Результат неутешителен: в первые же месяцы было найдено более сорока критических уязвимостей. Процитируем слова Амихая Нейдермана, который провел исследование безопасности Tizen:
Возможно, это худший код из тех, что мне довелось видеть. Все ошибки, которые можно было допустить, были допущены. Очевидно, что код писал или проверял кто-то, кто ничего не понимает в безопасности. Это все равно что попросить школьника написать для вас программное обеспечение.
В целом вывод понятен: использовать экзотическую, малораспространенную систему в корпоративной среде — открытое приглашение для хакеров.
Apple iOS
Apple мы будем хвалить. Да, это закрытая экосистема, и да, ценник несопоставим с техническими возможностями, но тем не менее устройства под управлением iOS были и остаются самыми безопасными из распространенных коммерческих решений. В основном это касается текущих моделей поколений iPhone 6s и 7 (и, пожалуй, SE).
Более старые устройства обладают меньшим запасом прочности. Для стареньких iPhone 5c, 5s и 6 уже есть способы разблокирования загрузчика и атаки на пароль устройства (за подробностями можно обратиться к разработчикам — компании Cellebrite). Но даже для этих устаревших устройств взлом загрузчика — дело трудоемкое и весьма недешевое (в Cellebrite просят за услугу несколько тысяч долларов). Думаю, мой или твой телефон никто таким способом ломать не станет.
Итак, что мы имеем на сегодняшний день. Начнем с физической безопасности.
- Все iPhone и iPad iOS 8.0 и выше (а в настоящий момент актуальна iOS 10.3.2, которая еще более безопасна) применяют настолько стойкие методы защиты, что даже их производитель как официально, так и фактически отказывается извлекать информацию из заблокированных устройств. Независимые исследования (в том числе в лаборатории «Элкомсофт») подтверждают заявления Apple.
- В iOS предусмотрена (и действительно работает) система защиты данных в случае кражи или потери устройства. Доступны механизмы удаленного стирания данных и блокировки устройства. Украденное устройство невозможно будет разблокировать и перепродать, если злоумышленнику неизвестны как пароль на устройство, так и отдельный пароль от учетной записи Apple ID владельца. (Впрочем, китайским умельцам доступно все, и вмешательство в аппаратную часть устройства способно обойти эту защиту... для iPhone 5s и более старых устройств.)
- Многоуровневое шифрование данных «из коробки» идеально спроектировано и реализовано. Раздел данных шифруется всегда; используется блочный шифр с ключами, уникальными для каждого отдельного блока, при этом при удалении файла соответствующие ключи удаляются — а значит, восстановить удаленные данные в принципе невозможно. Ключи защищены выделенным сопроцессором, входящим в систему Secure Enclave, и вытащить их оттуда нельзя даже с jailbreak (мы пробовали). Данные при включении остаются зашифрованными, пока ты не введешь правильный пароль. Более того, некоторые данные (например, пароли к веб-сайтам, скачанная на устройство электронная почта) дополнительно шифруются в защищенном хранилище Keychain, причем часть из них невозможно извлечь даже с джейлбрейком.
- Ты не можешь просто воткнуть в компьютер iPhone и скачать с него данные (кроме фотографий). В iOS предусмотрена возможность установления доверительных отношений с компьютерами. При этом создается пара криптографических ключей, позволяющих доверенному компьютеру делать с телефона резервные копии. Но даже эту возможность можно ограничить с помощью корпоративной политики безопасности или фирменным приложением Apple Configurator. Безопасность бэкапов обеспечивается возможностью установить сложный пароль (пароль требуется исключительно для восстановления данных из резервной копии, поэтому в режиме повседневного использования мешаться не будет).
-
Разблокировка iPhone сделана на достаточно безопасном уровне. Для разблокировки можно использовать как стандартный PIN-код из четырех цифр, так и более сложный пароль. Единственный дополнительный способ разблокирования устройства — отпечаток пальца. При этом реализация механизма такова, что у злоумышленника будет очень мало возможностей им воспользоваться. Данные отпечатка зашифрованы и будут удалены из оперативной памяти устройства после выключения или перезагрузки; через некоторое время, если устройство ни разу не разблокировалось; после пяти неудачных попыток; через некоторое время, если пользователь ни разу не вводил пароль для разблокировки устройства.
PIN-код или датчик отпечатков — решать тебе -
В iOS есть опция, позволяющая автоматически удалять данные после десяти неудачных попыток входа. В отличие от BlackBerry 10, эта опция контролируется на уровне операционной системы; для старых версий iOS (вплоть до iOS 8.2) существуют способы ее обойти.
В iOS можно ограничить запуск приложений отдельным паролем
Что у нас со слежкой за пользователем и с утечками?
В iOS есть отключаемая синхронизация с облаком через собственный сервис Apple iCloud. В частности, в iCloud обычно сохраняются:
- резервные копии данных устройства;
- синхронизированные данные — журнал звонков, заметки, календари, пароли в iCloud Keychain;
- пароли и история посещения ресурсов в браузере Safari;
- фотографии и данные приложений.
Все виды облачной синхронизации в iOS можно отключить, просто выключив iCloud и деактивировав iCloud Drive. После этого никакие данные не будут передаваться на серверы Apple. Несмотря на то что некоторые механизмы работают не слишком интуитивно (как пример — для выключения синхронизации звонков нужно отключать iCloud Drive, вообще-то предназначенный для синхронизации файлов и фотографий), полное выключение облачных сервисов синхронизацию полностью же отключает.
Любые виды синхронизации можно отключить |
В iOS предусмотрен механизм для предотвращения слежки (система может представлять внешнему миру случайные идентификаторы модулей Wi-Fi и Bluetooth вместо фиксированных настоящих).
Хорошо, а как обстоят дела со зловредами? В iOS практически исключена возможность установки зловредного ПО. Единичные случаи были (через приложения, собранные с использованием взломанных инструментов для разработки), но они быстро локализовались и исправлялись. Даже тогда большого вреда причинить эти приложения не смогли: в iOS каждое приложение надежно изолировано как от самой системы, так и от других приложений с помощью песочницы.
Нужно отметить, что в iOS давным-давно был реализован гранулярный контроль за разрешениями приложений. Ты можешь по отдельности разрешить или запретить каждому приложению такие вещи, как возможность работы в фоновом режиме (в «чистом» Android такой возможности нет!), доступ к местоположению, уведомлениям и тому подобное. Наличие этих настроек позволяет эффективно ограничивать слежку со стороны приложений, которые сделали такую слежку своим основным бизнесом (это касается как приложений класса Facebook, так и игр наподобие Angry Birds).
Наконец, Apple регулярно обновляет iOS даже на старых устройствах, практически моментально (в сравнении с Android) исправляя найденные уязвимости. При этом обновления прилетают одновременно всем пользователям (снова «в отличие от»).
Что интересно, iOS начиная с 9-й версии защищена и от атак класса man in the middle с перехватом и подменой сертификата. И если в лаборатории «Элкомсофт» удалось отреверсить протокол бэкапов iCloud в 8-й версии системы, то в более новых ОС этого сделать не вышло по техническим причинам. С одной стороны, получаем гарантию безопасности передаваемых данных; с другой — у нас нет возможности достоверно убедиться в том, что на серверы не будет отправлена «лишняя» информация.
Продолжение доступно только участникам
Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее
Вариант 2. Открой один материал
Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя! Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.
Я уже участник «Xakep.ru»