CopperheadOS

CopperheadOS — мобильная операционная система для смартфонов, основанная на мобильной платформе Android. Система добавляет функции конфиденциальности и безопасности к официальным выпускам Android Open Source Project от Google. Разработка осуществляется компанией Copperhead — канадской организацией в сфере информационной безопасности. Лицензируется по лицензии Creative Commons BY-NC-SA 4.0, однако её исходный код не доступен для свободного скачивания.

CopperheadOS официально поддерживает смартфоны из продуктовой линейки Pixel; другие устройства не поддерживаются для оптимизации ресурсов разработки. В системе реализованы дополнения безопасности, которые отсутствуют в стандартном Android, например, усиленная версия ядра Linux, а также возможность использования различных паролей для разблокировки устройства и для шифрования. Вместо магазина приложений Google Play по умолчанию используется F-Droid, что снижает риск установки вредоносных приложений.

Общие сведения
CopperheadOS
Изображение логотипа
Разработчик Copperhead
Семейство ОС Unix-подобные
Основана на Android
Исходный код проприетарный
Первый выпуск 2015
Последняя версия
Метод обновления через Интернет (OTA) или sideload-пакеты обновлений
Менеджеры пакетов APK (в комплекте F-Droid как фронтенд)
Лицензия CC BY-NC-SA 4.0
Состояние активное
Веб-сайт copperhead.co

История

Основание проекта и первые релизы

Проект CopperheadOS был запущен в 2014 году компанией Copperhead, базирующейся в Торонто, Канада. Компания основана в том же году Джеймсом Дональдсоном (CEO) и Дэниелом Микаем (CTO, ведущий разработчик), изначально работала с клиентами из юридической и разведывательной сфер Канады. В процессе работы основатели обратили внимание на отсутствие защищённых, открытых операционных систем для мобильных устройств и создали CopperheadOS под открытой лицензией, чтобы восполнить этот недостаток[2].

О развитии CopperheadOS было объявлено в апреле 2015 года. Согласно анонсу, ОС позиционировалась как «по умолчанию защищённая версия Android» для пользователей, обеспокоенных приватностью[3]. Изначально CopperheadOS распространялась под лицензией GNU General Public License, а разработки размещались на GitHub[4]. Компания Copperhead передала ряд исправлений и доработок, сделанных для CopperheadOS, в Android Open Source Project, основной проект Android от Google[5].

В августе 2015 года состоялся выпуск первой альфа-версии CopperheadOS[6]. На тот момент проект базировался на CyanogenMod, поддерживал Google Nexus 5 и Samsung Galaxy S4[7]. Затем в феврале 2016 появилась бета-версия с поддержкой Nexus 5, Nexus 9 и Nexus 5X, уже построенная напрямую на Android Open Source Project, без CyanogenMod, как и дальнейшие релизы. Отказ от CyanogenMod и отсутствие поддержки производителя привели к прекращению поддержки Samsung Galaxy S4[8]. В мае 2016 Copperhead запустила интернет-магазин, где можно было приобрести Nexus 5X с предустановленной CopperheadOS, а в июле того же года — Nexus 6P[9].

Изменение лицензии и уход Дэниела Микая

С октября 2016, начиная с версий CopperheadOS на базе Android 7.0 Nougat, проект перешёл на лицензию Creative Commons Attribution-NonCommercial-ShareAlike (BY-NC-SA)[10]. По словам Дональдсона, это было сделано для предотвращения несанкционированного использования кода другими компаниями без оплаты лицензии Copperhead, а также для обеспечения устойчивого развития проекта.

В марте 2017 Copperhead начала продавать смартфоны Google Pixel с предустановленной CopperheadOS[11], тогда как для устройств Nexus можно было бесплатно скачать и установить CopperheadOS самостоятельно[12]. Для моделей Pixel возможность самостоятельной установки не предусматривалась[13]. Пользователи могли купить телефон с CopperheadOS напрямую или отправить свой аппарат в Copperhead для установки. Это было сделано во избежание нарушений некоммерческой лицензии: конкуренты Copperhead продавали Nexus с CopperheadOS без коммерческой лицензии, и компания решила предотвратить такие случаи для Pixel[13]. В ноябре того же года сервер обновлений Nexus был временно отключён для предотвращения дальнейших нарушений, но вскоре возобновил работу[13].

В январе 2018 вышла альфа-версия CopperheadOS для Pixel 2 и Pixel 2 XL. Официальные релизы для этих моделей помечались как «для внутреннего использования» и были недоступны для широкого скачивания, в то время как для Nexus по-прежнему распространялись публичные релизы[14].

Разногласия между двумя основателями по вопросам ведения бизнеса обострились в первой половине 2018 года и в июне Микай был уволен Дональдсоном[15].[16] В ответ Микай опубликовал уведомление об увольнении на Reddit и удалил криптографические ключи, необходимые для выпуска обновлений[15].[17] По собственным словам, он считал, что «компания и инфраструктура скомпрометированы» и хотел «предотвратить возможный вред пользователям»[18]. В результате Copperhead несколько месяцев не выпускала обновлений[16]. Микай продолжил работу над открытыми частями CopperheadOS как проект Android Hardening, впоследствии переименованный в GrapheneOS[19]. По словам Дональдсона, по состоянию на февраль 2019 между ним и Микаем шёл судебный спор по этому инциденту[20].

