Самая дырявая ОС. Сравниваем безопасность iOS, Windows, Android, Sailfish и Tizen. Часть 2

Самая дырявая ОС. Сравниваем безопасность iOS, Windows, Android, Sailfish и Tizen. Часть 2

netpost

Apple iOS

Apple мы будем хвалить. Да, это закрытая экосистема, и да, ценник несопоставим с техническими возможностями, но тем не менее устройства под управлением iOS были и остаются самыми безопасными из распространенных коммерческих решений. В основном это касается текущих моделей поколений iPhone 6s и 7 (и, пожалуй, SE).

Более старые устройства обладают меньшим запасом прочности. Для стареньких iPhone 5c, 5s и 6 уже есть способы разблокирования загрузчика и атаки на пароль устройства (за подробностями можно обратиться к разработчикам — компании Cellebrite). Но даже для этих устаревших устройств взлом загрузчика — дело трудоемкое и весьма недешевое (в Cellebrite просят за услугу несколько тысяч долларов). Думаю, мой или твой телефон никто таким способом ломать не станет.

Итак, что мы имеем на сегодняшний день. Начнем с физической безопасности.
  1. Все iPhone и iPad iOS 8.0 и выше (а в настоящий момент актуальна iOS 10.3.2, которая еще более безопасна) применяют настолько стойкие методы защиты, что даже их производитель как официально, так и фактически отказывается извлекать информацию из заблокированных устройств. Независимые исследования (в том числе в лаборатории «Элкомсофт») подтверждают заявления Apple.
  2. В iOS предусмотрена (и действительно работает) система защиты данных в случае кражи или потери устройства. Доступны механизмы удаленного стирания данных и блокировки устройства. Украденное устройство невозможно будет разблокировать и перепродать, если злоумышленнику неизвестны как пароль на устройство, так и отдельный пароль от учетной записи Apple ID владельца. (Впрочем, китайским умельцам доступно все, и вмешательство в аппаратную часть устройства способно обойти эту защиту… для iPhone 5s и более старых устройств.)
  3. Многоуровневое шифрование данных «из коробки» идеально спроектировано и реализовано. Раздел данных шифруется всегда; используется блочный шифр с ключами, уникальными для каждого отдельного блока, при этом при удалении файла соответствующие ключи удаляются — а значит, восстановить удаленные данные в принципе невозможно. Ключи защищены выделенным сопроцессором, входящим в систему Secure Enclave, и вытащить их оттуда нельзя даже с jailbreak (мы пробовали). Данные при включении остаются зашифрованными, пока ты не введешь правильный пароль. Более того, некоторые данные (например, пароли к веб-сайтам, скачанная на устройство электронная почта) дополнительно шифруются в защищенном хранилище Keychain, причем часть из них невозможно извлечь даже с джейлбрейком.
  4. Ты не можешь просто воткнуть в компьютер iPhone и скачать с него данные (кроме фотографий). В iOS предусмотрена возможность установления доверительных отношений с компьютерами. При этом создается пара криптографических ключей, позволяющих доверенному компьютеру делать с телефона резервные копии. Но даже эту возможность можно ограничить с помощью корпоративной политики безопасности или фирменным приложением Apple Configurator.
  5. Разблокировка 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 практически исключена возможность установки зловредного ПО. Единичные случаи были (через приложения, собранные с использованием взломанных инструментов для разработки), но они быстро локализовались и исправлялись. Даже тогда большого вреда причинить эти приложения не смогли: в iOS каждое приложение надежно изолировано как от самой системы, так и от других приложений с помощью песочницы.

Наконец, Apple регулярно обновляет iOS даже на старых устройствах, практически моментально (в сравнении с Android) исправляя найденные уязвимости. При этом обновления прилетают одновременно всем пользователям (снова «в отличие от»).

Что интересно, iOS начиная с 9-й версии защищена и от атак класса man in the middle с перехватом и подменой сертификата. И если в лаборатории «Элкомсофт» удалось отреверсить протокол бэкапов iCloud в 8-й версии системы, то в более новых ОС этого сделать не вышло по техническим причинам. С одной стороны, получаем гарантию безопасности передаваемых данных; с другой — у нас нет возможности достоверно убедиться в том, что на серверы не будет отправлена «лишняя» информация.


