J'ai rooté plusieurs appareils Samsung et le "but" sous-jacent semble être de récupérer le su
binaire /system/xbin
et d'installer Superuser.apk .
Ma question est pourquoi faut-il sauter à travers tous ces cerceaux pour rooter le téléphone (installer une récupération personnalisée et flash ROM pré-enracinée ou exploiter l'installation actuelle)? Ne pourrait-on pas simplement télécharger un su précompilé, le déplacer sur la carte SD et l'exécuter via adb? Ce qui semble rendre une ROM «pré-enracinée», c'est qu'elle a le superutilisateur et le binaire su dans leurs chemins système respectifs. Je ne vois pas pourquoi il est si important de s'en échapper /system/xbin
.
la source
passwd
ou desshadow
fichiers de toute façon. Vous avez littéralement besoin de root pour mettresu
dans un emplacement exécutable, c'est pourquoi les méthodes d'enracinement impliquent soit un exploit d'escalade de privilèges, soit une récupération personnalisée (où tous les paris sont fondamentalement désactivés).L'enracinement implique d'exploiter la faiblesse en fonction de la version d'Android, donc " sauter à travers tous les cerceaux pour rooter le téléphone "
C'est un poulet et un œuf!
Pour exploiter root, vous avez besoin d'un démon adb non sécurisé (c'est-à-dire la possibilité de remonter
/system
) sur le combiné, et pour avoir un adb non sécurisé, vous avez besoin de root! ET aussi, vous avez besoin d'un chargeur de démarrage déverrouillé.Jetez un oeil à un exploit appelé zergRush trouvé sur github; la fonction d'intérêt est appelée
do_fault()
là où une tentative est faite pour "casser" le cadre de pile duvold
démon de 'en se connectant au canal qui lui appartient, et le faire planter en écrasant le pointeur de pile pour pointer vers un copié version du shellboomsh
qui s'exécute ensuite à partir de/data/local/tmp
.Après avoir lu la source, vous comprendrez maintenant pourquoi la copie du
su
binaire ne suffit pas pour que le combiné soit "enraciné" et pourquoi les cercles doivent être sautés. Et aussi, comme le bit exécutable au niveau du système de fichiers pour la carte SD est bloqué, alors n'y allez pas - c'est là pour des raisons évidentes! :)la source
chmod
la moindre différence et puisque la ROM installée en usine aura protégé un lá, vous avez besoin de root pour y parvenir, ce qui coupe les autorisations de la carte SD pour le faire! :)/system/xbin
est le répertoire dans lequel les utilitaires busybox vont, et ... dans un combiné enraciné, l'émissionecho $PATH
produira / sbin: / vendor / bin: / system / sbin: / system / bin: / system / xbin <- remarquez-le! C'est sur le chemin! Pour avoir ça là-dedans, vous avez besoin de racine, donc beaucoup de situations de poulet et d'oeufs ...: D