Warum funktionieren die Root-Apps nicht mehr?

10

Vor ein paar Jahren war es einfach, ein Gerät zu rooten: Installieren Sie KingRoot, KingoRoot oder eine ähnliche App, drücken Sie die große ROOT-Taste und lassen Sie es den Rest erledigen. Nach ungefähr 5 Minuten wurde eine grüne "Wurzel erfolgreich!" Die Eingabeaufforderung wird angezeigt, und wir können wählen, ob die Root-App beibehalten oder deinstalliert und eine saubere Root-Manager-App wie SuperSU / Superuser installiert werden soll.

Wie arbeiten Sie? Warum arbeiten sie nicht mehr? Und wenn sie funktionieren, soll ich sie verwenden oder nicht?

Überschall
quelle
2
Dies könnte hilfreich sein, insbesondere der VERIFIED / SECURE BOOTAbschnitt: forum.xda-developers.com/android/general/…
Irfan Latif

Antworten:

16

Ich hatte diese Frage vor einigen Monaten und fand diese Antwort durch einige Recherchen. Daher dachte ich, meine Recherchen auf dieser Website zu teilen, indem ich meine Frage beantwortete und die gefälschten Informationen online berücksichtigte. (Auf der offiziellen KingoRoot-Website heißt es beispielsweise, dass Android Oreo gerootet werden kann, was völlig falsche Informationen sind.)

Wie funktionieren die Rooting-Apps?

Es gibt ziemlich viele Rooting-Apps, KingRoot, KingoRoot, Z4Root, Root Genius und Universal Androot, um nur einige beliebte / früher beliebte Apps zu nennen. Alle verwenden Exploits / Schwachstellen / Lücken im Android-Betriebssystem, um sich Berechtigungen zu erteilen, die den System-Apps oder sogar dem Android-Betriebssystem selbst vorbehalten sind. Und dann montieren sie als Lese- / Schreib das Verzeichnis mit dem Namen , /systemdie Häuser die Prozesse erforderlich , um das System laufen und die System - Apps zu bekommen, und legen Sie eine binäre Namen suin einem Ort des Verzeichnisses, nämlich /system/bin/su. Wenn für eine App root erforderlich ist, führt die App diese Binärdatei aus, und Sie werden aufgefordert, den Root-Zugriff zuzulassen oder abzulehnen.

Die entdeckten Exploits / Schwachstellen erhalten eine CVEID, werden auf der CVE-Website detailliert beschrieben und in den Android Security Bulletins behoben . Ein Beispiel ist die berüchtigte DirtyC0W-Sicherheitslücke, die mit der CVEID versehen CVE-2016-5195wurde und die älteren Linux-Kernel plagte und immer noch plagt. Fast alle oben genannten Apps nutzen diese Sicherheitsanfälligkeit aus.

Warum funktionieren die Root-Apps nicht mehr?

Wie in den obigen Bulletins erwähnt, behebt Google jeden Monat eine Reihe von Problemen in Android. Der Umfang der Sicherheitslücken nimmt also stark ab. Alle Schwachstellen, die die Rooting-Apps bisher verwenden, wurden in den Sicherheitspatches etwa im Januar 2018 behoben .

Aber es kann Probleme geben, die einige Hersteller vergessen haben zu patchen! Was ist mit denen?

Unter Android 6.0.0 oder neuer führt dies nur dazu, dass das Gerät nicht mehr startet. Um den Grund dafür zu verstehen, müssen wir uns ein Konzept namens Chain of Trust ansehen .

Chain of Trust , abgekürzt CoT, ist ein Sicherheitsmechanismus, der eingeführt wurde, um das Android-Betriebssystem vor Viren und nicht autorisierten Änderungen zu schützen. Es funktioniert wie eine Kette von Hardware und Software, bei der jedes Teil das nächste Teil überprüft. Schritt für Schritt:

  1. Wenn Sie das Gerät einschalten, wird eine Hardwarefunktion (manchmal auch als Boot-ROM bezeichnet) gestartet. Das Boot-ROM ist in die Hardware eingebrannt und kann nicht geändert werden.
  2. Das Boot-ROM überprüft die erste Software im CoT, den Bootloader, bei dem es sich um einen rohen binären Blob handelt, der manchmal als Preloader bezeichnet wird. (Außerdem lädt und verwendet das Boot-ROM manchmal spezielle benutzerdefinierte Partitionen / Binärdateien, je nach Hersteller.) Wenn der Bootloader die Überprüfungen nicht besteht, wird das Gerät heruntergefahren. Wenn dies erfolgreich ist, führt das Boot-ROM den Bootloader aus.
  3. Der Bootloader überprüft die vom Boot-ROM an ihn übergebenen Optionen und wählt den entsprechenden Boot-Modus aus. Die üblichen Startmodi, die auf fast jedem Gerät vorhanden sind, sind der normale Android-Start, die Wiederherstellung und Fastboot / Download.

