LINUX.ORG.RU
ФорумMobile

Android, зонды, безопасность, СПО, паранойя

 , , , ,


112

33

Disclaimer1: Проблема с данным маном в том, что местной аудитории, например, плевать на ведроид, а тому же 4pda наплевать на фанатичный СПО и избавление от зондов. Рискнем и запостим здесь.

Disclaimer2: Все описанное является суммой наклопленного мной опыта вперемешку с моим личным мнением. Пишите комменты, будем улучшать-дополнять-чинить

Уровень прошивки

Практически все стоковые прошивки на сегодняшний день идут с gapps (Google Apps). Что же это за зверь:

  • Любое приложение (даже не требуещее никаких прав) может с ним общаться.
  • Gapps имеют доступ к сети.
  • Gapps позволяют Google в любой момент установить/удалить с вашего телефона любое приложение.
  • Gapps постоянно держат открытое сетевое соединение с серверами гугла (для нужд push-нотификаций).
  • Gapps — нереальное огромное количество кода. Стоковый образ (если верить opengapps) будет весить около 700Мб.

ААААА, как это удолить этот рассадник потенциальных уязвимостей и жора батарейки?

Сложный вопрос, на самом деле. Есть три варианта действий:

  • Новый и простой, и профитный способ. Появилась прошивка «LingeageOS for microG». Если ваше устройство поддерживает её, просто ставьте её и наслаждайтесь. Fdroid+MicroG+пуши+signature spoofing+unlp+OTA-обновления из коробки
  • Самый простой способ. Если ваш андроид достаточно старый (на достаточно новом не удастся отключить самый главный компонент gapps), из Настройки->Приложения отключите все, связанное с Google (особенно, Google Service Frameworks):
    • root не требуется;
    • push-уведомления работать не будут;
    • на устройстве останется огромная и потенциальная куча гугловского дерьма, хоть и менее активная.
  • Способ посложнее. Накатываем root и вручную удаляем все пакеты и библиотеки, требуемые гуглу:
    • требуется root и разблокировка загрузчика;
    • минимальное количество зондов без смены прошивку на полностью опенсорсную;
    • увы, в последних версиях андроида вам, скорее всего, придется оставить несколько пакетов (вроде GoogleSetupWizard), иначе система не загрузится.
  • Самый профитный способ. Ставим альтернативную прошивку (или мотаем до следующей секции и покупаем устройство с пгавославной прошивкой без зондов из коробки). Наслаждаемся.
    • Требуется root, разблокировка загрузчика, шаманство и местами смена устройства.

Я тут начал наслаждаться, но вдруг понадобились пуши, да и Uber требует зонды. Что делать?

Вдоль

Попробовать поставить MicroG, свободную реализацию клиентской части гуглозондов. Самая больная часть: помимо собственно MicroG вам нужно будет запилить себе Signature Spoofing. Коротко говоря, это обход защитного механизма, не позволяющего прикидываться gapps'ами кому попало. Для этого необходимо либо патчить прошивку при помощи Xposed/Needle/Haystack, либо использовать совместимую прошивку (смотрите список, по ссылке, их стало очень много). Все подробности по той ссылке.

MicroG позволяет завести пуши, сервисы геолокации (со множеством бекендов, ищите nlp location backend в f-droid) и большое количество софта (когда я в последний раз тыкал, работали даже покемоны).

Уровень софта

Без гуглозондов жить есть!

https://f-droid.org/ — каталог с опенсорсным софтом.