Логика подсказывает, что, если бы они были, ФБР не пришлось бы платить миллион долларов компании Cellebrite за взлом единственного iPhone 5c. Та же Cellebrite тщательно скрывает (в первую очередь — от Apple) информацию об уязвимостях, которые она использует для взлома загрузчика.

«Мы потратили полтора года, чтобы обнаружить эту уязвимость. У Apple займет полторы недели, чтобы ее устранить»

— дословная цитата представителя компании на конференции. На этом тему шапочек из фольги предлагаем закрыть.

В то же время Apple целиком и полностью контролирует собственную облачную инфраструктуру и готова выдавать данные из облака по запросу правоохранительных органов. А в облаке, между прочим, хранится довольно много интересного. Статистика о количестве удовлетворенных запросов полностью публична. С более подробной аналитикой можно ознакомиться на сайте «Элкомсофта».

Windows 10 Mobile

Android мы оставим на закуску :), а пока посмотрим на смартфоны под управлением Windows 10 Mobile. В первую очередь нам интересны, конечно же, флагманы производства самой Microsoft — это Lumia 950 и 950 XL. Дело в том, что эти устройства изначально разрабатывались именно для нужд корпоративных потребителей.

Интереснейшая особенность Windows 10 Mobile в том, что это единственная мобильная ОС, не основанная на той или иной версии UNIX. Собственный подход к проектированию ядра и самой системы, отличная оптимизация ОС и всего софта под ограниченный список поддерживаемых чипсетов помещают Windows 10 Mobile где-то посередине между полностью закрытой iOS и полностью открытым Android.

В ОС компании Microsoft есть возможность полнодискового шифрования (но, в отличие от Apple iOS, многоуровневая защита данных здесь отсутствует), которую, впрочем, можно включать и отключать по желанию пользователя (или сетевого администратора). Также можно настроить шифрование данных на внешних носителях (картах формата microSD, если они используются).

Разблокировка телефона возможна как с помощью традиционного PIN-кода, так и по биометрическому датчику — сканеру радужной оболочки глаза (только для моделей Lumia 950 и 950 XL). По скорости и удобству работы сканер радужки заметно уступает сканеру отпечатка пальца в устройствах iOS, да и в современных Android. Безопасность, впрочем, на уровне. В отличие от Android, в Windows 10 Mobile не предусмотрены и недопустимы небезопасные способы аутентификации.

Аутентификация по радужной оболочке включается в настройках
Слева: приложения с доступом к геоданным, справа: переключатель доступа к телефонии

Кстати, для Windows 10 Mobile существует аналог jailbreak, позволяющий получить эскалацию привилегий, доступ к редактированию реестра (он, к слову, практически не отличается от реестра «большой» Windows 10) и файловой системе. Устанавливать его не слишком просто, но все делается с помощью вполне штатных средств из режима для разработчиков: ни о какой эксплуатации уязвимостей речи не идет, способ давно известен и сохраняет работоспособность во всех версиях Windows 10 Mobile, включая обновление до Creators Update.

Плюс это или минус с точки зрения безопасности — сказать сложно; в конце концов, на разблокирование телефона или доступ к зашифрованным данным такой «взлом» никак не влияет (в отличие от jailbreak в iOS, с помощью которого успешно обходятся встроенные в систему механизмы безопасности).

Так же как и Apple, Microsoft собирает информацию о пользователях своих устройств. По объему данных и масштабу «слежки» компания снова посерединке между Apple и Google. В облаке Microsoft OneDrive телефоны создают резервные копии (в том числе данные приложений), синхронизируют звонки и SMS (а вот iOS синхронизирует только звонки, но не сообщения). Также синхронизируются пароли и история браузера.

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

Сервис защиты от кражи и удаленного блокирования устройства Find My Phone есть, но вот сервис, аналогичный iCloud Lock (Apple) или Factory Reset Protection (Google), доступен исключительно в моделях, выпущенных для американского рынка.



Google Android

Наконец-то мы дошли до Android. Про безопасность в Android написаны десятки тысяч статей и сотни книг. Разумеется, мы не будем пытаться объять необъятное; вместо этого попробуем окинуть взглядом экосистему в целом.

Скажем сразу: смартфоны на Android самые распространенные, но при этом наименее безопасные. Версии Android 4.4 и ниже можно назвать дырявым ведром, не слишком погрешив против истины. Критические уязвимости и зияющие бреши в безопасности были (и есть) в сборках 5.0–5.1.1. Минимально приемлемый уровень безопасности в Android был достигнут только с версией 6.0, причем только в тех устройствах, которые выходили с завода уже с Android 6.0 на борту. А вот в Android 7 (относительная доля которого до сих пор не перевалила за 8% устройств) физическая безопасность уже реализована вполне неплохо.

