Pourquoi Magisk abandonne la prise en charge du masquage de l'accès root aux applications

Magisk, l'outil de rootage Android populaire, continuera à être développé par topjohnwu, mais sans sa fonctionnalité de masquage de racine appelée MagiskHide.

En mai dernier, topjohnwu, le développeur de Magisk, annoncé qu'il avait rejoint Google au sein de l'équipe de sécurité de la plate-forme Android. Étant donné que Magisk est utilisé pour rooter les appareils Android et également contourner les mesures de détection de root dans les applications, beaucoup ont été sceptique quant au fait que Google permettrait au développeur de continuer à travailler sur le projet sous sa forme actuelle, ou même à tous. Heureusement, topjohnwu a reçu le feu vert pour continuer à développer Magisk, mais cette approbation dépend de l'abandon par le projet de la prise en charge de sa fonctionnalité de masquage de racine appelée MagiskHide.

Dans un article de blog, topjohnwu aborde l'état actuel du développement de Magisk et ce qui change pour l'avenir du projet. Son premier point réfute les accusations selon lesquelles son employeur, Google, lui aurait interdit de travailler sur le projet, alors qu'en réalité, il lui a fallu éliminer de nombreuses formalités administratives pour obtenir l'approbation dont il avait besoin pour travailler sur le projet. projet. Il n'est pas rare que des entreprises technologiques comme Google examinent de près le travail externe effectué par leurs employés, surtout lorsque ce travail externe a un impact direct sur le produit sur lequel l'employé a été embauché pour travailler. Dans le cas de topjohnwu, son travail au sein de l'équipe de sécurité de la plateforme Android lui donne un aperçu privilégié des mesures de sécurité actuelles et futures d'Android, ce qui présente un conflit d'intérêt évident lorsque MagiskHide — le composant de masquage de racine de Magisk — est conçu pour contourner l'une des mesures de sécurité actuelles de Google, à savoir SafetyNet Attestation. Pour cette raison, topjohnwu n'a d'autre choix que de cesser le développement sur MagiskHide et de supprimer la plupart de son infrastructure.

MagiskHide arrive en fin de vie

Cependant, mettre fin au développement de MagiskHide n’a pas été une décision difficile à prendre pour topjohnwu. Sur le plan personnel, le développeur dit que cela faisait longtemps qu'il n'avait pas trouvé agréable de travailler sur contourner les méthodes de détection des racines, ce qui est compréhensible car il s'agit essentiellement d'un jeu de chat et de souris jeu. Bien sûr, la popularité de Magisk peut être largement attribuée à sa capacité à contourner la détection des racines dans Google Pay et Pokémon Go, mais cela devient fatiguant de devoir le faire. patcher constamment le projet juste pour suivre le paysage en constante évolution. De plus, avec attestation matérielle en jeu, contourner la détection des racines devient beaucoup plus difficile, et solutions de contournement actuelles ne fonctionnera peut-être pas éternellement.

Bien que MagiskHide atteigne son statut de fin de vie, l'outil sera toujours disponible dans un sens très limité, car topjohnwu estime qu'il est important que les applications aient la possibilité de « se désinscrire » du modding. Le développeur affirme que les utilisateurs "pourront attribuer une liste de refus de processus dans lesquels Magisk refusera d'autres modifications et annulera toutes les modifications qu'il a apportées. Magisk n'usurpera / ne modifiera / ne manipulera aucun signal ou trace non lié à Magisk pour contourner toute détection de l'état de l'appareil. " Fondamentalement, MagiskHide ne masquera plus l'accès root aux applications et sera plutôt utilisé pour garantir que les applications sélectionnées par l'utilisateur ne seront pas modifié. Rendre plus facile l’annulation des modifications accélérera également les tests sur les émulateurs, car les développeurs n’auront plus besoin de redémarrer ou de corriger les images de l’émulateur.

Bien sûr, même si l'application officielle Magisk abandonne la prise en charge du masquage de l'accès root. cela ne signifie pas qu'il ne peut pas être forké pour ramener la fonctionnalité, ou qu'un module masquant la racine ne peut pas être publié. Cependant, tous les développeurs qui font cela finiront par rencontrer les mêmes problèmes que topjohnwu, ce qui signifie ils devront jouer au même jeu du chat et de la souris qui a contribué à la désillusion de topjohnwu Cacher.

La fin du dépôt centralisé du module Magisk

Un autre changement à venir pour Magisk est la suppression du dépôt du module Magisk de l'application. L'intégration du Magisk-Modules-Repo dans l'application Magisk, c'est ce qui permet actuellement aux utilisateurs de rechercher et de télécharger des modules à partir de l'application. Sa suppression signifie que les utilisateurs devront télécharger manuellement les fichiers ZIP du module et les installer à partir de au sein de l'application, ce qui est un peu gênant par rapport à la solution existante mais pas difficile du tout faire. De plus, les applications fournies avec un composant de module Magisk peuvent facilement installer le module pour l'utilisateur en exécutant le magisk --install-module ZIP commande, éliminant ainsi l'étape manuelle de l'équation pour les utilisateurs.

La plus grande perte, cependant, concerne la possibilité de découvrir de nouveaux modules via le dépôt centralisé et organisé, mais topjohnwu dit que le Magisk-Modules-Repo sera transféré aux "membres de confiance de la communauté" bientôt. Cela signifie le dépôt lui-même ne disparaîtra pas, mais l'application ne le signalera pas pour l'instant. Mais finalement, topjohnwu souhaite permettre aux utilisateurs de pointer l'application Magisk vers la source de module en ligne de leur choix., un peu comme F-Droid, mais ce n'est pas une priorité à mettre en œuvre pour le moment.

Ce changement n'a pas été motivé par l'emploi de topjohnwu chez Google, mais était inévitable étant donné le temps nécessaire pour modérer le repo.

Zygist - Magisk dans Zygote

Au cours des derniers mois, topjohnwu et plusieurs autres développeurs ont travaillé sur quelque chose appelé "Zygisk", qui est Magisk dans Zygote. Zygote est le processus du système d'exploitation qui gère chaque processus d'application. exécuter des parties de Magisk dans le processus zygote rendra les modules encore plus robustes (y compris en rendant le masquage des racines encore plus puissant). Topjohnwu dit que Zygisk répond également à sa philosophie selon laquelle Magisk "s'écarte" des applications dont les développeurs n'approuvent pas le modding, comme lorsqu'un processus est ajouté à la liste de refus MagiskHide, Magisk "nettoiera l'espace mémoire du processus pour garantir qu'aucun modding n'est appliqué."

Ce projet est toujours en cours de développement, mais nous entendrons plus de détails sur sa mise en œuvre lorsqu'il sera prêt pour les tests bêta.

L'avenir du développement de Magisk

Magisk a commencé et reste un projet amateur pour topjohnwu, mais le développeur souhaite prendre le projet plus au sérieux. Il a déjà démarré l'intégration continue sur GitHub et commencera à tester les modifications avant chaque version en intégrant avec AVD.

Topjohnwu note également que d'autres développeurs talentueux ont soumis des modifications de code intéressantes au cœur de Magisk, corrigeant de nombreux bugs et élargissant la compatibilité des appareils. Bien qu'il soit open source depuis le début, Magisk est le seul domaine de topjohnwu, donc c'est sympa voir d'autres personnes contribuer au projet alors que topjohnwu a moins de temps et d'énergie à y consacrer lui-même.