Предлагаю вам следующий список приложений, способный заменить типичный набор проприетари из типичной вендорской прошивки. Аналогичный список: https://github.com/Datenschutz/awesome-FOSS-apps

  • Yalp store. Позволяет ставить приложения из Google Play (да, иногда это все-таки нужно), в том числе через общий аккаунт. Не требует зондов.
    • Позволяет так же выкачивать купленные приложения (но не факт, что они заработают: они при работе могут проверять лиценизию через gapps, возможно, тут может помочь microg).
    • Альтернативно, воспользуйтесь моим решением для выкачивания софта прямо в свой репозиторий f-droid.
  • K-9 Mail. Почтовый клиент.
  • DAVDroid. Синхронизация контактов с owncloud/nextcloud.
  • Gadgetbridge. Синхронизация с умными часами и браслетами (pebble, mi band и некоторые другие)
  • NewPipe. Клиент для YouTube. Умеет воспроизводить видео в фоновом режиме как музыку, загружать файлы.
  • Odyssey. Просто материальный музыкальный плеер, но в последнее время очень нужный, т.к. вендоры повадились заменять в прошивке плеер на Google Music.
  • Набор простых и красивых затычек для различных приложений — simple mobile tools.
  • Файрволл AFWall+ файрволл (имеет Xposed модуль для расширения возможностей)
  • Amplify Battery Extender.
  • DNS66.
  • KDE Connect.
  • OpenKeychain.
  • OpenVPN FOSS.
  • Картография и навигация: Maps.Me (приз симпатий от комментаторов), OsmAnd (приз глюкалова от меня, но щито поделать).
  • Список стал очень жирным. Пока новые элементы не добавляю, думаю над критериями включения в него софта.

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

  • Желательно зайти в настройки приложения и вручную запретить доступ ко всем ненужным разрешениям, дабы не промахнуться в нужный момент.
  • Отключите приложению фоновый доступ к сети (если у вас свежий Android) или вообще доступ к сети (если у вас стоит файрволл).
  • Малвари вроде «Сбербанк Онлайн» вообще лучше создать отдельный аккаунт на телефоне.
  • Яндексовским приложениям нельзя давать доступ к местоположению. Вообще никаким — все сливают.
  • Проприетарь может читать названия аккаунтов, даже не принадлежащих ей. Называйте их максимально обще, т.е. вместо «sportloto@syncserver.com» делайте «contacts sync».

Права суперпользователя

Читая васянский 4pda вы часто можете увидеть «ну и накатываем SuperSU.zip». Не делайте этого. Есть прекрасный опенсорсный superuser, совместимый со свежими ведроидами. Нужно лишь поставить zip (используйте beta на android >=6) и apk.

Если ваша прошивка основана на LineageOS, то все еще проще. Где-то рядом с загрузками в директории extra должен валяться zip, включающий встроенные и интегрированные в прошивку права суперпользователя. Профит.

XPosed

XPosed — опенсорсный фреймворк для низкоуровневых хаков.

  • Не доступен для свежих андроидов.
  • Позволяет заставить не увидеть root всякие «Сбербанки Онлайн».
  • Имеет кучу некрофильских и неопенсорсных модулей. Осторожнее.
  • Легким движением руки может окирпичить прошивку.
  • Полезные модули:
    • PlayPermissionsExposed
    • YouTubeAdAway (но все-таки советую использовать NewPipe, LightTube, WebTube, SkyTube или MiniTube. Тысячи их!)
    • XPrivacy — по своей сути это «песочница» для любого, даже системного, ПО. Xprivacy применяет правила ко всему ПО. Эти правила можно создавать самому или качать готовые. То есть, к примеру, если установлено нечто местами полезное, но попутно показывающее свою рекламу, Xprivacy можно просто запретить этому ПО доступ в сеть. Или если очередная косынка хочет интернет, список контактов, доступ к микрофону и камере, то с Xprivacy это легко и просто запрещается конкретно этой гадости и она даже будет при этом работать не имея доступа к тому, что ей будет запрещено.

Уровень устройства

Тут тоже всё плохо. Выбор:

  • Рандомный флагман с хорошей поддержкой LineageOS (CyanogenMod). Поддержка, вероятно, будет хорошей, секьюрити-апдейты будут приходить долго (например, для htc desire hd цианоген обновлялся до самого конца — декабря 2016 года), но вот версия андроида, скорее всего, застрянет. Обычно дорого. Можно искать по списку официально поддерживаемых линейкой устройств.
  • OneplusOne / Wileyfox Swift 1. Поставлялись с CyanogenOS, имеют хорошее коммьюнити разработчиков, будут долго обновляться в софтовой части. В железной — все плохо. 1+1 уже довольно старый и хорошие запчасти купить сложно. Wileyfox изначально имел несколько проблем, в т.ч. слабенькую батарейку. Компенсируется ценой, местами можно найти новое в продаже. Довольно бюджетно.
  • Fairphone 2. Очень дорого, очень хорошо. Но это в теории, как там на практике — хз, не пользовался, отпишитесь.
  • Рандомный телефон с официальным портом los. Сойдет, главное, чтобы фатальных багов в порте не было. Долгой жизни порта не ждите.
  • Рандомный телефон с васянским los. Совсем плохо, но если телефон уже куплен, ничего не поделать.
  • Рандомный телефон с васянским ведроидом, основанным на стоковой прошивке / без исходников / проч. Лучше такое не ставить, а подготовить прошивку самостоятельно, смотрите выше и ниже.