Эпоха Android Pie и последующие события

Следующий релиз CopperheadOS после ухода Микая вышел в марте 2019, уже на базе Android Pie (9) — с поддержкой Pixel, Pixel XL, Pixel 2 и Pixel 2 XL. Устройства с предустановленной системой были доступны в магазине Copperhead[21]. В феврале 2020 появился вариант на Android 10 для Pixel 2 и Pixel 2 XL[22]. К июню 2020 исходники и образы CopperheadOS перестали быть доступны публично и выдаются только участникам партнёрской сети компании: причиной названы массовые нарушения некоммерческой лицензии[23].

В ноябре 2020 компания выпустила версию CopperheadOS на базе Android 11[24]. В феврале 2022 появилась версия на Android 12, в которой добавили поддержку Pixel 4a, Pixel 4a 5G, Pixel 5, Pixel 5a и Pixel 6[25]. В феврале 2023 проект добавил поддержку Pixel 6a и Pixel 7 с выходом обновления до Android 13[26].

Архитектура и компоненты

CopperheadOS нацелена на усиление безопасности Android и затруднение эксплуатации уязвимостей. Как отмечал CEO Copperhead Джеймс Дональдсон в интервью 2016 года, задача системы — «повысить ресурсоёмкость атак до уровня, когда атакующий попросту прекратит попытки»[2]. В систему внедрены многочисленные доработки безопасности по сравнению с «чистым» Android — например, исправления PaX для ядра Linux, что улучшает защиту от выполнения кода во временных областях памяти[8]. Также реализованы улучшенные механизмы адресного случайного размещения, специальная реализация malloc с дополнительной рандомизацией, более строгие политики SELinux[8].[27] Дополнительно реализована верификация загрузки (verified boot), защищающая от вредоносных вмешательств в процесс загрузки устройства[28].

Интерфейс и программное обеспечение

В отличие от стандартного Android, CopperheadOS разделяет пароли для разблокировки устройства и для шифрования: пользователь может задать простой пароль для разблокировки, но после пяти неверных вводов устройство перезагружается и требуется уже сложный пароль для расшифровки[8] В системе сразу установлен магазин F-Droid для установки открытых программ, а не Google Play Store, что снижает риск случайной установки вредоносных приложений.[2].

Пакетная база и обновления

CopperheadOS использует стандартный для Android формат установочных пакетов — APK. Для установки и обновления программ служит фронтенд F-Droid, стандартный магазин Android отсутствует. Обновления самой системы поступают «по воздуху» (OTA), их также можно устанавливать вручную через загрузчик.

Поддержка аппаратных платформ

Официально поддерживаются только смартфоны линейки Google Pixel для ускорения выпуска обновлений безопасности и распределения ресурсов команды[29]. По состоянию на сентябрь 2022 года поддерживались Pixel 3a, Pixel 3a XL, Pixel 4, Pixel 4 XL, Pixel 4a, Pixel 4a (5G), Pixel 5, Pixel 5a и Pixel 6[30].

История версий

Выпуски
Версия Дата Ветка/статус Ключевые изменения Примечания
Первая alpha август 2015 альфа Базируется на CyanogenMod, поддержка Nexus 5 и Galaxy S4 [6]
Бета февраль 2016 бета Переход на Android Open Source Project, поддержка Nexus 5, Nexus 9, Nexus 5X [8]
Android 7 (Nougat) октябрь 2016 стабильная Смена лицензии на CC BY-NC-SA, ограничение доступа к коду
Android 9 (Pie) март 2019 стабильная Поддержка Pixel, Pixel XL, Pixel 2, Pixel 2 XL [21]
Android 10 февраль 2020 стабильная Для Pixel 2, Pixel 2 XL [22]
Android 11 ноябрь 2020 стабильная Поддержка новых моделей Pixel [24]
Android 12 февраль 2022 стабильная Поддержка Pixel 4a, Pixel 4a 5G, Pixel 5, Pixel 5a, Pixel 6 [25]
Android 13 февраль 2023 стабильная Поддержка Pixel 6a, Pixel 7 [26]

Безопасность

CopperheadOS сфокусирована на усилении защиты ОС Android: система внедряет патчи PaX, улучшает рандомизацию памяти, реализует дополнительные меры на уровне SELinux и использует верифицированную загрузку (verified boot), что затрудняет захват устройства вредоносным ПО[27].[28]

