Дякуємо 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 різних версії для кожного подвигу:
Оригінальний експлуатувати, отриманий безпосередньо з серверів постачальників, із упаковкою та виявленням фальсифікацій.
Розпакований експлуатувач, який викриє всю фактичну логіку експлуатації антивірусним продуктам.
Повторне упакування експлуатації, де виявлення несанкціонованого відключення
Експлуатувати двійкові файли, розроблені великими корінними постачальниками, напрочуд "чисті", оскільки всі основні антивірусні програми важко виявити їх, як показано в таблиці нижче
Висновок
Простий. Не тримайтеся подалі від методів Soft Root, якщо ви не здатні боротися з наслідками