Come funziona CF-Autoroot?


8

Qual è la teoria alla base di come CF-autoroot è in grado di eseguire il root dei dispositivi Android?

Mi chiedo quali tecniche ha usato per eseguire su?

Utilizza un kernel Linux personalizzato / con patch? O si basa sull'exploit di root locale?

Non sono riuscito a trovare il codice sorgente CF-Autoroot, quindi ho pensato che fosse un progetto a sorgente chiuso.

Risposte:


7

Sui dispositivi Nexus, almeno: CF Auto-Root funziona sbloccando il boot loader del dispositivo tramite fastboot (se non è già sbloccato), quindi inviando al dispositivo un'immagine di avvio personalizzata (kernel e ramdisk) che dovrebbe essere eseguita invece di avviarsi dal sistema integrato o dalla partizione di ripristino. È analogo all'avvio del PC da un CD o da un'unità USB anziché dal disco rigido.

(Questa è una funzionalità supportata del fastbootprogramma inclusa nell'SDK di Android; non comporta alcun exploit. Se guardi lo script che viene fornito nel pacchetto CF Auto-Root, vedrai che funziona fastboot oem unlocke fastboot bootcomandi .)

Una volta che l'immagine di avvio personalizzata è in esecuzione, ha pieno accesso al dispositivo (proprio come fa il software di sistema integrato), quindi copia alcuni file (il suprogramma e l'APK superutente) nella partizione di sistema. Nelle recenti versioni di Android (5.0+), apporta anche alcune modifiche alla configurazione SELinux del kernel necessarie per consentire all'account root di funzionare. Quindi riavvia il dispositivo in modo che si avvii dal kernel (modificato) e dalla partizione di sistema.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.