[Q] How does "Android Root" works ? - Android Q&A, Help & Troubleshooting

Hello XDA-Forum users,
I ask you a question: How does Android Root works ?
I mean, for example, How does it works in Nexus One ?
This would be an understanding question to know more about how I get root from my Phone (Nexus One, for example) from scratch, from sources.

upupupupupup

Rooting basics:
http://lifehacker.com/5342237/five-great-reasons-to-root-your-android-phone
For details on how to do it on your device, Google or use the forum search. Lots of rooting information that is device dependent out there.

It basically gives your phone permission to do almost anything. It is similar to giving a user in Windows Administrator rights. It is called super user. You can do many things such as removing unwanted apps and overclocking.

This is not what I mean, I asks for an explaining in which the question is "How the root is possible? What active the root ?" Probably a kernel exploit, or stuff like that, to understand the underground passage to take it, from an hack view.
So, How works a root utility (such SuperOneClick) to set gid to 0 ?

Valid question, I am also interested in learning this.
In other words, if I were to perform the rooting manually, where can I find such info?

And some of the question is why su must be in some diredctories, and can't be run from /data/local/tmp for example?

Someone can enlighten us?

diego.stamigni said:
Someone can enlighten us?
Click to expand...
Click to collapse
The general approach is taking advantage of bugs in the android OS
The process works something like this
User crafts some special data that contains a "payload" (the script/executable that we want to run)
User runs a system process that has root privileges and gets it to open the special data
The bug causes the system process to get confused by the data, and ends up running the embedded script
The embedded script runs with the same privileges as the system process, and thus can stuff that normal users aren't allowed to do (e.g. installs the SU app)
Commonly, things such as buffer overflows are used

So after gaining root access, which apps can run as root?
Or the user becomes root(as in desktop), and can run all types of apps?
Can root app(run as root) access everything?? Or app permission still applies?
Is it that system exploit is always used to run root apps?
can someone explain in technical details? not how to root.
are rooting programs open source??

What is the root procedure
Bayint Naung said:
So after gaining root access, which apps can run as root?
Or the user becomes root(as in desktop), and can run all types of apps?
Can root app(run as root) access everything?? Or app permission still applies?
Is it that system exploit is always used to run root apps?
can someone explain in technical details? not how to root.
are rooting programs open source??
Click to expand...
Click to collapse
Hi guys!
I have the same question and after searching and asking find this!
it is good!!
hope it works!
http://stackoverflow.com/questions/...hat-are-the-pre-requisites-for-it-to-work-wha
also look at the suggestedpages at the right of this page!

Related

Will the HERO be a ROOTED phone?

I used to work with WM 5 & 6 phones, had plenty of them and enjoyed them all until I discovered the HTC Magic. What a giant leap forward!! Especially when using Google Apps as we do. I am however a bit reluctant to root the magic as it doesn’t seem like a walk in the park. I really miss being able to backup SMS messages and all the other apps that only run on rooted devices.
So my question is if the HERO is a rooted device or not.
Does anybody have an answer to this question? I’m so tempted to preorder one
the answer to the question should be probably yes seing how people have the system dump files. so its just a matter of time
In the meantime, you can back up SMS and MMS with GBackup from Market - backs up to Gmail automatically - can also back up call log and pics...
Dayzz
Apologies for my ignorance but what does rooting the phone mean? I've just come from using a Windows mobile phone - which I have been using since the original SPV!
Root access comes from Unix - Linux operating system speak (which is what Android runs on). Root basically means administrator privileges. So if you can run under root access then you have privileges to change/modify/do anything.
In the phone out of the box you do not have root to protect the phone from modifications that could brick it. People who do modifications under root access need to either know what they are doing, or follow a script from someone who knows what they are doing.
Ofcourse it's not 'rooted' when you unpack it from the box.
Eventually I'll guess the Hero will be rooted, but when and how... we'll just have to wait.
dipje said:
Ofcourse it's not 'rooted' when you unpack it from the box.
Click to expand...
Click to collapse
Easy son... He asked, I provided.
barryallott said:
Easy son... He asked, I provided.
Click to expand...
Click to collapse
wasn't ment to be offensive in any way ...
barryallott said:
Root access comes from Unix - Linux operating system speak (which is what Android runs on). Root basically means administrator privileges. So if you can run under root access then you have privileges to change/modify/do anything.
In the phone out of the box you do not have root to protect the phone from modifications that could brick it. People who do modifications under root access need to either know what they are doing, or follow a script from someone who knows what they are doing.
Click to expand...
Click to collapse
But as in Unix /Linux you use an ordinary login for normal day to operations and su to to use root. You have to consciously change your privelidges which is safer!!
Simon
Lots of useful info on allsorts, including rooting and other hacks here
http://forum.xda-developers.com/showthread.php?t=542452
Daisy xx

[Q] Rooting, bootloaders and custom ROMs?

