Чому Magisk припиняє підтримку приховування root-доступу додатків

click fraud protection

Magisk, популярний інструмент для рутування Android, буде продовжувати розроблятися topjohnwu, але без функції приховування root під назвою MagiskHide.

Ще в травні topjohnwu, розробник Magisk, оголосив що він приєднався до Google у групі безпеки платформи Android. З огляду на те, що Magisk використовується для рутування пристроїв Android, а також для обходу заходів виявлення кореневого доступу в програмах, багато хто з них скептично ставиться до того, що Google дозволить розробнику продовжити роботу над проектом у його нинішньому вигляді або навіть у такому вигляді все. На щастя, topjohnwu отримав зелене світло на продовження розробки Magisk, але це схвалення залежить від того, що проект припинить підтримку функції приховування кореневої системи під назвою MagiskHide.

У дописі в блозі, topjohnwu розповідає про поточний стан розробки Magisk і про те, що зміниться для подальшого розвитку проекту. Його перший пункт спростовує звинувачення в тому, що його роботодавець Google заборонив йому працювати над проектом, хоча насправді йому довелося пройти через купу бюрократичних процедур, щоб отримати схвалення, яке йому було потрібно для роботи над демонструвати. Для технологічних компаній, таких як Google, не є чимось незвичайним, щоб ретельно перевіряти зовнішню роботу, яку виконують їхні співробітники, особливо коли ця зовнішня робота безпосередньо впливає на продукт, для роботи над яким був найнятий працівник. У випадку Топджонву його робота в команді безпеки платформи Android дає йому повне уявлення про поточні та майбутні заходи безпеки Android, що представляє очевидний конфлікт інтересів, коли MagiskHide — кореневий компонент Magisk, що приховує — призначений для обходу одного з поточних заходів безпеки Google, а саме SafetyNet Атестація. З цієї причини topjohnwu не має іншого вибору, як припинити розробку на MagiskHide, а також видалити більшу частину його інфраструктури.

Закінчився термін служби MagiskHide

Припинення розробки на MagiskHide не було важким рішенням для topjohnwu. На особистому рівні розробник каже, що минуло деякий час відтоді, як він востаннє вважав це приємним для роботи обхід методів виявлення коренів, що зрозуміло, оскільки це, по суті, кішка-мишка гра. Звичайно, популярність Magisk значною мірою пояснюється його успіхом в обході виявлення root-доступу в Google Pay і Pokémon Go, але це втомлює постійно латати проект просто щоб не відставати від ландшафту, що постійно змінюється. Плюс, с апаратна підтримка атестації під час гри обійти виявлення кореня стає набагато складніше, і поточні обхідні шляхи може не працювати вічно.

Незважаючи на те, що термін експлуатації MagiskHide закінчився, інструмент все ще буде доступний у дуже обмеженому сенсі, оскільки topjohnwu вважає, що важливо, щоб програми мали можливість «відмовлятися» від модифікації. Розробник каже, що користувачі «зможуть призначити заборонений список процесів, у яких Magisk забороняє подальші модифікації та скасовує всі внесені зміни. Magisk не буде підробляти/змінювати/маніпулювати будь-якими сигналами чи слідами, не пов’язаними з Magisk, щоб обійти будь-яке виявлення стану пристрою». MagiskHide більше не приховуватиме кореневий доступ від додатків і натомість використовуватиметься, щоб гарантувати, що вибрані користувачем програми не будуть змінений. Полегшення повернення змін також пришвидшить тестування на емуляторах, оскільки розробникам більше не доведеться перезавантажувати або виправляти зображення емулятора.

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

Кінець централізованого сховища модулів Magisk

Ще однією майбутньою зміною в Magisk є видалення репозиторію модуля Magisk із програми. Інтеграція Magisk-Modules-Repo у програму Magisk – це те, що зараз дозволяє користувачам шукати та завантажувати модулі з програми. Його видалення означатиме, що користувачам доведеться вручну завантажувати ZIP-файли модуля та встановлювати їх з у програмі, що трохи незручно порівняно з існуючим рішенням, але зовсім не складно зробити. Крім того, програми, які постачаються з компонентом модуля Magisk, можуть легко встановити модуль для користувача, запустивши magisk --install-module ZIP команда, що виводить користувачів із рівняння вручну.

Однак більша втрата полягає в можливості виявлення нових модулів через централізоване кураторське репо, але topjohnwu каже, Magisk-Modules-Repo буде передано «довіреним учасникам спільноти» скоро. Це означає сам репо не зникне, але програма наразі не вказує на нього. Зрештою, однак, topjohnwu хоче дозволити користувачам спрямовувати програму Magisk на будь-яке джерело онлайн-модулів, яке вони хочуть, щось на кшталт F-Droid, але на даний момент це не є для нього пріоритетним завданням.

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

Zygist - Magisk в Zygote

Протягом останніх кількох місяців topjohnwu та кілька інших розробників працювали над чимось під назвою «Zygisk», тобто Magisk у Zygote. Zygote — це процес ОС, який обробляє розгалуження кожного процесу програми, отже запуск частин Magisk у процесі zygote зробить модулі ще надійнішими (зокрема, зробить приховування коренів ще потужнішим). Topjohnwu каже, що Zygisk також відповідає його філософії Magisk «уникати» додатків, розробники яких не схвалюють модифікацію, оскільки коли процес додається до списку заборонених MagiskHide, Magisk «очистить простір пам’яті процесу, щоб переконатися, що модифікація не застосовано».

Цей проект все ще триває, але ми почуємо більше деталей реалізації, коли він буде готовий до бета-тестування.

Майбутнє розробки Magisk

Magisk починався та залишається проектом для topjohnwu як любителя, але розробник хоче поставитися до проекту більш серйозно. Він уже розпочав безперервну інтеграцію на GitHub і розпочне регресійне тестування змін перед кожним випуском шляхом інтеграції з AVD.

Topjohnwu також зазначає, що інші талановиті розробники вносили варті зміни коду в ядро ​​Magisk, виправляючи багато помилок і розширюючи сумісність пристроїв. Незважаючи на те, що Magisk з самого початку був відкритим кодом, він був єдиним доменом topjohnwu, тому це добре бачити, як інші люди роблять внесок у проект, коли у topjohnwu менше часу та енергії, щоб присвятити цьому себе.