Плюсы и минусы рутирования с использованием приложений («Soft Root») по сравнению с другими методами («Hard Root»)


14

Существует довольно много методов рутирования на основе приложений. Недавний обзор 9 бесплатных программных приложений для корневых устройств Android , указывает на некоторые из них, и может быть больше приложений, платных или нет.

Из того, что я понимаю,

Плюс Очки

  1. Легкость укоренения

  2. Не нужен ноутбук или компьютер

Недостатки

  1. Основано на эксплойтах, поэтому может не работать, если эксплойты запрещены обновлениями ОС

  2. Сложность в рутировании (как я вижу на некоторых форумах для моего устройства Huawei Honor 6)

Вопросов:

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

Примечание. Я не ищу приложение или рекомендацию.


Моя личная задача всегда заключалась в том, чтобы держаться подальше от рутирования на основе приложений, пока работающее пользовательское восстановление доступно и может быть прошито из загрузчика. Само существование корневых приложений в один клик и их успешная реализация для устройства означает, что устройство имеет серьезную уязвимость (которая может использоваться приложением в случае необходимости), которая не была исправлена ​​его пользователем или его пользователем. разработчик (OEM). Тем не менее, мой первый рутинг был сделан с использованием корневого приложения в один клик (Framaroot). :)
Повелитель огня

Ответы:


5

Есть несколько преимуществ рутирования с использованием официального процесса.

  1. Это официально поддерживается на многих телефонах. Это означает, что вы можете использовать процесс, который задокументирован производителем, и инструменты из официального источника или надежной третьей стороны (CWM или TWRP) вместо того, чтобы запускать инструмент, полученный с какого-то хитрого веб-сайта.

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

  3. Из-за вышеизложенного после «мягкого рута» у вас может возникнуть соблазн не устанавливать обновление системы, поскольку это обновление исправляет уязвимость и останавливает работу метода рутирования. При официальном процессе нет причин оставаться на старой уязвимой версии.

Помимо удобства использования метода одним щелчком (упомянутого в вопросе), вместо этого есть и другие преимущества.

  1. Разблокировка загрузчика в «жестком корне» стирает телефон, поэтому вам придется снова все настроить и восстановить данные из резервной копии. Как правило, «мягкий рут» через уязвимость не требует очистки телефона, а это может быть намного удобнее.

  2. Поскольку рутирование изменяет системный раздел, обычно вы не можете выполнить OTA-обновление впоследствии: программа обновления распознает, что система была изменена, и выручает. Но некоторые методы «мягкого рута» на некоторых телефонах позволяют избежать этой проблемы, поэтому вы можете выполнить обновление OTA без необходимости рутировать или прошивать новый образ системы. Это тоже немного проще. В любом случае, вам все равно придется рутировать снова после обновления.

  3. Поскольку вам не нужно разблокировать загрузчик, нет соблазна оставить его разблокированным. Это имеет преимущество в плане безопасности, так как люди не могут прошивать новые ПЗУ на ваш телефон (например, если он украден и они хотят обойти блокировку экрана или защиту от сброса настроек).

То, что Бишьямс говорит о безопасности, важно, но, на мой взгляд, это не имеет отношения к вопросу. Хорошо отметить или напомнить людям, что каждый метод «мягкого рутирования» использует уязвимость безопасности, и вредоносные программы могут использовать ту же самую уязвимость для установки руткитов на ваш телефон. Однако уязвимость существует независимо от того, используете вы ее или нет. Риск безопасности исходит из возможности метода рутирования. Укоренение вашего телефона с помощью уязвимости не делает его более уязвимым или более уязвимым.

Если ваш телефон может быть рутирован с помощью рутирующего приложения / эксплойта, то он уязвим для вредоносных программ. Это действительно так, независимо от того, используете ли вы root или какой метод используете. Если вы не воспользуетесь эксплойтом (вместо этого сделаете «жесткий root» или просто не будете рутировать), это не защитит вас от вредоносных программ и не уменьшит вашу уязвимость.


4

По запросу от ОП некоторые детали из чата :

