Comment fonctionne CF-Autoroot?

8

Quelle est la théorie derrière la façon dont CF-autoroot est capable de rooter des appareils Android?

Je me demande quelles sont les techniques utilisées pour exécuter su?

Utilise-t-il un noyau Linux personnalisé / corrigé? Ou est-il basé sur un exploit root local?

Je n'ai pas pu trouver le code source de CF-Autoroot, j'ai donc supposé qu'il s'agissait d'un projet de source fermée.

Zskdan
la source

Réponses:

7

Sur les appareils Nexus, au moins: CF Auto-Root fonctionne en déverrouillant le chargeur de démarrage de l'appareil via fastboot (s'il n'est pas déjà déverrouillé), puis en envoyant à l'appareil une image de démarrage personnalisée (noyau et disque virtuel) qu'il devrait exécuter au lieu de démarrer à partir du système intégré ou de la partition de récupération. Cela revient à démarrer votre PC à partir d'un CD ou d'une clé USB plutôt qu'à partir du disque dur.

(Il s'agit d'une fonctionnalité prise en charge du fastbootprogramme inclus dans le SDK Android; elle n'implique aucun exploit. Si vous regardez le script fourni dans le package CF Auto-Root, vous verrez qu'il ne fonctionne vraiment que fastboot oem unlocket fastboot bootcommande .)

Une fois que l'image de démarrage personnalisée est en cours d'exécution, elle a un accès complet à l'appareil (tout comme le logiciel système intégré), elle copie donc certains fichiers (le suprogramme et le superutilisateur APK) dans la partition système. Sur les versions récentes d'Android (5.0+), il apporte également quelques modifications à la configuration SELinux du noyau qui sont nécessaires pour permettre au compte root d'être fonctionnel. Ensuite, il redémarre le périphérique pour qu'il démarre à partir du noyau (modifié) et de la partition système.

Wyzard
la source