Logo nl.androidermagazine.com
Logo nl.androidermagazine.com

Er zit geen magie in de wortel

Inhoudsopgave:

Anonim

Een deel van het mysterie van de superuser verwijderen

Toen ik vorige week op internet las, merkte ik dat verschillende, overigens prima publicaties, een fout maakten die veel te veel mensen maken - beweren dat het rooten van je Android-telefoon of -tablet of -horloge (we kunnen de horloges niet vergeten) de zaken beter doen lopen.

Dat is een val waar veel te veel mensen in vallen, want met superuser-toegang (root) op elke Linux-gebaseerde machine kun je dingen doen die je apparaat verbeteren. Je kunt er ook dingen mee doen die een apparaat slechter doen werken, of zelfs alles kapot maken en je een stapel koper en silicium geven die nooit meer iets zal doen. Het oude gezegde van "met grote kracht komt grote verantwoordelijkheid" is echt waar.

Maar op zichzelf doet toegang met supergebruikers niets.

Alles is een bestand

In elk op Unix gebaseerd besturingssysteem, of het nu Ubuntu of Android of zelfs OS X is, kun je gerust zeggen dat alles een bestand is. Wanneer u een thumb drive aansluit op een USB-poort, wordt één bestand gelezen en wordt een ander bestand gemaakt of gevuld. Wanneer u het volume van de geluiden die naar uw luidsprekers gaan wijzigt, wijzigt u een bestand dat wordt gelezen om de geluidsserver te vertellen hoe luid het moet zijn. Dit gaat nog dieper in het besturingssysteem. Als je wilt zien hoeveel batterij je nog hebt, lees je een bestand waar de kernel een waarde voor heeft geschreven. Als je de CPU-governer wilt veranderen, je raadt het al, schrijf je de nieuwe waarde in een bestand.

Je kunt dit zelf zien op je Android. Maak verbinding met een computer, open een ADB-sessie en kijk in de map / proc of / sys. Dit is een set "instructies" die worden gelezen door en geschreven door de kernel met informatie over je batterij, je CPU en allerlei andere informatie die achter de schermen gebeurt wanneer je Android actief is. En als we die bestanden en mappen kunnen manipuleren, kunnen we dingen veranderen.

Root is een gebruiker met toestemming om dingen te breken

Omdat alles een bestand is, kan het kunnen maken, verwijderen of wijzigen van deze bestanden een dramatisch effect hebben op zowat alles in je Android. Het is nooit een goed idee om een ​​gebruiker toe te staan ​​bestanden te wijzigen die niet van hem zijn, dus Android gebruikt machtigingen om te beslissen wie wat kan doen. Nee, niet zoals de rechten die u verleent wanneer u een app installeert. We hebben het over toestemming om een ​​bestand in het systeem te lezen, te schrijven of uit te voeren.

Je hebt misschien je telefoon gekocht, maar je bent niet de eigenaar van systeembestanden en mappen. Die horen bij het systeem, en je 'spul' bevindt zich op een andere plek waar je ermee mag rondhangen. De systeemgebruiker mag ook rondhangen, omdat hij misschien dingen moet aanpassen die van jou zijn, omdat het is opgeslagen op die van hem. Dit is hoe Unix-gebaseerde machtigingen werken. Je ruimte geeft je toestemming om bijna alles te doen, en het kan andere gebruikers toestemming geven om alles te doen. In de ruimte die niet van jou is, mag je alleen kijken terwijl de systeemgebruiker het allemaal kan, omdat het hun ruimte is.

Dat is waar de root-gebruiker binnenkomt. Het kan alles doen met elk bestand of elke map op je Android. Of je Linux-bureaublad. Of je iMac. Nergens heeft root geen volledige lees-, schrijf- en uitvoeringsrechten. Root mag uw bestanden verwijderen. Root mag zeggen dat je half lege batterij echt vol is door te liegen en elke gewenste waarde in dat bestand in te voeren. Root mag de CPU vertellen om nooit te slapen of nooit wakker te worden, of te draaien op elke snelheid en spanning die door de kernel wordt ondersteund. Root kan alledaagse taken uitvoeren die iedereen begrijpt, maar ook echt technische dingen die gewoon een hoop hexadecimale getallen zijn wanneer we proberen te gluren en te zien wat het doet.

