Приветствую Вас друзья, с вами DIGITAL. Еще в мае, разработчик Magisk, объявил, что присоединился к Google в команде по безопасности платформы Android. Учитывая, что Magisk используется для корневых устройств Android, а также для обхода мер обнаружения корневых файлов в приложениях, многие скептически относились к тому, что Google позволит разработчику продолжить работу над проектом в его нынешнем виде или даже вообще. К счастью, topjohnwu был дан зеленый свет для продолжения разработки Magisk, но это одобрение зависит от того, что проект прекратит поддержку своей функции скрытия корневого доступа под названием MagiskHide.
В сообщении у себя в блоге, topjohnwu (разработчик Magisk) рассматривает текущее состояние разработки Magisk и то, что меняется для продвижения проекта. Акцентировано внимание на опровержение обвинения в том, что его работодатель — Google, запретил ему работать над проектом, хотя на самом деле ему просто пришлось преодолеть множество бюрократических проволочек, чтобы получить одобрение, необходимое для работы над проектом. Для технологических компаний, таких как Google, нет ничего необычного в том, чтобы тщательно изучать внешнюю работу, которую выполняют ее сотрудники, особенно когда эта внешняя работа напрямую влияет на продукт, для работы над которым был нанят сотрудник. В случае Топджонву его работа в команде безопасности платформы Android дает ему привилегированное представление о текущих и будущих мерах безопасности Android, что представляет собой очевидный конфликт интересов, когда MagiskHide — компонент, скрывающий корневую систему Magisk — предназначен для обхода одной из текущих мер безопасности Google, а именно аттестации SafetyNet. По этой причине у topjohnwu нет другого выбора, кроме как прекратить разработку на MagiskHide, а также удалить большую часть своей инфраструктуры.
MagiskHide достигает конца жизни
Хотя окончание разработки на MagiskHide не было сложным решением для его разработчика. На личном уровне разработчик говорит, что прошло много времени с тех пор, как он в последний раз находил приятным работать над обходом методов обнаружения корневых ресурсов, что понятно, потому что это, по сути, игра в кошки-мышки. Конечно, популярность Magisk в значительной степени можно отнести на счет ее успеха в обходе обнаружения root-прав в Google Pay и Pokémon Go, но становится утомительно постоянно исправлять проект, просто чтобы идти в ногу с постоянно меняющимся ландшафтом. Кроме того, с аттестацией на аппаратном обеспечении в игре обойти обнаружение корней становится намного сложнее, и текущие обходные пути могут не работать вечно.
Хотя MagiskHide достигает статуса "конец жизни", инструмент по-прежнему будет использоваться в очень ограниченном смысле, поскольку topjohnwu считает важным, чтобы приложения имели возможность “отказаться” от моддинга. Разработчик говорит, что пользователи “смогут назначить список запрещенных процессов, в которых Magisk отклоняет дальнейшие изменения и отменяет все внесенные изменения. Magisk не будет подделывать/изменять/манипулировать любыми сигналами или следами, не связанными с Magisk, чтобы обойти обнаружение состояния любого устройства”. В принципе, MagiskHide больше не будет скрывать корневой доступ из приложений, а вместо этого будет использоваться для обеспечения того, чтобы выбранные пользователем приложения не были изменены. Упрощение возврата изменений также ускорит тестирование на эмуляторах, так как разработчикам больше не придется перезагружать или исправлять образы эмуляторов.
Конечно, даже несмотря на то, что официальное приложение Magisk отказывается от поддержки сокрытия корневого доступа, это не значит, что его нельзя разветвить, чтобы вернуть эту функцию, или что модуль сокрытия корневого доступа не может быть выпущен. Однако любые разработчики, которые сделают это, в конечном итоге столкнутся с теми же проблемами, что и topjohnwu, а это означает, что им придется играть в ту же игру в кошки-мышки, которая привела к тому, что topjohnwu разочаровался в Hide.
Завершение централизованного репозитория модулей Magisk
Еще одним предстоящим изменением в Magisk является удаление репозитория модуля Magisk из приложения. Интеграция репозитория Magisk-модулей в приложение Magisk — это то, что в настоящее время позволяет пользователям искать и загружать модули из приложения. Его удаление будет означать, что пользователям придется вручную загружать ZIP-файлы модулей и устанавливать их из приложения, что немного неудобно по сравнению с существующим решением, но совсем не сложно сделать. Кроме того, приложения, которые поставляются с компонентоми модулей Magisk, могут легко установить модуль для пользователя, запустив
magisk --install-module ZIP команда,
делающая ручной шаг за пределы уравнения для пользователей.
Большая потеря, однако, связана с возможностью обнаружения новых модулей с помощью централизованного, кураторского репо, но topjohnwu говорит, что Magisk-Модули-Репозиторий будут вскоре переданы “доверенным членам сообщества”. Это означает, что сам репозиторий не исчезнет, но приложение пока не намекает на это. В конце концов, тем не менее, topjohnwu действительно хочет, чтобы пользователи указывали приложению Magisk на любой источник онлайн-модулей, который они хотят, вроде F-Droid, но в данный момент для него это не является первоочередной задачей.
Это изменение не было вызвано работой topjohnwu в Google, но вместо этого должно было произойти, учитывая время, необходимое для содержания репозитория.
Zygisk – Магиск в Зиготе
В течение последних нескольких месяцев topjohnwu и несколько других разработчиков работали над чем-то под названием “Zygisk", что называется Magisk в Zygote. Zygote — это процесс ОС, который обрабатывает ответвления каждого процесса приложения, поэтому запускаемые части Magisk в процессе zygote сделают модули еще более надежными (в том числе сделают скрытие корней еще более мощным). topjohnwu говорит, что Zygisk также соответствует его философии Magisk “убираться с пути” приложений, разработчики которых не одобряют моддинг, поскольку, когда процесс добавляется в список отказов MagiskHide, Magisk “очистит пространство памяти процесса, чтобы убедиться, что моддинг не применяется”.
Этот проект все еще находится в стадии разработки, но мы услышим больше деталей реализации, когда он будет готов к бета-тестированию.
Будущее развития Magisk
Magisk начинал и остается проектом для любителей topjohnwu, но разработчик хочет отнестись к проекту более серьезно. Он уже запустил непрерывную интеграцию на GitHub и начнет регрессионное тестирование изменений перед каждым выпуском.
Topjohnwu также отмечает, что другие талантливые разработчики вносили полезные изменения в код ядра Magisk, исправляя многие ошибки и расширяя совместимость устройств. Несмотря на то, что с самого начала Magisk был открытым исходным кодом, он был единственным доменом topjohnwu, поэтому приятно видеть, что другие люди вносят свой вклад в проект, когда у topjohnwu меньше времени и энергии, чтобы посвятить проекту себя.