Android Zentrale

Was bedeutet eigentlich das Rooten Ihres Telefons?

protection click fraud

Wir freuen uns über Ihre Fragen. Es ist immer gut, wenn wir uns gegenseitig helfen können, und wir lernen selbst etwas, wenn wir nach Antworten suchen. Auch wenn wir nicht die Zeit finden, alle zu beantworten, kommt es manchmal vor, dass eine bestimmte Frage so oft auftaucht, dass sie eine ausführliche Antwort verdient.

"Was macht Wurzel bedeuten?“ ist eine dieser Fragen. Das Konzept mag für einige von uns einfach sein, aber für viele Leute, die noch keine Zeit damit verbracht haben, mit Android oder einem anderen berechtigungsbasierten Betriebssystem herumzuspielen, ist es etwas, worüber man Fragen stellen kann. Ich werde versuchen, sie alle so gut wie möglich zu beantworten.

Berechtigungen

Dateiberechtigungen

Bevor wir root definieren, ist es wichtig zu verstehen, warum es existiert und wie es funktioniert. Das liegt daran, dass Android Berechtigungen (genauer gesagt Linux-basierte Berechtigungen) in der Dateistruktur verwendet. Jede Datei, jeder Ordner und jede Partition verfügt über eine Reihe von Berechtigungen. Diese Berechtigungen entscheiden darüber, wer eine Datei lesen (den Inhalt anzeigen oder darauf zugreifen kann, ohne ihn zu ändern), in eine Datei schreiben (ändern kann). Inhalt dieser Datei oder erstellen Sie eine neue Datei in einem Ordner oder einer Partition) und führen Sie eine Datei aus (führen Sie die Datei aus, wenn es sich um einen Dateityp handelt, der ausgeführt werden kann, z. B. eine App). Dies geschieht basierend auf Benutzern und Berechtigungen – bestimmte Benutzer haben Zugriff, während Benutzern, die nicht über die richtigen Berechtigungen verfügen, der Zugriff verweigert wird.

Wenn Sie Ihr Telefon zum ersten Mal einrichten und einschalten, wird Ihnen eine Benutzer-ID zugewiesen. Meldet sich ein anderer Nutzer über Google an, wird ihm ein zugewiesen anders Benutzer-ID. Wenn eine App auf Ihrem Telefon installiert wird, wird ihr auch eine eigene Benutzer-ID zugewiesen. Das System selbst ist ein Benutzer und andere Prozesse, die auf Ihrem Telefon ausgeführt werden müssen, verfügen möglicherweise über eine eigene Benutzer-ID. Alles, was irgendetwas mit Dateien auf Ihrem Android machen kann, ist ein Benutzer.

Mithilfe eines Systems aus Benutzern und Berechtigungen verfolgt Android, wer was tun darf.

Nehmen wir an, Sie installieren eine Messaging-App. Bei der Installation wird ihm eine Benutzer-ID zugewiesen. Außerdem erhält es einen eigenen Platz auf Ihrer Datenpartition, auf den nur es Zugriff hat. Sie haben die Berechtigung, die App auszuführen, und wenn die App ausgeführt wird, hat sie die Berechtigung, auf ihren eigenen Datenordner und ihre eigenen Dateien zuzugreifen. Die App fordert möglicherweise auch die Erlaubnis an, auf Dinge wie Ihr Adressbuch, Ihre SD-Karte oder Ihre Fotobibliothek zuzugreifen. Wenn Sie diese Anfragen mit „Ja“ beantworten (oder den Berechtigungen auf älteren Android-Versionen zustimmen), wird die Benutzer-ID der App gewährt Berechtigung für die Datendateien dieser Dinge, das heißt, es kann den Datenordner und seinen Inhalt einsehen und diese möglicherweise ändern oder hinzufügen neue Dateien. Die App kann nicht auf Datendateien zugreifen, für deren „Ansicht“ sie keine Berechtigung hat. Das bedeutet (in unserem Beispiel), dass es beispielsweise nicht auf die Einstellungsdatenbank zugreifen oder auf den Datenordner einer anderen Anwendung zugreifen kann. Dafür wird häufig der Begriff „Sandbox“ verwendet – Apps sind in einer Sandbox untergebracht und können nur in den Sandboxen abgespielt werden, für die sie eine Berechtigung haben.