Следует также заметить, что:

  • Существует несколько устройств с CyanogenOS, без доступной Cyanogenmod. В комплекте идут сервисы microsoft, gapps и много разной другой блотвари. Исходники обычно зажабены. Пример устройств: Wileyfox Spark, Wileyfox Swift 2(|+|x).
  • Выбирая устройство, так же загляните на его страничку на 4pda. Ресурс хоть и васянский, но очень полезный: можно увидеть список доступных прошивок, FAQ по типичным проблемом, список самых вероятных заводских проблем (которые можно проверить еще перед покупкой).

Уровень физической безопасности

Для чего нужна физическая безопасность:

Допустим, ваш девайс попал в руки злоумышленнику.

  • Во-первых, вы хотите, чтобы он не имел никакой возможности прочитать важные файлы с вашего телефона (кейз ФБ-1).
  • Во-вторых, вы хотите узнать, не добавил ли он кейлоггеров в ваш загрузчик (кейз ФБ-2).

Сразу скажу: всё плохо. Вам может показаться, что заботливые производители позаботились о вас, залочив загрузчик вашего телефона и не позволяя его разблокировать, не удалив все данные с телефона.

Я бы на вашем месте на это не рассчитывал.

  • Аппаратные защиты часто не надежны и опираются на принципах безопасности через неясность, в них переодически находят уязвимости
  • На прекрасных, казалось бы, телефонах Xiaomi вы не сможете разблокировать загрузчик, если с Xiaomi что-либо случится: разблокировка производится с участием интернета при помощи (работающей только под Windows) программы, требующей их аккаунта и доступа к интернету. У HTC похожая ситуация, но в несколько более мягких условиях.
    • Скорее всего, это доставит неудобств именно вам, а не злоумышленнику
  • Всякие проприетарные системы полнодискового шифрования тоже не выдерживают проверок специалистами.

Выводы:

  • Для хранения ваших секретных файлов в безопасности от ФБ-1 используйте, к примеру, Secrecy.
  • «Таблеток» от ФБ-2 на сегодняшний день нет. Промбируйте телефон при помощи скотча и волос и не расставайтесь с ним.
  • Лучше все-таки не хранить никакие важные данные на телефоне.

Модули сотовой связи

В каждом мобильном телефоне, почти каждом планшете есть GSM-модуль мобильной связи. Это —

  • Фактически отдельное устройство, обычно имеющее максимальный доступ к процессору, памяти и переферии. Зачем это делают — черт знает. Возможны исключения, нужно уточнять в каждом отдельном случае.
  • Идентифиционный модуль, который постоянно разговаривает с воздухом.
  • Куча проприетарного кода, который никто не анализировал. В тех немногих случаях, когда анализировали — находили кучу всего интересного.
  • Работает это все на протоколах, местами разработанные в 80-х годах.

Так что тут все настолько плохо, что я даже предложить ничего не могу. Страдайте.

Вроде, все, что хотел сказать. Выдыхаю

★★★★★

Последнее исправление: derlafff (всего исправлений: 24)

Ответ на: комментарий от SjZ

Кто против то? Всё параллельно вроде.

Как же меня заколебали любители помесить слова.

Я сказал «почти каждое устройство идет с gapps». Это так, ибо устройств вроде meizu относительно 2млрд зарегистрированных устройств с gapps — меньше 1 на 100. Т.е. действительно почти каждое. Какие блин претензии?

И что? Уязвимости есть в любом софте, а в открытом тем более.

Тем не менее, закрытые куски, работающие с повышенными привелегиями — более лакомый кусочек. И заменить такой большой закрытый кусок на маленький открытый с точки зрения безопасности полезно.

Конкретные примеры будут?

https://www.opennet.ru/opennews/art.shtml?num=33894

