Wie kommt es, dass Rooten immer möglich ist?

Nachdem wir einige Zeit damit verbracht haben zu recherchieren, was eigentlich hinter dem Rooten eines Android-Telefons steckt, ist der Hauptgrund, der zum Rooten der Fähigkeit führt, eine inhärente Schwachstelle im Linux-Kernel, die zu dem Exploit führt und dazu führt, dass die Binärdatei „su“ installiert wird.

Meine Frage ist: Wie kommt es, dass das Betriebssystem noch nicht gehärtet ist? Wer ist verantwortlich? Wir sprechen hier von einem Linux-Betriebssystem, das als „sicher“ gilt. Dennoch finden die Leute immer einen Weg, um in Geräte einzudringen und sie zu rooten.

Linux ist nicht von Privilegieneskalations-Exploits ausgenommen. Code weist Fehler auf, und sogar Desktop-Linux-Exploits werden regelmäßig entdeckt. Was für eine Antwort suchst du hier?
Würden Sie nicht sagen, dass die für Android-Telefone verwendeten Linux-Versionen im Vergleich zu einer Desktop-Variante von Linux anfälliger für priv-esc-Exploits sind? Außerdem sind mir nicht ALLE Exploits bekannt, die eine Privilegienausweitung ermöglichen. Wenn Sie etwas Licht ins Dunkel bringen könnten, ob diese Exploits um einige bestimmte Dienste/Prozesse dicht sind, die bereits als Root ausgeführt werden, wäre das für mich hilfreich, um zu verstehen, warum Die Leute waren nicht erfolgreich darin, das Betriebssystem ausreichend zu härten, um dies zu verhindern.
Nicht wirklich, nein. Eine schnelle Google-Suche zeigt Quellen mit einer Aufzeichnung von mindestens 200 Kernel-Schwachstellen, die in Linux gefunden wurden (seit Beginn der Datenaufzeichnung). Die neueste, die ich auf dieser Seite sehe, hat eine Aktivität, die etwa 2 Wochen alt ist (die "Bypass"-Seite). Android-Geräte können möglicherweise länger verweilen , da die Netzbetreiber nur langsam aktualisiert werden, aber die grundlegende Antwort auf Ihre Frage scheint immer noch zu lauten: "Code hat Fehler, einige sind ausnutzbar". Vulns können auch außerhalb des Kernels existieren.
Rooten ist nicht immer möglich.
Ich bin mir nicht bei allen Telefonen sicher, aber ist das Rooten aufgrund des eingebauten Wiederherstellungsmodus nicht möglich? Für mich scheint der Wiederherstellungsmodus das Analogon zu einem PC-BIOS zu sein. Die Tatsache, dass Sie Knoppix auf einem PC installieren und Zugriff auf die Maschine haben können, ist nicht wirklich eine Anklage gegen die Linux-Sicherheit, sondern ein BIOS, das nicht eingeschränkt ist (und für die meisten Zwecke wirklich nicht sein muss).

Antworten (2)

Es ist nicht wirklich das "Linux-Betriebssystem", es ist der Linux-Kernel. Die Schwachstelle liegt nicht unbedingt im Betriebssystem oder im Kernel. Es werden verschiedene Exploits verwendet. Ich erinnere mich, dass einige Geräte in der Lage waren, jede Zip-Datei in die Wiederherstellung zu laden, wenn sie von einer signierten Zip-Datei "vorangestellt" wurde. Also haben sie eine signierte Zip-Datei verwendet und am Ende der Datei eine unsignierte Zip-Datei hinzugefügt. Ich denke, dieser Exploit war für den Original Droid.

Keine Software ist 100 % fehlerfrei. wäre dies der Fall, müsste selbst ein ausgereiftes Produkt wie Windows nicht jeden Monat Sicherheitspatches veröffentlichen.

Ganz gleich, wie schlau der Entwickler ist oder glaubt, höchstwahrscheinlich gibt es jemanden, der klüger ist (oder zumindest mehr über das Ausnutzen von Code weiß).

Wenn Exploits entdeckt werden, hat Google (oder der Hersteller) sie (normalerweise) gepatcht. Da viele Geräte jedoch nur selten Updates erhalten, bleibt der Exploit verfügbar.