Wenn der Bootloader gesperrt ist, wird überprüft, ob der nächste auszuführende Teil von CoT intakt ist, und wenn dies der Fall ist, wird er vom Bootloader ausgeführt. Ist dies nicht der Fall, kann es je nach Gerätemodell heruntergefahren, neu gestartet oder in einem speziellen Bootloader-Modus hängen bleiben.

Wenn der Bootloader entsperrt ist, wird der nächste Teil von CoT nicht überprüft, sondern direkt geladen.

  1. Der nächste Teil heißt Boot-Partition . Es übernimmt die Möglichkeit, das System selbst zu starten. In Android-Versionen unter 6.0.0 (Lollipop) wird außerdem überprüft, ob das System intakt ist, und wenn es geändert wird, wird es heruntergefahren.

Wie bereits erwähnt, nutzen diese Root-Apps die zu ändernden Sicherheitsanfälligkeiten aus /system, die von der Startpartition überprüft werden, wie in Stufe 4 oben erwähnt. Bei jeder Änderung wird das Gerät nicht gestartet. Dieser Zustand wird üblicherweise als "Soft-Brick" bezeichnet, der nur durch einen erneuten Blitz behoben werden kann.

Bei neueren Geräten muss der Bootloader entsperrt sein, wenn Sie Ihr Gerät rooten möchten. Diese Geräte werden gerootet, indem eine Wiederherstellung mit mehr Optionen als die normale Wiederherstellung (wie TWRP, ClockWorkMod) geflasht wird, die normalerweise als benutzerdefinierte Wiederherstellung bezeichnet wird, und diese zum Ändern der Startpartition (und Deaktivieren der Systemüberprüfung) verwendet wird. Es ist auch möglich, die Startpartition ohne benutzerdefinierte Wiederherstellung direkt zu ändern.

Einige Hersteller bieten eine Möglichkeit, den Bootloader zu entsperren, andere nicht. Die beliebten Geräte mit gesperrten Bootloads (zum Beispiel gesperrte Samsung S-Geräte von US-Carriern) werden in der Regel von der Android-Modding-Community ausgenutzt.

Mein Gerät ist noch Android 5.1.1 oder älter! Soll ich diese zum Rooten verwenden?

Die meisten dieser älteren Geräte können über die Root-Apps gerootet werden. Also könntest du. Sollten Sie? Das hängt von Ihren Vorlieben ab. Der Root-Zugriff gewährt die Macht über alles im Betriebssystem, und beim Root-Zugriff dauert es normalerweise nicht einmal eine Mikrosekunde, um sicherzustellen, dass Ihr Gerät nie wieder hochfährt. Es ist sehr wahrscheinlich, dass die Rooting-Apps dies niemals tun werden, aber sie könnten es. Mit root kann eine App auch auf alles zugreifen, was Ihr Gerät tut, und auf alles, was es im Speicher hat, einschließlich Ihrer Kreditkarteninformationen, Kennwörter usw. Wenn dies für Sie eine ernsthafte Bedrohung für die Privatsphäre darstellt, verwenden Sie die root-Apps möglicherweise nicht. Wenn Ihnen das egal ist, können Sie sie ausprobieren.

Wenn Sie geschickt genug sind, gibt es die Quellen für fast alle Exploits, die diese Root-Apps verwenden. Sie können versuchen, sie nach CVEID zu durchsuchen, in Git nach ihnen zu suchen, sie zu kompilieren und auszuführen und eine Root-Shell zu erhalten, und Sie können die suBinärdatei und die anderen Abhängigkeiten selbst installieren .

KingoRoot ist auch dafür bekannt, hochsensible Daten wie IMEI und Seriennummer an ihre Server zu senden. Die Chancen stehen gut, dass sie sie niemals benutzen werden, aber das ist am Ende Ihre Entscheidung. Und KingRoot ist dafür bekannt, eine Hintertür in seinem SDK zu installieren, die es einigen Apps ermöglichte, vom Benutzer nicht autorisierten Root-Zugriff zu erhalten.

Fazit

Die Ära der Rooting-Apps ist längst vorbei. Die Rooting-Apps funktionieren nicht mehr und wenn Sie sie in neueren Android-Versionen verwenden, besteht die Gefahr, dass Sie Ihr Gerät sanft beschädigen und wahrscheinlich alle Ihre Daten verlieren. Wenn Sie sie auf unterstützten Android-Versionen verwenden, funktionieren sie die meiste Zeit, es gibt jedoch Datenschutz- und Sicherheitsbedenken, die Sie berücksichtigen sollten, bevor Sie fortfahren.

Ich hoffe, meine Forschung würde in Zukunft jemandem helfen, der das gleiche Problem wie ich hat. :) :)

Überschall
quelle