Ну начнем с того, что если ты купишь сегодняшний флагман, например S8 или One Plus 5, то хватит тебе его явно больше чем на 2 года. Во вторых что мешает даже через 2 года продать сегодняшний флагман, добавить денег и купить новый актуальный девайс?

А вот нифига. Запчасти перестают продавать (даже гребаные крышки для 1+1 сейчас найти только в б/у состоянии за 12 тысяч), и, главное — прошивку нормально не обновляют (тут 1+1 справляется только потому что циан полностью открыли. 1+5 не справится).

derlafff ★★★★★
() автор топика
Ответ на: комментарий от derlafff

Тем не менее, закрытые куски, работающие с повышенными привелегиями — более лакомый кусочек. И заменить такой большой закрытый кусок на маленький открытый с точки зрения безопасности полезно. https://www.opennet.ru/opennews/art.shtml?num=33894

Неверно. Безопасность так работает только на диване. Решает не открытость/закрытость компонентов, а пионерность разработчика.

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

А по поводу примеров теоретиков всегда есть два пункта для оценки: практический вектор эксплуатации и пострадавшие. Если они не проявляются, то это диванная теоретика.

PS: олсо, мне больше всего понравилось вот это https://habrahabr.ru/post/239213/

fornlr ★★★★★
()
Последнее исправление: fornlr (всего исправлений: 2)
Ответ на: комментарий от derlafff

больше чем на 2 года

А вот нифига. Запчасти перестают продавать (даже гребаные крышки для 1+1

Этому желтоэкранному уже три года с небольшим. Это конечно больше чем два года, но это уже слишком для переносимого устройства.

fornlr ★★★★★
()
Ответ на: комментарий от fornlr

Тем не менее, для него есть убунта от ubports, а для твоего непионерского bq — нет :} почувствуй силу сообщества

derlafff ★★★★★
() автор топика
Ответ на: комментарий от derlafff

с точки зрения безопасности полезно

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

https://www.opennet.ru/opennews/art.shtml?num=33894
поставляемом с прошивкой на базе Android 2.3.4

xD Плезз, хотя бы годовалой давности новость, хотя бы!

даже гребаные крышки для 1+1 сейчас найти только в б/у состоянии за 12 тысяч

Вы что там с ними делаете с этими крышками все? Как ее можно угрохать вообще?

главное — прошивку нормально не обновляют

И что? 6.0 вышла уже очень давно и я еще не видел приложения которое бы не работало на ней, те что сейчас выйдут с 7.1 будут актуальны минимум еще лет 5 без необходимости что-то обновлять, каких-то особых фич самой системы со времен 6.0 и не появилось.

1+5 не справится

Думаю на новый snapdragon всё будет выходить, это ж всё только от железки зависит.

SjZ ★★★★★
()

На васянском 4pda наткнулся на пост о том что якобы пуши гапсов сообщения почтовых сервисов прогоняют через гугловские сервера. Это вообще как-то связано?

Grantrol
()
Ответ на: комментарий от Grantrol

Что с чем? Что за бред?

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

fornlr ★★★★★
()
Последнее исправление: fornlr (всего исправлений: 1)
Ответ на: комментарий от Grantrol

Через те же сервера. Но, при этом всякие GOOGLE_DEVICE_ID генерируются более анонимно. Степень проникновения не такая, но гугл имеет ко всему доступ, да.

derlafff ★★★★★
() автор топика
Ответ на: комментарий от derlafff

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

Grantrol
()
Ответ на: комментарий от Grantrol

Приложение уже имеет свой идентификатор. На сервера оно отправляет ID устройства.

VladKN
()
Ответ на: комментарий от aquadon

И как рулить отдельными приложениями через iptables? Интересует способ чтобы AFWall+ в памяти не висел.

Grantrol
()
22 августа 2017 г.
Ответ на: комментарий от Singularity

На 7 вроде есть бета xposed, модули пока работают не все но xprivacy вроде завёлся и работает

gnobitel
()

Почему бы не добавить информацию по подключению андроида к впн? Мне вот интересно можно ли штатным средствами линукса, без использования васянских программ, подключить девайс через openvpn? С включенным впн через настройки андроида через l2tp у меня на CM12 частые ребуты. Где можно логи нарыть чтобы выявить причину ребутов?

Grantrol
()
Ответ на: комментарий от Grantrol

Совсем не васянское FOSS приложение OpenVPN с F-Droid

