Плюси і мінуси вкорінення за допомогою додатків ("Soft Root") порівняно з іншими методами ("Hard Root")


14

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

З того, що я розумію,

Плюс бали

  1. Легкість вкорінення

  2. Не потрібен ноутбук чи комп’ютер

Хвилини

  1. На підставі подвигів, тому може не працювати, якщо оновлення ОС відмовлено

  2. Складність у видаленні (як я бачу на деяких форумах для свого пристрою Huawei Honor 6)

Запитання:

  • Які плюси і мінуси крім вище?
  • Якщо у пристрою є обидва варіанти - вкорінення та вкорінення на основі додатків методами розробників, для чого слід вибрати?

Примітка. Я не шукаю пропозицій чи рекомендацій щодо додатків.


Моя особиста позиція завжди була триматися подалі від вкорінення, що базується на додатках, доки доступне робоче користувальницьке відновлення та може бути спалахом із завантажувача. Саме існування кореневих додатків в один клік та успішна їх реалізація для пристрою означає, що пристрій має серйозну вразливість (яка може бути використана додатком, якщо це потрібно), яку не було зафіксовано ні користувачем, ні його користувачем розробник (OEM). Однак, моє перше вкорінення було виконано за допомогою кореневої програми на 1 клік (Framaroot). :)
Firelord

Відповіді:


5

Є кілька переваг вкорінення за допомогою офіційного процесу.

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

  2. Оскільки це офіційно підтримується, більшість часу оновлення системи не змінить процес, тож вам не потрібно шукати "останній" метод вкорінення. На відміну від цього, оновлення програмного забезпечення, як правило, ісправляють вразливості, тому методи експлуатації часто припиняють роботу після оновлення.

  3. Через вищезазначене, після "м'якого корінця" ви можете спокуситись не встановлювати оновлення системи, оскільки це оновлення виправляє вразливість і зупиняє ваш метод вкорінення. В офіційному процесі немає причин залишатися на старій, вразливій версії.

Окрім зручності методу одним клацанням миші (згаданого у запитанні), є деякі інші переваги зробити це саме на цьому.

  1. Розблокування завантажувача до "жорсткого корінця" стирає телефон, тому вам доведеться знову налаштувати речі та відновити дані з резервного копіювання. Зазвичай "м'яке вкорінення" через вразливість не потрібно стирати телефон, і це може бути набагато зручніше.

  2. Оскільки вкорінення модифікує системний розділ, зазвичай, ви не можете робити оновлення OTA після цього: оновник визнає, що система модифікована та видалена. Але деякі методи «м'якого корінця» на деяких телефонах уникають цієї проблеми, тому ви можете виконати оновлення OTA, не знімаючи або спалахуючи новий системний образ. Це теж трохи простіше. Так чи інакше, після оновлення вам доведеться знову вкорінюватися.

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

Що Beeshyams каже про безпеку важливо, але на мій погляд, це не має значення для питання. Добре зазначити або нагадати людям, що кожен метод "м'якого вкорінення" використовує вразливість безпеки, а зловмисне програмне забезпечення може використовувати однакову вразливість для встановлення руткітів на ваш телефон. Однак вразливість є, використовуєте ви її чи ні. Ризик безпеки пов'язаний із можливістю використання методу вкорінення. Укорінення телефону за допомогою використання вразливості не робить його більш корисним або гіршим.

Якщо ваш телефон може бути розроблений за допомогою програми / експлуатації для вкорінення, він є вразливим для шкідливих програм. Це дійсно так само, незалежно від того, викорінили ви його чи який метод ви використовуєте. Якщо не використовувати подвигу (натомість "жорсткого корінця" або просто не вкорінившись), це не захистить вас від зловмисного програмного забезпечення, а також не зменшить вашу експозицію.


4

На запит ОП, деякі деталі з чату :

Хороше запитання, але важко відповісти: є ще кілька речей, які слід розглянути.

  1. це не просто "додаток, що базується на USB" - і навіть ваша "Складність у видаленні" - це не обов'язково вина "додатка, що базується" взагалі, а саме конкретного додатка, що викликає ці труднощі.
  2. З точки зору безпеки: якщо є програма, яка може викорінювати мій пристрій - хто каже, що інша програма не робить це без моєї згоди? Ми всі знаємо, що там є саме це зловмисне програмне забезпечення (щоб інтегруватись як системний додаток, щоб бути захищеним від скидання заводських налаштувань).
  3. Однак, якщо такого додатка немає (і сподіваємось, що це не може зробити програма на цьому пристрої / ПЗУ), для такої шкідливої ​​програми набагато складніше. Якщо тоді є простий метод через USB, я відчуваю себе трохи безпечніше :) Навряд чи якесь інше додаток вдається підключити USB-кабель, завантажити щось на мій комп'ютер і запустити цю комбо, щоб зробити шкоду.

Отже, вище можна вважати "контрактом на основі додатків", але якщо такий додаток уже існує для відповідного пристрою, ми не можемо багато зробити. Навіть якщо ми скажемо "безпечніше навпаки", це не захистить нас від №2. Звичайно, ми можемо перевірити це перед тим, як купувати пристрій - але хто каже, що такий додаток не з’являється наступного дня?


3

Дякуємо AndrewT, який опублікував посилання на чат , маючи цю дослідницьку роботу в якості однієї з відповідей . Ця відповідь повністю ґрунтується на цій роботі (травень 2015 р.) Та висвітлює загальні зрозумілі для користувача аспекти (у ній є багато матеріалів, що стосуються безпеки для тих, хто цікавиться)


  • Які плюси і мінуси крім вище?

  • Якщо у пристрою є обидва варіанти - вкорінення та вкорінення на основі додатків методами розробників, для чого слід вибрати?