Хороший вопрос, но трудно ответить: есть еще несколько вещей, которые следует рассмотреть.

  1. это не просто «приложение по сравнению с USB» - и даже ваша «проблема с рутированием» - это не обязательно ошибка «приложения» в целом, а скорее проблема конкретного приложения, вызывающая эту проблему.
  2. С точки зрения безопасности: если есть приложение, которое может рутировать мое устройство - кто сказал, что другое приложение не делает это без моего согласия? Мы все знаем, что есть вредоносные программы, которые делают именно это (для того, чтобы интегрироваться как системное приложение, чтобы быть защищенным от заводских настроек).
  3. Однако, если такого приложения нет (и в надежде, что оно не может быть сделано приложением на этом устройстве / ПЗУ), для такого вредоносного ПО будет намного сложнее. Если есть простой способ через USB, я чувствую себя немного безопаснее :) Маловероятно, что какое-то другое приложение сможет подключить USB-кабель, загрузить что-то на мой компьютер и запустить эту комбинацию, чтобы причинить вред.

Таким образом, вышеприведенное может считаться «противоположным основанным приложением» - но если такое приложение уже существует для рассматриваемого устройства, мы мало что можем сделать. Даже если мы скажем «безопаснее наоборот», это не защитит нас от # 2. Конечно, мы можем проверить это перед покупкой устройства - но кто сказал, что такое приложение не появляется на следующий день?


3

Спасибо AndrewT, который разместил ссылку в чате , имея этот исследовательский документ в качестве ссылки в одном из ответов . Этот ответ полностью основан на этой статье (май 2015 г.) и освещает общие для пользователя аспекты (в нем много материалов, связанных с безопасностью, для заинтересованных лиц)


  • Какие плюсы и минусы помимо вышеописанного?

  • Если у устройства есть обе опции - рутинг на основе приложения и рут-методы разработчиками, какой вариант выбрать?

Ответ: все дело в уязвимости вредоносного ПО. Использование Root-эксплойтов - ОГРОМНАЯ угроза безопасности, которая перевешивает любые другие преимущества.

Что такое Soft Root и Hard Root?

  • Soft Root: Root получают напрямую, запустив часть программного обеспечения (т. Е. Эксплойты root) - либо путем непосредственной установки на устройство, либо с adbпомощью оболочки через соединение с ПК.

  • Hard Root: Root получается путем внешней перепрограммирования su binary через пакет обновления или ROM

Угроза вредоносных программ - в целом

  • Несмотря на то, что многие из них являются законными, многие удобные корневые методы работают одним нажатием, используя уязвимости в системе Android. Если вредоносный код не контролируется должным образом, автор вредоносного ПО может использовать его для получения несанкционированной привилегии root.

  • Как описано в проекте Android Malware Genome , в 36,7% (из 1260) образцов вредоносного ПО был внедрен хотя бы один корневой эксплойт.

  • Эти хорошо спроектированные эксплойты недостаточно защищены, крайне опасно попадать в чужие руки.

Кто основные корневые провайдеры и в целом, как это работает?

введите описание изображения здесь

Какие бывают типы корневых объектов?

Статья посвящена 78 исследованным подвигам. В общем, порядок воздействия (от высшего к низшему ):

  • Эксплуатация ядра: благодаря своему привилегированному положению ориентация на ядро ​​Linux является естественной для достижения полного контроля над устройством Android - например, TowelRoot

  • Эксплойты библиотек: эксплойты, нацеленные на библиотеки, используемые системными процессами Android, или внешние библиотеки, используемые для поддержки различных приложений, например эксплойт ZergRush, libsysutils, используемые демоном Volume Manager.

  • Прикладная и прикладная инфраструктура Корневые эксплойты прикладного уровня: эксплойты, нацеленные на системные приложения или службы, в основном включают уязвимую логику, представленную setuidутилитами, системными приложениями или службами. Примером является уязвимая setuidутилита, которая присутствует только на устройствах XoomFE с уязвимостью внедрения команд.

  • Специфичное для ядра ядро ​​или драйверы: поставщики либо настраивают ядро ​​(например, настраиваемая ветвь ядра Linux Qualcomm), либо предоставляют драйверы специфичных для поставщика устройств для различных периферийных устройств (например, камеры, звука). Такой код работает внутри пространства ядра, компрометация которого также может привести к полному контролю над устройством.