Называя Android дырявым ведром, нельзя не уточнить, что по абсолютному числу найденных уязвимостей iOS далеко впереди. Однако если Apple исправляет уязвимости и выпускает обновление в течение двух-трех недель, то уязвимости, найденные в Android, будут исправлены в «сферическом коне в вакууме», полумифическом AOSP. Обычные же пользователи могут получить их вместе с ежемесячным обновлением безопасности (только для актуальных флагманов у избранных производителей), получить через полгода-год или не получить никогда. Диаграмма распространенности разных версий Android намекает, что актуальные патчи безопасности своевременно поступят к от силы 7% пользователей.

В случае с Android значение имеет не только какая версия системы установлена, но и с какой версией устройство вышло с завода. Так, Android 6.0 «из коробки» по умолчанию шифрует раздел с пользовательскими данными, но смартфонов, обновившихся до Android 6 по воздуху, это не коснется.

Сколько телефонов с Android зашифровано?

На Google I/O сообщили, что порядка 80% устройств под управлением Android 7 и порядка 25% под управлением Android 6 зашифрованы. Что это означает на практике? Сравним распространенность версий Android с данными о шифровании:

  • Android 5.1.1 и более старые: ~62% рынка (данных о шифровании нет);
  • Android 6: 0,31 (31% рынка) * 0,25 = 0,078;
  • Android 7: 0,07 (7% рынка) * 0,80 = 0,056.

Итого получаем цифру в 13,4%. Это — число устройств на Android, которые точно зашифрованы. Основная заслуга здесь принадлежит Google, которая заставила производителей устройств, выходящих с Android 6 или 7 на борту, обязательно активировать шифрование. Данных о шифровании более старых версий нет, но можно предположить, что их пользователи не горят желанием замедлять работу устройства, включив опциональное шифрование. С учетом этого вряд ли конечная цифра зашифрованных «Андроидов» превысит 15%.

Несмотря на то что Android, как и iOS, запускает приложения в песочницах, тут гораздо больше свободы. Приложения могут вмешиваться в работу других приложений (в первую очередь это разнообразные службы Accessibility, которые могут даже нажимать кнопки, и сторонние клавиатуры, которые автоматически получают возможность шпионить за пользователем). 

А разблокирование смартфона? Казалось бы, простейшее действие, которое невозможно испортить… Но нет, разработчики Android (именно Android AOSP) смогли.
В Android встречаются любые, самые небезопасные способы аутентификации. Например, Smart Lock — автоматическое разблокирование телефона по местоположению (представь ситуацию, в которой ФБР не приходится платить миллион долларов за взлом iPhone 5c — вместо этого агент просто дошел до дома подозреваемого). Или разблокирование при соединении с доверенным Bluetooth-устройством (агент включает трекер активности или магнитолу в машине подозреваемого). Вот Вам и профит :)

Любые виды разблокировки на твой вкус

Большой Брат следит за тобой

Google собирает огромное количество информации о пользователях Android. Ее детальность и проработка просто фантастические: ты можешь подробно увидеть, где ты был и что делал в такое-то время такого-то числа за последние шесть лет. Что характерно, Google знает не только где ты был в терминах географических координат, но и в каком месте ты побывал. Гостиница, ресторан, боулинг, театр, парк — Google видит твои координаты и соотносит их с местоположением других пользователей (а их — миллиарды). Результат — компании известно все вплоть до того, сколько времени ты просидел за столиком в ресторане в ожидании первого блюда.

Скажешь, я сгущаю краски? Ничуточки. Мы уже писали о том, что собирает Google и как до этой информации добраться.

Google знает о тебе больше тебя

Само собой разумеется, в Google есть статистика запуска и использования приложений, история браузера и поисковых запросов, логины и пароли Chrome, слова, которые вводились с клавиатуры Gboard, голосовые запросы, просмотренные на YouTube ролики и многое, многое другое.

Лишь часть того, что собирает Google

Использование сервисного режима для кражи данных не оставляет следов. Защититься от кражи информации через сервисный режим довольно просто: достаточно включить шифрование данных (при этом рекомендуется Android 6.0 или выше, но даже в Android 5 шифрование уже вполне надежно).