Met andere woorden, root mag dingen doen om je Android beter te laten werken en dingen te doen die je Android slechter maken.

Wat root niet kan doen, is elk van deze dingen vanzelf laten gebeuren. Je telefoon roeien betekent gewoon dat er nu een gebruiker is die dingen mag doen die normale gebruikers niet kunnen. Je moet ofwel opdrachten invoeren terwijl je als root fungeert (via een terminal-app of de ADB-interface) of applicaties of scripts installeren die dingen automatiseren en opdrachten met tussenpozen of via een GUI kunnen uitvoeren. Wanneer u Root Explorer gebruikt voor aap met systeembestanden, stuurt u gewoon bestandsopdrachten als root wanneer u op knoppen tikt. Het lijkt magisch omdat je niets moeilijkers hoefde te doen dan een app van Google Play installeren.

De beveiligingsfactor

Niets doet me ineenkrimpen alsof ik iemand zie vragen om een ​​app om hun telefoon te rooten omdat ze al deze SDK- en ADB-dingen niet begrijpen. Dat zijn de gebruikers waar de slechteriken gek van worden, omdat ze mensen nodig hebben die gewoon op dingen klikken, zodat ze je bankwachtwoord kunnen stelen. En er zijn er genoeg.

Omdat alles een bestand is, en root alles met elk bestand op je Android mag doen, is het eenvoudig om gevoelige informatie uit een beveiligd gebied te halen en ergens te plaatsen waar het naar een server aan de andere kant van de wereld kan worden teruggestuurd. Het enige dat u hoeft te doen, is het vertellen dat het gaat gebeuren, en het verbergen van de opdrachten om het te laten gebeuren in een spel dat u van blackdroid heeft gepirateerd, is heel eenvoudig.

Wanneer u een nieuwe Android koopt, is root niet voor uw eigen bestwil ingeschakeld. Ik doe dit Unix-gebaseerde ding al meer dan 20 jaar, en ik heb het nog steeds verknald. Je zult het verpesten als je de kans krijgt. We zullen het allemaal verpesten omdat het zo gemakkelijk te verpesten is. Wat niet eenvoudig is, is alles oplossen. Omdat de mensen die deze Androids bouwen, geen software zullen leveren om dingen terug te zetten naar de fabriekstoestand - het allerbeste aan het Nexus-programma van Google - kun je niet zomaar huilen en alles vers laden als je het verprutst en een apparaat hebt dat niet rennen, of loopt goed, maar is onzeker en je deelt je levensdetails met iemand in Estland of Oregon.

We hoeven het niet leuk te vinden en we kunnen er alles aan doen om deze voorzorgsmaatregelen ongedaan te maken, maar out-of-the-box heeft je telefoon geen root omdat je niet te vertrouwen bent met root. Vergeet niet dat mensen zoals HTC of Verizon geen idee hebben of u een voorzichtige gebruiker bent of iemand die click-happy wordt. We worden allemaal behandeld alsof we click-happy zijn. Bedankt, Obama.

Het middelste punt (en naar mijn mening de beste methode) is wanneer je de bootloader op je telefoon kunt ontgrendelen - na waarschuwingen dat als je dingen verprutst, je pech hebt - en alle gewenste firmware installeert. Dit is hoe Nexus-apparaten en zogenaamde ontwikkelaarsversies uit de fabriek komen. Je kunt het breken als je wilt, en de fabrikant zal je niet proberen te stoppen - of het kan je schelen als je het breekt. Ik vind ook dat een bootloader-ontgrendeltoken moet worden verstrekt wanneer je apparaat volledig is betaald, maar dat is een ander artikel voor een andere keer.

Weten hoe dit soort dingen werkt is belangrijk. Niet alleen om te voorkomen dat je je nieuwe $ 600-telefoon kapot maakt, maar om veilig te blijven terwijl je hem gebruikt. Houd er vooral rekening mee dat het rooten van je telefoon je alleen toestemming geeft om iets stoms te doen en nooit iets op zichzelf doet.