Відповідь: Вся справа в уразливості зловмисного програмного забезпечення. Використання кореневих подвигів є ВЕЛИЧЕЗНИМ ризиком для безпеки та надмірно важить будь-які інші переваги

Що таке м'який корінь і твердий корінь?

  • М'який корінь: корінь отримується безпосередньо за допомогою програмного забезпечення (тобто, root root) - або безпосередньо встановившись на пристрій, або вимагаючи adbоболонки через підключення до ПК.

  • Hard Root: Корінь отримується, прошиваючи su binarний файл зовнішньо через пакет оновлень або ROM

Загроза зловмисних програм - загалом

  • Незважаючи на законність, багато зручних кореневих методів одним клацанням функціонують, використовуючи вразливості в системі Android. Якщо їх ретельно не контролювати, такими подвигами автор може зловживати зловмисними програмами, щоб отримати несанкціоновані права доступу до root.

  • Як описано в проекті генома програм для зловмисного програмного забезпечення Android , 36,7% (з 1260) зразків зловмисного програмного забезпечення вклали принаймні один кореневий подвиг.

  • Ці добре розроблені подвиги недостатньо захищені, це надзвичайно небезпечно, якщо вони потрапляють у чужі руки.

Хто є основними постачальниками кореневих технологій і в цілому, як це працює?

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

Які типи кореневих експолітів?

Стаття охоплює 78 досліджених подвигів. Загалом, порядок впливу (від найвищого до найнижчого ):

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

  • Бібліотечні подвиги : подвиги, орієнтовані на бібліотеки, які використовуються в системних процесах Android, або зовнішні бібліотеки, які використовуються для підтримки різних програм, наприклад, експлуатація ZergRush, libsysutils, що використовується демоном Volume Manager

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

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

Кількість розумних , подвиги, як на малюнку нижче

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

Наскільки складно покласти руки на Exploit (Source або Binary)?

Дуже легко. Легко доступний у пошуку Google, завдяки чому автори шкідливих програм використовують ці подвиги. Гугл за 73 подвиги призводить до того, що 68 з них доступні - 46 із вихідним кодом та 22 з бінарними файлами

Як працюють ці подвиги?

Основні вимоги до експлуатації подвигів (упорядковані від найскладніших до найменш ) ( тегів є багато з цих випадків)

  • Потрібна взаємодія з користувачем: (6 з 78 вивчених)

    • Попросити користувача завантажити додаток і вручну перервати установку
    • Попросити користувача хоча б раз завантажитися на відновлення.
    • Попросити користувача вручну перевести пристрій у режим "економії акумулятора".
    • Попросивши користувача відкрити додаток для певного постачальника та натиснути кнопку
  • Потрібна adbоболонка через підключення до ПК: (17 з 78 вивчених). Для деяких подвигів adbпотрібне з'єднання оболонки через такі найпоширеніші причини:

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

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

    • Експлоатація орієнтована на процес демона adb, який вимагає запуску процесу атаки з користувачем оболонки. Наприклад, експлуатація " Лють проти клітки" націлена на вразливість відсутньої перевірки демона adb демона на значення поверненняsetuid()

  • Перезавантаження: (6 з 78 вивчених) Як правило, для багатьох кореневих подвигів потрібна хоча б одна перезавантаження. Наприклад, символічна атака посилань дозволила б зловмиснику видалити файл із власною системою зі слабким дозволом, встановити посилання в тому ж місці на захищений файл. Після перезавантаження відповідні скрипти init спробують змінити дозвіл вихідного файлу на доступний для запису у світі, що насправді змінює дозвіл на пов'язаний файл

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

Чи можна виявити ці подвиги антивірусом?

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

Для тестування найбільшого постачальника (ім’я не розкрито), що має 167 подвигів, було використано 4 репрезентативних антивірусних вироби Android Оскільки спочатку завантажені подвиги з бази даних провайдерів упаковували фактичний код експлуатації та використовували механізм виявлення несанкціонованих дій, вивчіть 3 різних версії для кожного подвигу:

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

  2. Розпакований експлуатувач, який викриє всю фактичну логіку експлуатації антивірусним продуктам.

  3. Повторне упакування експлуатації, де виявлення несанкціонованого відключення

Експлуатувати двійкові файли, розроблені великими корінними постачальниками, напрочуд "чисті", оскільки всі основні антивірусні програми важко виявити їх, як показано в таблиці нижче

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

Висновок

Простий. Не тримайтеся подалі від методів Soft Root, якщо ви не здатні боротися з наслідками


3
Я відчуваю, що ви пропускаєте тут справу про подвиги. Якщо ваш телефон має вразливість, яку може використовувати "м'який корінь", зловмисне програмне забезпечення може використовувати цю вразливість незалежно від того, використовуєте ви його чи ні. Укорінення телефону за допомогою використання вразливості не робить його більш вразливим.
Дан Хулм

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

2
Я просто не думаю, що те, що ви говорите про небезпеку цих вразливих ситуацій, взагалі не має жодного стосунку до питання, який метод вибрати.
Ден Хулм

4
Це як наступне запитання та відповідь. "У мене є вхідні двері з ключем і задні двері, які я ніколи не замикаю. Що я повинен використовувати, щоб потрапити до свого будинку?" "Не слід користуватися незамкненою задньою дверима, оскільки грабіжник може потрапити таким чином". Двері відчинені, використовуєте ви її чи ні.
Ден Хулм

1
Приємна аналогія. Apt. Більше хтось намагається зрозуміти безпеку, більше хтось розуміє, наскільки менш захищений
бджоли
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.