Примечания

  1. https://copperhead.co/android/
  2. 1 2 3 Pauli, Darren Pre-rolled stripped, hardened Copperhead Androids hit Oz, NZ (англ.). The Register (13 декабря 2016). Дата обращения: 25 сентября 2020. Архивировано 25 сентября 2020 года.
  3. Copperhead OS: Secure Android ROM (англ.). Copperhead Limited (22 апреля 2015). Дата обращения: 23 сентября 2020. Архивировано 29 марта 2020 года.
  4. Schirrmacher, Dennis CopperheadOS: Alternatives System will Android sicherer machen (нем.). Heise (28 сентября 2015). Дата обращения: 23 сентября 2020. Архивировано 1 октября 2015 года.
  5. Armasu, Lucian Copperhead CTO: Nexus Phones Already More Secure Than BlackBerry Priv (англ.). Tom's Hardware (13 ноября 2015). Дата обращения: 26 сентября 2020.
  6. 1 2 CopperheadOS Alpha (англ.). Copperhead Limited (21 августа 2015). Дата обращения: 23 сентября 2020. Архивировано 29 марта 2020 года.
  7. Quiroli, Lorenzo La prima alpha di CopperheadOS, il firmware open-source sicuro (итал.). www.androidworld.it (8 сентября 2015). Архивировано 9 сентября 2015 года.
  8. 1 2 3 4 5 Corbet, Jonathan CopperheadOS: Securing the Android. lwn.net (17 февраля 2016). Дата обращения: 6 октября 2020.
  9. Chokkattu, Julian Copperhead is selling Google's Nexus devices with its pre-installed secure OS (англ.). www.digitaltrends.com (12 июля 2016). Дата обращения: 11 августа 2020.
  10. Zanolla, Irven Maru OS e Copperhead OS diventano open source (итал.) (27 августа 2016). Дата обращения: 26 сентября 2020. Архивировано 28 августа 2016 года.
  11. Sohail, Omar Google Pixel Is Available Running a New OS – More Secure But Also Very Expensive (англ.). Wccftech (6 марта 2017). Дата обращения: 28 сентября 2020. Архивировано 6 марта 2017 года.
  12. Google Pixel with CopperheadOS is Available for Purchase in the U.S. and Canada (англ.). xda-developers (6 марта 2017). Дата обращения: 25 августа 2020.
  13. 1 2 3 CopperheadOS Disables Nexus Update Server After Licensing Violations (англ.). xda-developers (12 ноября 2017). Дата обращения: 19 августа 2020.
  14. Wright, Arol CopperheadOS is Coming to the Google Pixel 2/2 XL (англ.). xda-developers (17 января 2018). Дата обращения: 25 августа 2020.
  15. 1 2 Perrone, Alessandro CopperheadOS potrebbe non avere un futuro (итал.). Tutto Android (12 июня 2018). Дата обращения: 29 сентября 2020.
  16. 1 2 De, Kingshuk The demise of CopperheadOS and rise of its successors (англ.). PiunikaWeb (5 февраля 2019). Дата обращения: 29 сентября 2020.
  17. Mocanu, Iulian CopperheadOS este mort (рум.) (18 июня 2018). Дата обращения: 29 сентября 2020.
  18. Puljek, Kristijan Raspao se CopperheadOS (хорв.). Mobil.hr (12 июня 2018). Дата обращения: 29 сентября 2020.
  19. Tremmel, Moritz; Grüner, Sebastian GrapheneOS: Ein gehärtetes Android ohne Google, bitte - Golem.de (нем.). www.golem.de. Дата обращения: 11 августа 2020.
  20. Ex-CopperheadOS dev spits fire as CEO says project not dead (англ.). PiunikaWeb (6 февраля 2019). Дата обращения: 26 августа 2020.
  21. 1 2 CopperheadOS' Android Pie update is now available for the Pixel & Pixel 2 (англ.). XDA Developers (28 марта 2019). Дата обращения: 19 августа 2020.
  22. 1 2 Naresh, Sagar CopperheadOS Android 10 update is now available (англ.). PiunikaWeb (17 февраля 2020). Дата обращения: 29 сентября 2020.
  23. Installation (англ.). Copperhead. Дата обращения: 4 октября 2020. Архивировано 15 июня 2020 года.
  24. 1 2 CopperheadOS Release: Android 11 (англ.). Copperhead (3 ноября 2020). Дата обращения: 25 сентября 2022. Архивировано 29 августа 2022 года.
  25. 1 2 CopperheadOS Pixel 5a, Pixel 5, Pixel 4a 5G available now (англ.). Copperhead (7 февраля 2022). Дата обращения: 25 сентября 2022. Архивировано 29 августа 2022 года.
  26. 1 2 CopperheadOS Android 13 - Copperhead (англ.). copperhead.co. Дата обращения: 22 марта 2023. Архивировано 19 мая 2022 года.
  27. 1 2 Porup, J. M. Copperhead OS: The startup that wants to solve Android's woeful security (англ.). Ars Technica (9 августа 2016). Дата обращения: 6 октября 2020.
  28. 1 2 Porup, J. M. Tor phone is antidote to Google "hostility" over Android, says developer (англ.). Ars Technica (22 ноября 2016). Дата обращения: 6 октября 2020.
  29. Balog, Tarus CopperheadOS: Security features, installing apps, and more (англ.). Opensource.com (29 января 2018). Дата обращения: 20 августа 2020.
  30. Device comparison (англ.). Copperhead. Дата обращения: 25 сентября 2022. Архивировано 8 мая 2022 года.

Ссылки