В Android просто не существует какой-то общей модели безопасности, которая могла бы обезопасить устройство и данные пользователя на всех уровнях. Можно включить KNOX, можно выбрать телефон с доверенной загрузкой… но все это не помешает самому пользователю установить какое-нибудь приложение, которое воспользуется «особенностями» Android (например, Overlay и Accessibility) для автоматической установки опасных зловредов, и те, снова используя уязвимости системы, попытаются получить root-доступ и прописаться в системном разделе.

Стоит отметить, что, хотя автор прав в том, смартфон на какой ОС более уязвим к взлому, следует иметь в виду, что речь именно о смартфонах, но не об Android как операционной системе. Да, Android заслужил славу дырявой операционки и рассадника вирусов, но если вдуматься: а что есть Android?
Это то, что установлено на смартфонах LG или Samsung, те самые сильно модифицированные операционки, которые кажутся совсем не похожими на «голый» Android? Это прошивки менее распространенных брендов, которые устанавливаются на смартфоны, годами не получающие обновлений? Или, может быть, это что-то другое?

Технически ОС Android — это то, что Google в форме исходников выкладывает во всеобщий доступ в рамках проекта AOSP. Это тот самый чистый Android, который компания предустанавливает на смартфоны Nexus и, в слегка измененном виде, на смартфоны Pixel. Все остальные прошивки, сильно и не очень сильно модифицированные, в терминах open source называются форками. По сути это уже нечто другое, но все это тем не менее принято называть общим именем Android.

Можно ли сделать Android действительно безопасным?

Если телефоном пользуется ребенок, бабушка или человек, который увлекается чем угодно, только не вопросами безопасности мобильных операционных систем, — нет. В их руках телефон на Android никогда не будет безопасным, даже если это Samsung с активированным KNOX или BlackBerry с последним патчем безопасности. Причина? Слишком много зловредов и слишком большая для среднего пользователя степень свободы, позволяющая убрать «мешающие» средства безопасности, отключить шифрование на этапе загрузки, активировать установку приложений из сторонних источников и проделать массу других глупостей, которые тебе даже трудно вообразить.

Если же устройство дать в руки специалисту и устройство это — актуальный флагман одного из избранных производителей, не пренебрегающих ежемесячными патчами безопасности, то при должной настройке (запрет Smart Lock, шифрование с обязательным запросом пароля для дальнейшей загрузки устройства, — не путать с PIN-кодом разблокировки! — использование административной политики, жестко запрещающей установку из сторонних источников, запрет оверлеев и сервисов Accessibility, постоянный контроль за тем, какую информацию мы разрешаем о себе собирать и кому именно) для обычного пользователя вполне сойдет.
Впрочем, чиновники, президенты, террористы и преступники все равно не будут так рисковать; их выбор до сих пор — BlackBerry 10 или iOS.

Заключение

Если расставить системы по уровню безопасности, то ряд будет выглядеть следующим образом:

  • Apple iOS (iPhone SE, 6s/7),
  • Windows 10 Mobile (Lumia 950 и 950 XL),
  • Android (лучше всего дела обстоят у свежих флагманов Samsung, BlackBerry и других крупных производителей;

Хуже всего — у бюджетных моделей китайских производителей, с полным спектром решений между этими крайностями). Что из этого стоит брать? Все зависит от твоих приоритетов. Для большинства пользователей будет вполне достаточно того невысокого уровня безопасности, который предлагает Android, — разумеется, при условии, что у тебя установлен PIN-код и включен датчик отпечатков пальцев (но только если стоит Android 6.0 или выше и только если он сертифицирован Google); если нет root и заблокирован загрузчик; если активировано полнодисковое шифрование и выключены небезопасные способы аутентификации Smart Lock; если… Впрочем, это перечисление уже тянет на отдельную статью.

В случае с Apple все намного проще: свежие флагманы под управлением свежих версий iOS безопасны, но если ты озабочен приватностью своих данных — отключи облако. Больше ничего делать не нужно.

«Неуловимые Джо» (Sailfish, Tizen, Ubuntu Touch и прочая экзотика) небезопасны до тех пор, пока не будет доказано обратное. Про Tizen выводы уже сделаны, Sailfish — на очереди.

Выражаем благодарность Nopaywall: https://justpaste.it/1f5b5

Report Page