Ryan hat recht. Viele Exploits nutzen nicht den Kernel, sondern einige Daemon-Software, die als Root ausgeführt wird.
Nun, dann ... es ist die uralte Antwort, dass, wenn jemand etwas baut, es IMMER jemanden geben wird, der es kaputt machen kann :) Obwohl es für mich immer noch nicht greifbar ist, dass diese großen Organisationen (Google, sowie Gerätehersteller ) können dies nicht verhindern. Nun, das ist nur ein persönlicher Gedanke!
@asudhak Glaubst du das wirklich? Ich bin Softwareentwickler für ein Unternehmen und ich kann Ihnen sagen, dass wir viele Fehler hatten, die von unserer QA gefunden wurden, aber nach unserer letzten Veröffentlichung wurden Fehler in der Produktion gemeldet. Außerdem, wie gesagt, wenn es keine Bugs gäbe, dann müsste Microsoft keinen Patch Tuesday haben .
Ich muss Ryan zustimmen - Sie scheinen die Größe eines Unternehmens mit einer Art Unfehlbarkeit gleichzusetzen. Bis der perfekte Mensch geboren ist, wird es immer Bugs geben, da sie von Natur aus auf Programmierfehler zurückzuführen sind (und jeder, egal wie geschickt er bei einer bestimmten Aufgabe ist, wird Fehler machen).
@RyanConrad - Tatsächlich werden Exploits in einigen Telefonen NICHT behoben. Zum Beispiel hat das letzte DROID3-Update, das ich bekommen habe, NICHT das Loch gepatcht, das zum Rooten der Telefone verwendet wurde, sodass ich nach dem Update kein Problem (und keine Wartezeit) hatte, mein Telefon neu zu rooten.
@MichaelKohne das stimmt, ich habe meine Antwort geändert, um zu reflektieren, dass sie sie normalerweise patchen.

Rooting ist immer möglich, da Rooting, auch bekannt als Benutzerwechsel, auch bekannt als setuid , eine der grundlegendsten Funktionen von Unix und Linux ist.

Bei vielen Geräten beinhaltet das Rooten eigentlich keine Sicherheitslücken; Root-Methoden, die das Flashen einer Datei über den Bootloader und/oder das ROM-Updater-Dienstprogramm erfordern (z. B. Samsungs Odin, HTCs RUU usw.), stellen keine Sicherheitsverletzung dar, da es sich um legitime Funktionen handelt, die speziell für das Flashen von ROMs entwickelt wurden. Eine große Anzahl von Geräten wird auf diese Weise gerootet.

Auf diesen Geräten ist das Rooten möglich, da die Hersteller tatsächlich die Möglichkeit dafür bereitstellen. Sie machen das Rooten sicherlich nicht zu einem einfachen One-Click-Prozess (aus guten Gründen; die meisten Leute, die rooten wollten, brauchen eigentlich kein Root), aber sie bieten eine offiziell sanktionierte Methode zum Rooten unter der Bedingung, dass Ihre Garantie erlischt (offizielles Rooten Methode hinterlässt oft eine dauerhafte Markierung, um autorisierte Techniker wissen zu lassen, ob ein Telefon gerootet wurde).

Es gibt nicht viele Rooting-Methoden, die tatsächlich Sicherheits-Exploits verwenden (z. B. rageagainstthecage , zergRush , gingerbreak usw.), und diese Exploits werden oft in eine Form umgepackt, die für die breite Masse viel einfacher zu verwenden ist (z. B. SuperOneClick). Rooting-Through-Exploits sind oft Hit and Miss, da sie ziemlich schnell für Geräte gepatcht werden, die sich noch innerhalb der Update-Periode befinden; aber manchmal bieten sie Vorteile, wie z. B. das Vermeiden des Auslösens der Garantiekennzeichnung.

Das Problem wird ein wenig komplizierter, wenn die technischen Nachrichten und Blogs berichteten, dass ein Entwickler Tutorials oder Tools geschrieben hat, um den legitimen Rooting-Prozess zu vereinfachen. Sie verstehen oft die Art der Rooting-Methode nicht, und ich habe sie sicherlich noch nie zwischen legitimen Rooting-Methoden und dem Rooten durch Sicherheits-Exploits unterscheiden sehen, schlimmer noch, sie melden auch oft das Umpacken eines bestehenden Exploits und die Portierung eines bestehenden Exploits auf einen neuen Gerät, als wären sie völlig andere Exploits. Daher die Verwirrung, die den Anschein erweckt, dass Android mehr Exploits zu haben scheint, als es wirklich tut.