Числа , подвиги как на рисунке ниже

введите описание изображения здесь

Насколько сложно возложить руки на Эксплойт (Source или Binary)?

Очень просто.Легко доступный из поиска Google, благодаря чему авторы вредоносных программ могут использовать такие эксплойты. Поиск в Google 73 эксплойтов приводит к тому, что 68 из них доступны - 46 с исходным кодом и 22 с двоичными файлами

Как работают эти подвиги?

Основные требования для работы эксплойтов (упорядочены от самых трудных к наименее ) (у тега много таких случаев)

  • Требование взаимодействия с пользователем: (6 из 78 изученных)

    • Попросить пользователя загрузить приложение и вручную прервать установку
    • Попросить пользователя загрузиться в рекавери хотя бы один раз.
    • Попросить пользователя вручную перевести устройство в режим «экономии заряда».
    • Попросить пользователя открыть приложение для конкретного поставщика и нажать кнопку
  • Требуется adbоболочка через соединение с ПК: (17 из 78 изученных). Для некоторых эксплойтов adbтребуется соединение с оболочкой по следующим наиболее распространенным причинам:

    • Эксплойт может успешно изменить параметр, в local.propкотором рут- adbдоступ включен только для оболочки.

    • Эксплойт должен записывать в файл, принадлежащий групповой оболочке и доступный для записи группой (не для записи в мире)

    • Эксплойт нацелен на процесс демона adb, который требует запуска процесса атаки с пользователем оболочки. Например, эксплойт Rage Against the Cage нацелен на уязвимость отсутствующей проверки демона adb на возвращаемое значениеsetuid()

  • Перезагрузка: (6 из 78 изученных) Как правило, многие эксплойты root требуют как минимум одной перезагрузки. Например, атака по символической ссылке позволит злоумышленнику удалить файл, принадлежащий системе со слабым разрешением, чтобы установить ссылку в том же месте на защищенный файл. После перезагрузки соответствующие сценарии инициализации будут пытаться изменить разрешение исходного файла на доступное для записи, что в действительности изменяет разрешение связанного файла.

  • Нет или разрешение: (44 из 78 изученных) У эксплойтов в этой категории нет жестких требований, однако для некоторых из них могут потребоваться определенные разрешения Android, например, READ LOGSчтобы владелец процесса был помещен в определенную группу пользователей.

Могут ли эти эксплойты быть обнаружены Антивирусом?

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

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

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

  2. Распакованный эксплойт, который предоставит антивирусным продуктам всю действующую логику эксплойта.

  3. Перепакованный эксплойт с отключенным обнаружением взлома.

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

введите описание изображения здесь

Вывод

Просто. Держитесь подальше от методов Soft Root, если вы не способны справиться с последствиями


3
Я чувствую, что вы упускаете суть здесь о подвигах. Если в вашем телефоне есть уязвимость, которую может использовать «мягкий корень», вредоносная программа может использовать эту уязвимость независимо от того, используете ли вы ее или нет. Укоренение вашего телефона с помощью уязвимости не делает его более уязвимым.
Дэн Халм

@DanHulme: согласился, что это не увеличивает уязвимость. Сначала я задал вопрос, чтобы понять, почему и какой (мягкий / жесткий корень) лучше - в этом смысле есть ответ (не выдерживающий наличия уязвимости). Однако, если вы чувствуете, что ответ может быть улучшен с учетом вашего мнения, пожалуйста, не стесняйтесь делать это
beeshyams

2
Я просто не думаю, что то, что вы говорите об опасности этих уязвимостей, имеет какое-либо отношение к вопросу о том, какой метод выбрать.
Дэн Халм

4
Это как следующий вопрос и ответ. «У меня есть входная дверь с ключом и задняя дверь, которую я никогда не запираю. Что мне использовать, чтобы войти в мой дом?» «Вы не должны использовать незапертую заднюю дверь, потому что таким образом может попасть грабитель». Дверь открывается, используете ли вы ее или нет.
Дэн Халм

1
Хорошая аналогия. Кв. Чем больше
пытаешься
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.