Für Dateien, die Programme sind und ausgeführt werden können (z. B. Apps), gilt das gleiche Berechtigungsmodell. Ihre Benutzer-ID ist berechtigt, die von Ihnen installierten Apps auszuführen, während Sie angemeldet sind. Der Systembenutzer hat die Berechtigung, sie auszuführen, und andere Benutzer auf Systemebene haben möglicherweise Zugriff auf die Apps oder bestimmte Prozesse, die die Apps verwenden. Andere Apps können keine Apps starten, für die sie keine Startberechtigung haben. Wenn Sie einen sekundären Benutzer hinzugefügt haben, hat dieser keinen Zugriff auf Ihre Apps oder Dateien und umgekehrt. Auf Ihrem Telefon befinden sich Dateien, Ordner und Apps, die Ihrer Benutzer-ID entsprechen nicht Sie haben die Erlaubnis, sie anzusehen, zu ändern oder auszuführen. Normalerweise erfordern diese Teile von Android Berechtigungen auf Systemebene (die Systembenutzer-ID), um etwas damit zu tun, und Sie sind nicht der Systembenutzer oder ein Benutzer, der über Berechtigungen auf Systemebene verfügt.

Berechtigungen wechseln

SuperSU

Obwohl es technisch möglich ist, die Art und Weise, wie Ihr Telefon startet, und die Dateien, die es zum Starten des laufenden Systems verwendet, zu ändern und Ihrer Benutzer-ID erhöhte Berechtigungen zuzuweisen, ist das weder sicher noch praktisch. Aber Android (und die meisten Unix- oder Linux-basierten Systeme) haben einen sogenannten Root-Benutzer und unterstützen den SubstituteUser binär (stellen Sie sich eine Binärdatei als eine kleine App vor), um Benutzer-IDs zu ändern. Diese werden verwendet, um das System im Kern zu verwalten eben.

Weil die Leute, die Ihr Telefon hergestellt haben, nicht möchten, dass Sie einfachen Zugriff auf die Root-Benutzer-ID haben – und das sind nicht alle Gründe dafür egoistisch, weil es auch Sie und Ihre privaten Daten schützt – die SubstituteUser-Binärdatei ist in den meisten Builds von nicht enthalten Android. Ohne SubstituteUser können wir unsere Benutzer-ID nicht wechseln. Die meisten Dinge auf Systemebene in Android haben übrigens ähnliche einfache Namen. Die Kernsicherheit (Dateien im Bootloader und/oder im Kernel selbst) ist auch so aufgebaut, dass Sie im Rahmen von SELinux (SSicherheit-Enhanced Linux – ich habe Ihnen gesagt, die Namen sind einfach) Kernel-Modul. Einige Telefone (da fällt mir das Knox von Samsung ein) verfügen über weitere Schutzfunktionen, und fast alle Unternehmen, die Android-Geräte herstellen, verlangen, dass der Bootloader aktiviert sein muss, um Änderungen vornehmen zu können entsperrt, sodass diese Dateien geändert werden können und Sie die Benutzer-IDs wechseln können. Einige Telefone, wie das BlackBerry Priv, gehen sogar noch einen Schritt weiter und starten nicht mehr, wenn wir etwas ändern (selbst wenn wir... könnte).

Um Root zu werden, benötigen Sie eine Möglichkeit, Ihre Benutzer-ID zu ändern.

Sobald wir das alles überwunden haben – entweder indem wir den Bootloader mit autorisierten Mitteln entsperren oder eine Art Exploit nutzen – Wir können die SU-Binärdatei (SubstituteUser) an einer Stelle platzieren, an der sie ausgeführt werden kann, wenn sie zum Ausführen aufgerufen wird – das nennt sich a WEG. Wenn sich eine App im PATH Ihrer Benutzer-ID befindet, wird sie ausgeführt, ohne dem System genau mitzuteilen, wo sie sich befindet. Sie müssen außerdem sicherstellen, dass sich die SU-Binärdatei an einem Ort befindet, an dem Ihre Benutzer-ID die Berechtigung zum Ausführen (Ausführen) von Dateien hat. Jede andere App (bei Google Play gibt es viele Apps, die Root-Berechtigungen benötigen) benötigt ebenfalls den gleichen Zugriff. Wenn Sie eine Methode zum Rooten Ihres Telefons verwenden, wird das alles von den Leuten erledigt, die die Root-Methode entwickelt haben.

Sobald alles vorhanden ist, können wir die SU-Binärdatei ausführen (oder eine andere App kann die SU-Binärdatei ausführen).

Root-Zugriff erhalten

Ich bin Groot

