Vous avez probablement déjà entendu parler de root et de la dernière version d'Android, et peut-être même entendu des choses comme «la mort de root» être lancées. Les choses ont changé et les nouvelles fonctionnalités de sécurité d'Android limitent désormais le nombre de processus dotés de privilèges de superutilisateur sur la partition système. J'essaierai d'expliquer au mieux certaines de ces choses sans ajouter trop de mots que personne (ou presque) ne comprendra. Certains sont inévitables, cependant.
Vous pourriez avoir besoin de verser un raide pour cela.
Toutes les applications Android proviennent d'un processus système connu sous le nom de zygote. Dans Android 4.3, les choses ont changé et maintenant, zygote a une nouvelle politique de sécurité. Même si nous pouvons créer un processus avec les privilèges suid (superutilisateur), les nouvelles restrictions limitent ce que nous pouvons en faire. C'est tout l'intérêt de SELinux, ce qui est une bonne chose pour la sécurité des utilisateurs. Notre nouveau processus (considérez-le comme l'application racine que vous essayez d'exécuter) dispose techniquement d'un accès racine, mais il ne peut en réalité rien faire d'utile avec ce processus. C’est un très bon moyen de protéger le système contre les processus malveillants que vous ne souhaitez pas - comme dans ZOMGMALWARE potentiel - d’avoir accès à tout.
Il existe deux moyens de contourner ce nouvel ensemble de stratégies de sécurité. La première est que l'accès root à travers le shell - où vous avez connecté votre téléphone à un ordinateur et utilisez la ligne de commande pour communiquer - fonctionne toujours bien. Vous pouvez élever votre statut d'utilisateur et faire les mêmes choses que vous pouvez toujours faire avec adb. Et les chances sont minces que cela ne se produise pas sans que vous le sachiez.
L'autre façon est avec un démon su.
Un démon est un processus en arrière-plan qui n'est pas sous le contrôle direct de l'utilisateur actif. Il fonctionne silencieusement, attendant le temps nécessaire pour faire quelque chose d'utile. Quand on l'appelle, il fait ce pour quoi il a été conçu, puis retourne dans la clandestinité. Un démon su doit être appelé lors de l'initialisation du système, ce qui devient un point de blocage pour le piratage de l'accès root dans des ROM "standard".
L'implémentation Android livrée avec Nexus ne recherche pas de règles supplémentaires dans / data / system / sepolicy comme CyanogenMod et en amont, cela devrait être le cas. Il charge le fichier / sepolicy à partir de ramdisk et l'appelle un jour.
+ Koushik Dutta
Vous avez besoin - au minimum - d'une image de démarrage modifiée pour démarrer un démon personnalisé sur votre appareil Android. Ce n'est pas un problème avec quelque chose comme CyanogenMod, mais cela signifie que vous affichez autre chose que des actions pour que cela se produise. Faire clignoter des images personnalisées, des noyaux et des ROM est une chose que beaucoup de gens ne veulent tout simplement pas faire.
Donc c'est là où nous sommes. Les plus grands noms de la communauté Android travaillent d'arrache-pied pour régler tous les problèmes, mais il est très probable que root, tel que vous le connaissez aujourd'hui, vous oblige à flasher un micrologiciel personnalisé au-delà de l'application et du fichier binaire SU. Heureusement qu'Android est en train de passer à un modèle de sécurité plus sécurisé, il vous suffira d'en apprendre un peu plus sur le fonctionnement de votre système et sur la façon de le modifier pour qu'il soit dans l'état où vous le souhaitez - c'est-à-dire une autre bonne chose.
Google sait que les utilisateurs veulent des autorisations de superutilisateur, par exemple. Il y a de fortes chances pour qu'ils résolvent ces problèmes d'une manière ou d'une autre, soit en utilisant root pour moins de choses, soit en intégrant une solution dans Android lui-même. Si vous exécutez Linux ou OSX sur votre ordinateur, vous savez qu’avoir un dossier d’accueil vous permet de faire la plupart des choses sans élever d’autorisations. Peut-être que Google va aller dans cette direction. Ou peut-être ajouteront-ils des fonctions de superutilisateur à Android dans les options du développeur. Entre-temps, ils continueront à créer des téléphones Nexus complètement déverrouillables pour les utilisateurs qui souhaitent ou ont besoin de flasher un micrologiciel personnalisé. Les développeurs tels que les développeurs de CyanogenMod (et d’autres) continueront à le créer.