Hi, I would like to have root access to my phone, but not necessarily with a custom ROM. I would also prefer to not change my bootloader.
What exactly is rooting? Is it replacing the whole system image with an image that gives the user root access? Or is it just like enabling sudo for the user? Or is a smaller part replaced? (I am somewhat familiar with electronics, computers and Linux, but I find the Android hacking a bit confusing )
Also, is it possible to run stock Android, only with root access? Will the access be lost when upgrading?
c3c0l0n said:
Hi, I would like to have root access to my phone, but not necessarily with a custom ROM.
DEV section rooting post /
What exactly is rooting?
root is the user account in Linux with all privileges. The root user can edit anything on the system. For safety reasons, users do not have all those privileges. When you root your phone, you will gain write access to areas of the phone you couldn't previously access and are allowed to run more commands in the terminal. Because applications do not get a lot of privileges, some of them require you to root the device in order for them to function properly (or fully).
Also, is it possible to run stock Android, only with root access?
Yes and Yes lost root on upgrade usually .
jje
Click to expand...
Click to collapse
Thank you. How is the rooting performed? Is only an ACL modified, or is a more fundamental part of the system changed (like the kernel, bootloader etc)?
I know that a custom ROM might be unstable/experimental, but does the same apply for rooting, or is the modification so small that one could expect the exact same stability as in the stock ROM?
c3c0l0n said:
Thank you. How is the rooting performed? Is only an ACL modified, or is a more fundamental part of the system changed (like the kernel, bootloader etc)?
I know that a custom ROM might be unstable/experimental, but does the same apply for rooting, or is the modification so small that one could expect the exact same stability as in the stock ROM?
Click to expand...
Click to collapse
All your questions are explained in detail in the Development section
Sorry, I did not find it. However, I read this without getting smarter. This video suggests that rooting is a process that does something with your phone without replacing everything. An exact list of what the rooting tools do would be perfect
Not all tools do the same thing. To get a specific answer, you will have to ask the person that came up with whatever rooting tool you are referring to. Some phones take more to root than others.

[Q] what does rooting actually do ?

hi. i can't believe i'm the first person to ask this but i've searched as best i can through these forums, and on google, and cannot find a definitive answer. there are lots of pages giving high level descriptions of rooting a phone like "gives admin access", "allows access to the root filesystem", etc. but, when you root a phone, what actually happens ? does it simply make the "su" binary available so that apps can call it to access the root user ? eg. i've got a samsung galaxy s2, if i install an insecure kernel, then add su to /system/xbin, and then reinstall a stock kernel, is that technically a rooted phone ? this is actually what i did on my phone, although i installed superuser and busybox from the market after adding su. i am aware that there are various threads in the sgs2 forums on how to root, i'm just using my phone as an example, i'm just trying to understand generically what is meant when someone says a phone has been rooted. cheers.
Full control over your system
Ability to alter system files. You can replace many parts of the "Android Core" with this including:
Themes
Core apps (maps, calendar, clock etc)
Recovery image
Bootloader
Toolbox (linux binary that lets you execute simple linux commands like "ls") can be replaced with Busybox (slightly better option)
Boot images
Add linux binaries
Run special apps that need more control over the system
SuperUser (lets you approve or deny the use of root access to any program)
Task Manager For Root (Lets you kill apps that you otherwise could not kill)
Tether apps (like the one found at [android-wifi-tether.googlecode.com])
<there are more but I cannot think of any right now>
Backup your system
You can make a folder on your sdcard and backup all of your .apk files to your sdcard (helps if an author decides to "upgrade" you to a version that requires you to pay to use the version you just had)
Relocate your (browser/maps/market) cache to your /sdcard
Relocate your installed applications to your /sdcard
Reboot your phone from the terminal app easily (su <enter> reboot <enter>)
Copied and pasted from google... it is your friend.
thanks for the response however, i'm trying to understand what actually changes on the phone when you root it, rather than simply the benefits of rooting a phone.
Carrot Cruncher said:
thanks for the response however, i'm trying to understand what actually changes on the phone when you root it, rather than simply the benefits of rooting a phone.
Click to expand...
Click to collapse
Unrooted phone is like logging on as user in a computer. By rooting you have "administrative" rights, just like using sudo command in Ubuntu. Some binaries which are important in gaining administrative rights are installed in the phone.
sent from my nokia 3210
If you come from Windows, you're familiar with the Administrator account. A user that can do everything on the system, as opposed to other users than only have limited privileges. In Linux, that account is called "root". That's all there is to it. It's a user that can do everything on the system.
@Panos_dm: Actually, it's *not* like using sudo. Sudo gives elevated privileges to your existing user account, whereas "root" is a whole separate account.
Nope, sudo actually switches users
i'm a linux user and have been a linux admin in the past so understand the difference between su and sudo. sorry to sound pedantic but i'm still not clear on exactly what happens when you root a phone, i.e. what exactly happens during the rooting process ?
It opens your phone to a whole new array of possibilities.
Sent from my HTC Sensation 4G using xda premium
Carrot Cruncher said:
but i'm still not clear on exactly what happens when you root a phone, i.e. what exactly happens during the rooting process ?
Click to expand...
Click to collapse
In a gist? The "su" binary and the Superuser.apk app get installed. Sometimes doing so requires exploiting a vulnerability via a trigger. Rageagainstthecage is a common trigger. I once had a link that explained what exactly rageagainstthecage does, but I don't have it anymore.
If you really want to know all the details, here's the script I used to root my Defy: http://pastebin.com/G3m9v4FQ
Hmm, I see the script contains a link to the explanation of what rageagainstthecage does. Cool.
many thanks for confirming my understanding of the process.