Hier kommt Root ins Spiel. Die SU-Binärdatei verwendet bei der Ausführung Flags, um dem System mitzuteilen, zu welcher Benutzer-ID Sie wechseln möchten. Wenn ich beispielsweise die SU-Binärdatei auf meinem Ubuntu-Computer wie folgt ausführe: „su Jim -c nano“, führe ich den Nano-Befehl als Benutzer Jim aus (nachdem ich Jims Passwort angegeben habe). Wenn Sie die SU-Binärdatei ohne Flags oder Argumente ausführen, werden Sie zum Root-Benutzer weitergeleitet. Normalerweise müssten Sie ein Passwort angeben, aber da „root“ unter Android ein ungenutzter Benutzer ist, hat es kein Passwort. Wenn Sie den Befehl „su“ ausführen, wechseln Sie zum Benutzer root, weisen Ihnen die Benutzer-ID 0 zu und werden in die Root-Gruppe aufgenommen. Sie sind jetzt der Superuser.

Als Superuser können Sie mit jeder Datei, jedem Ordner oder jeder Partition auf Ihrem Android alles tun. Mit „irgendetwas“ meinen wir buchstäblich alles. Sie können Bloatware-Apps und wichtige Systemdateien, die Ihr Telefon beschädigen, entfernen. Sie können auch Dinge an der Hardware vornehmen, wie z. B. die CPU-Frequenz ändern und Ihr Telefon für immer ruinieren.

Root ist der Superuser, der alles tun kann. Und wir meinen alles.

Apps können das Gleiche tun. SU wird dort platziert, wo es sich im Anwendungspfad befindet, und jede App kann es aufrufen und ausführen. Diese App verfügt dann über Superuser-Berechtigungen und kann mit jeder Datei an jedem Ort auf Ihrem Telefon alles tun, was sie will. Das ist der Grund, warum die Leute, die Ihr Telefon hergestellt haben, und die Unternehmen wirklich nicht möchten, dass Sie diese Zugriffsebene haben Wer es Ihnen ermöglicht, den Bootloader zu entsperren und Dinge zu ändern, legt die SU-Binärdatei trotzdem nicht auf Ihrem Telefon ab Standard. Root-Zugriff ohne Kontrolle darüber, wer oder was ihn verwenden darf, ist gefährlich für die Software Ihres Telefons und Ihre persönlichen Daten.

Aus diesem Grund müssen Sie eine App installieren, die Sie dazu zwingt, Root-Zugriff zu gewähren, wann immer Sie oder eine andere App versuchen, die Superuser-Berechtigungen aufzurufen. Wenn Sie eine Root-Methode für Ihr Telefon verwenden, ist diese in den meisten Fällen zusammen mit einigen anderen nützlichen Binärdateien wie dem BusyBox-Toolset enthalten. Wenn Sie die Dinge von Hand gemacht haben, müssen Sie selbst eines installieren. SuperSU von Chainfire in Google Play ist ein guter Anfang.

Krimskrams

Viele Telefone und einige Root-Methoden machen die Dinge etwas anders (Android 4.3 brachte viele Änderungen) und erfordern Skripte oder einen Daemon (Sie werden Wörter wie daemonsu oder su.d erwähnt sehen), anstatt einfach die SU-Binärdatei einzufügen Ort. Diese werden verwendet, um SubstituteUser aufzurufen, sodass Sie wie bei der rohen Binärmethode zum Root-Benutzer wechseln können. Die Leute, die herausgefunden haben, wie man Ihr Telefon rootet, haben das alles geklärt und auf der Benutzerseite wird es genauso funktionieren.

Es ist auch möglich, einige Android-Geräte vorübergehend zu rooten. Das bedeutet, dass Sie Superuser-Berechtigungen haben und einige Dinge tun können, die Sie tun müssen, aber ein Neustart entzieht Ihnen den Root-Zugriff. Ebenso können Sie ein „Shell-Root“ haben, über das Sie nur auf den Root-Benutzer zugreifen können adb von deinem Computer.

Abschließend möchte ich betonen, dass Sie, wenn Sie diese Fragen haben, überlegen müssen, ob Sie bereit sind, ein gerootetes Android-Gerät zu haben. Wir machten keine Witze, als wir sagten, dass es mit dem SuperUser-Zugriff leicht ist, Ihr Telefon zu ruinieren. Es gibt keinen Grund, sich zu schämen, dass Sie ein wenig lesen oder noch ein paar Fragen stellen müssen, bevor Sie Dinge tun, die Ihr Telefon beschädigen oder einer zufälligen Rouge-App Zugriff auf alle Ihre Daten gewähren können.

Dafür sind wir hier.

instagram story viewer