Wie funktioniert CF-Autoroot?

8

Welche Theorie steckt dahinter, wie CF-Autoroot Android-Geräte rooten kann?

Ich frage mich, mit welchen Techniken su ausgeführt wurde.

Verwendet es einen benutzerdefinierten / gepatchten Linux-Kernel? Oder basiert es auf lokalem Root-Exploit?

Ich konnte den CF-Autoroot-Quellcode nicht finden, daher nahm ich an, dass es sich um ein Closed-Source-Projekt handelt.

Zskdan
quelle

Antworten:

7

Zumindest auf Nexus-Geräten: CF Auto-Root entsperrt den Bootloader des Geräts über Fastboot (sofern dieser noch nicht entsperrt ist) und sendet dem Gerät dann ein benutzerdefiniertes Boot-Image (Kernel und Ramdisk), das ausgeführt werden soll, anstatt zu booten vom integrierten System oder der Wiederherstellungspartition. Es ist analog zum Booten Ihres PCs von einer CD oder einem USB-Laufwerk anstatt von der Festplatte.

(Dies ist eine unterstützte Funktion des fastbootim Android SDK enthaltenen Programms. Es beinhaltet keine Exploits. Wenn Sie sich das Skript ansehen, das im CF Auto-Root-Paket enthalten ist, werden Sie feststellen, dass es wirklich nur ausgeführt fastboot oem unlockund fastboot bootbefohlen wird .)

Sobald das benutzerdefinierte Startabbild ausgeführt wird, hat es vollen Zugriff auf das Gerät (genau wie die integrierte Systemsoftware), sodass einige Dateien (das suProgramm und das Superuser-APK) in die Systempartition kopiert werden . In neueren Android-Versionen (5.0+) werden auch einige Änderungen an der SELinux-Konfiguration des Kernels vorgenommen, die erforderlich sind, damit das Root-Konto funktionsfähig ist. Anschließend wird das Gerät neu gestartet, sodass es vom (geänderten) Kernel und der Systempartition gestartet wird.

Wyzard
quelle