semi noob question

alright so i know what rooting is , my understanding is that before rooting i won't have administrative access to parts of the file system i think that means that
i'll only have access to "/mnt/sdcard" and not to "/"
after rooting i'll have full access to the entire filesystem
i know why manufacutures dont want people playing around in there ,my understanding - many things break easily deleting something or changing some permison can "f" it up
i've been with android for 1 year and roughly 6 months ,been through an x10 a DHD
other various devices currently on the Mopho so im not a complete nub
i know how to root ,you install this ,push this ,do this , that etc
my question is how is the root part blocked and how is root acheived i dont mean how to root a certain device, i mean how do the exploits do what do they change ?
J35US said:
alright so i know what rooting is , my understanding is that before rooting i won't have administrative access to parts of the file system i think that means that
i'll only have access to "/mnt/sdcard" and not to "/"
after rooting i'll have full access to the entire filesystem
i know why manufacutures dont want people playing around in there ,my understanding - many things break easily deleting something or changing some permison can "f" it up
i've been with android for 1 year and roughly 6 months ,been through an x10 a DHD
other various devices currently on the Mopho so im not a complete nub
i know how to root ,you install this ,push this ,do this , that etc
my question is how is the root part blocked and how is root acheived i dont mean how to root a certain device, i mean how do the exploits do what do they change ?
Click to expand...
Click to collapse
Basically, the root section is blocked since it is set to r/o which normal user permissions cannot change. Rooting exploits change the system permissions and pushes the su binary in to give you superuser access which will then allow you full access to the system.
J35US said:
alright so i know what rooting is , my understanding is that before rooting i won't have administrative access to parts of the file system i think that means that
i'll only have access to "/mnt/sdcard" and not to "/"
after rooting i'll have full access to the entire filesystem
i know why manufacutures dont want people playing around in there ,my understanding - many things break easily deleting something or changing some permison can "f" it up
i've been with android for 1 year and roughly 6 months ,been through an x10 a DHD
other various devices currently on the Mopho so im not a complete nub
i know how to root ,you install this ,push this ,do this , that etc
my question is how is the root part blocked and how is root acheived i dont mean how to root a certain device, i mean how do the exploits do what do they change ?
Click to expand...
Click to collapse
as far as I know, Stock rom's don't have a root function implemented at all.
to get root access, people use exploits to change permissions of the folders to gain access to the System partition, and then the SU (superuser) binaries are put into /system/xbin , and then install the superuser.apk (to make use of the su binary)
EDIT:
Damn ninjas
so rooting is basically changing a few permisions of folders that i wont normally have access to in order to put the SU binary into the fore mentioned path
just re itarating to make sure i understand
additionally if i won't normally have access to these folders then how do they change the permissions <-- maybe pushing it but ask an you shall receive
J35US said:
so rooting is basically changing a few permisions of folders that i wont normally have access to in order to put the SU binary into the fore mentioned path
just re itarating to make sure i understand
additionally if i won't normally have access to these folders then how do they change the permissions <-- maybe pushing it but ask an you shall receive
Click to expand...
Click to collapse
You could say it like that but it grants you far more access and unlocks many possibilities making you the superuser. Rooting uses exploits which bypass these set permissions.

[Q] How does rooting work?

I'm sure the answer to this question is somewhere there, but I cannot find it. There is plenty of information on how to root your phone or tablet, but not on how the root works on Android.
When I work on my Linux box I usually use a "normal", limited user. Only when I need to install something, I switch to superuser, or root, using "su" or "sudo".What happens on a rooted Android? Do all apps run with root privileges all the time? Or rather some sort of "su" command is unlocked, and an app can access it when required. Can I give and revoke superuser powers to an app?
It is always safer to run all programs or apps with limited privileges, so when they misbehave, the risk to system integrity is minimal. If everything runs in root mode, it might just spectacularly crash one day.
In this context, how does adaway work? Does it start with the system, sitting in the background and using its root privileges to intercept and filter incoming HTTP packages? If I understand this correctly, it should then work with any browser?
Sorry for asking several questions in one topic, but I'd appreciate if someone could briefly explain the whole thing.
There is a superuser app, which seems to be doing the same job as gksu does on a linux desktop. Apps can request root, you can allow/deny. If you use the shell, su works as normal (just no password) - but connectbot needs to be given root privileges in order for this to succeed.

Categories

Resources