https://f-droid.org/packages/de.blinkt.openvpn/

подхватывает конфигурационные файлы и создает туннели, используя API Android. Root не требуется.

штатным средствами линукса

Думаю, что разумнее задействовать API, а не колхозить. Android - не GNU/Linux.

aquadon ★★★★★
()
Последнее исправление: aquadon (всего исправлений: 2)

Вот знаешь, перешёл я таки на LinageOS и твой этот F-Droid. И теперь вот интересно, а почему в репах софт такой древний? Думаю - ну, попробую для начала обойтись встроенными возможностями без всяких гаппсов. Думаю, во что поиграть - ставлю эмулятор nes и ppsspp, раз уж они там есть. И блин, эмуль псп там версии 1.1.1(!) вместо 1.4.2(!) на офф сайте. ТАм так со всем софтом дело обстоит плохо?

fehhner ★★★★★
()
Ответ на: комментарий от fehhner

И блин, эмуль псп там версии 1.1.1(!) вместо 1.4.2(!) на офф сайте. ТАм так со всем софтом дело обстоит плохо?

На F-Droid попадают только версии которые прошли проверку и 100% соответствуют критериям F-Droid.

На оф.сайте же могут быть версии и посвежее, но никто не даст гарантии отсутсвия встроенных бекдоров и сборщиков статистики в сборках на оф.сайтах.

В сборках на F-Droid и мейнтейнеры долго и нудно вычитывают код каждого релизп перед тем как аппрувят его сборку.

Так что выбирай - или самые свежие версии (но возможно со встроенными блобами, бекдорами, сборщиками статистики и т.д.) с офсайта, или же не самые свежые версии (но зато проверенные на отсутствие зондов) с репы F-Droid

atsym ★★★★★
()
Последнее исправление: atsym (всего исправлений: 1)

Сука, такой tl/dr, что я лучше оставлю зонд. Он приятный. Массирует предстательную железу.

no-such-file ★★★★★
()
Последнее исправление: no-such-file (всего исправлений: 1)

Удалил Google Apps.

Относительно ничего. Отвалились «Спасибо от сбербанка», и «Яндекс карты».

Причем «Мобилбный Сбербанк» и «Яндекс Транспорт» нет - странно. Вроде бы по принципу очень похожие приложения и от одинаковых производителей.

fornlr ★★★★★
()
Ответ на: комментарий от fornlr

Яндекс-карты наверняка используют гугловский провайдер местоположения. Накати microg и unlp-провайдер (там есть клиент к яббловскому, специально для тебя)

derlafff ★★★★★
() автор топика
Ответ на: комментарий от fornlr

Короче, в мусорку этот ведройд.

Да, пожалуй. В очередной раз...
Я пока на sailfish перешёл, а если чёт из плазмы нормальное слепят - буду на ней.

fehhner ★★★★★
()

No more “Root” features in Orbot… use Orfox & VPN instead!

Since I first announced the available of Orbot: Tor for Android about 8 years ago (wow!), myself and others have been working on various methods in which to make the capabilities of Tor available through the operating system. This post is to announce that as of the next, imminent release, Orbot v15.5, we will no longer be supporting the Root-required “Transproxy” method. This is due to many reasons.

Детали – https://guardianproject.info/2017/10/27/no-more-root-features-in-orbot-use-or...

atsym ★★★★★
()

Amplify Battery Extender

В маркете и на xda есть новые версии, автор говорит, что опенсорц но на гитхабе только старые версии. Как это понимать?

tm4
()

Оффтоп. Масштаб исследований поражает. Ты книгу ещё не планируешь написать? Я б купил :)

router ★★★★★
()
30 января 2018 г.
Ответ на: комментарий от derlafff

У меня интересный вопрос! Почему в yalp store есть обновления приложения, когда в маркете обновлений нет?! Как обьяснить эту странность?

markgrant
()
Ответ на: комментарий от markgrant

Ничего не понял.

Там есть функция, которая позволяет выкатывать новое обновления не всей аудитории, а какой-то её части. 10%, например. Чтобы при новых багах можно было их оперативно чинить без массовой боли.

На фдроиде тоже нет обновлений.

Там вообще другой реп

derlafff ★★★★★
() автор топика
Последнее исправление: derlafff (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.