Hi Everybody,
so I've ordered a SIM-unlocked NEC Terrain from the U.S. and it arrived today. Now I realize that so far no permanent solution has been found for gaining root on the device, but I'm unsure as to whether that means that the temporary (until reboot) root solution is totally worthless. As I understand http://forum.xda-developers.com/showpost.php?p=48236591&postcount=3 it should still be possible to run Titanium Backup to install my old apps as well as to remove all the unwanted AT&T promoware. I've successfully executed the exploit and remounted / rw. Now the next step seems to be to "drop a su command in /sbin" but I'm at a loss as to where I would find a su binary or even compile one (what with a lack of a compiler, etc. on the phone). Any help or pointers towards the appropriate howtos/tutorials would be greatly appreciated!
Best regards,
Jonathan
Hi again! After lots of googling and typing I've finally found a combination of su binary and Superuser.apk that does not give me the "please update your su binary" dialog when opening the Superuser app. Unfortunately though, my phone still seems to be unrooted as far as any apps are concerned. I suspect this might because the su binary is expected to be residing in /system/xbin, but I can't get that path to be on a partition which is mounted suid. The linked-to post (see above) says that the su binary was put into /data/local/tmp/xbin which was then mounted on /system/xbin (/system is ro and can't be remounted rw). Unfortunately /data is nosuid, so /system/xbin ends up being nosuid, too. I also tried copying the su binary to /xbin, which worked. But "mount --bind /xbin /system/xbin" results in "failed: Invalid argument" only.
If I'm making any newbie mistakes here I'd really love to know!
Any reply at all?
Related
short story:
There is no passwd command in my system bin, so I am unable to change the (or effectively, add a) root password.
longer story:
So, as soon as I got my HTC Droid Eris, I installed that root 2.1 leak from HTC. After going through several Terminal applications, I found one that didn't force close every time I tried to use it. I was about to log into root with "su" but I didn't know the root password. I tried Googling around, but I found nothing relevant. I then proceeded to try entering the "su" command anyway and to my surprise, their was NO ROOT PASSWORD. I've been panicking for the last two days trying to find a way to get the passwd command into my bin, but it doesn't look like it's going to work. I've even done some crazy things like try to copy the passwd command from my openSUSE box into the bin (Yes, I understand that it probably wouldn't have been compatible, but it's worth a shot). After doing some research, I learned that the /system/bin directory is read-only. That explains why I kept getting device cross-over errors whenever I tried moving the command from my SD card into the internal memory. Also, I found where the HTC devs installed the "su" command in the leaked 2.1root. It's in the /system/xbin directory.
Does anyone have a solution to this? I'm worried about hackers and being rickroll'd by some idiot's worm. I've been keeping my 3G mobile network off and only using secured Wi-fi to access the Internet
Umm, why are you trying to change the root password? Also when you do su in a shell our shouldn't ask you for a password. The risk of getting hacked are almost zero because the hackers have bigger targets to go after such as the iphone or motorola droid.
Sent from my Eris using the XDA mobile application powered by Tapatalk
This command will mount system as writeable
Code:
mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
Use one of the custom roms with SuperUser.apk (all of them) for security. We don't have passwords for shells on android.
I'm having some issues rooting my Atrix.
A few times I had the error where it would say device or resource busy when trying to mount the partition after doing Reading OS Version properties...
Now it seems to finish to completion but when I test for su it doesn't prompt me for root privs or anything on the phone. When I use root checker app it says it's not rooted but that busybox is installed.
When I do su on a terminal emulator it says permission denied.
Any suggestions?
Thanks in advance.
Sorry guys, I seemed to have derped.
Had to reboot after it works successfully. If there is a way to delete this post please advise and I will do so.
Hey guys, i know there are many ways to root different devices.
however when the hackers hack the new devices, how do they root them?
leonwu127 said:
Hey guys, i know there are many ways to root different devices.
however when the hackers hack the new devices, how do they root them?
Click to expand...
Click to collapse
Rooting in itself, is gaining administrator access to the device. Also known as su, sudo, root.
Phone manufacturers and carriers don't want you doing that, partially because of security, but really mainly cause they dont want you to be able to remove all the bloatware and skins they use to make a few bucks out of you.
So they put blocks on every way you could use to gain administrator access. The "general" way is that you look for exploits, anything they overlooked. its really a cat and mouse game, some care more than others; and are harder to crack than others.
Basically what they do is put you on a limited user account on the system, kinda like those guest accounts on a computer, or the limited accounts you give your kid. The most common ways are exploiting the built in system update with a fake verification certificate to *update* your system, with a change that upgrades you to admin. A lot of phones to additional verification on boot, and will on reboot kill this. On these occasions you have something called temp-root. when you have root you can override any part of the system. If you use your temp root to override the part of the system that kills invalid updates, you gain a "full-root".
Root only lets you change the core system files, not install a new ROM, for this you need to change the recovery, and to change the recovery, you need to unlock the bootloader, which carrier's and manufacturers like to block as well, but thats another story for another time.
thank xlexi,
i have read some files which mention that making ro.secure=0 in default.prop is the main purpose of rooting.
as u said, the fake "update" would change the ro.secure and delete the checking invalid update system.
is that right?
Now days many manufacturers actually promotes the use of custom images, using open bootloaders. This is of course a nice strategy to compete with other manufacturers locking their devices. Still there's a conflict between the music industry and the consumers. To use Digital Rights Management (DRM), the phone must be tamper proof, but we consumers want to be able to "own" the device we bought. To mention an example solving this, Sony Xperias are shipped with a locked bootloader, possible to unlock by the end users, but at the same time erasing all the DRM information. I believe this is a good compromise, and I guess many other manufacturers are using similar solutions.
If the bootloader is open, rooting the device is trivial and no need of "hacking". The generic way of modifying such a device, is just to reflash it with whatever you'd like, everything from an insecure image (i.e. ro.secure=0) to a complete custom ROM. This is using the open bootloader supported by the manufacturer. Using ro.secure=0 is not really recommended more then a means to become root so you can add su, busybox etc. Once this is done, it's best to reset ro.secure=1 again, I would say. No need to have the device too insecure.
In the case with the locked bootloader, the flashable image must be cryptographically signed to be accepted by the device, and such a signature can only be generated by the manufacturer. To hack such a device, some exploit must be used. This is seldom a problem, but makes the rooting procedure specific for that phone model, not being able to use the standard tools such as fastboot etc.
leonwu127 said:
thank xlexi,
i have read some files which mention that making ro.secure=0 in default.prop is the main purpose of rooting.
as u said, the fake "update" would change the ro.secure and delete the checking invalid update system.
is that right?
Click to expand...
Click to collapse
That is correct
Hi. May I ask for your opinion about this ???
Root Access is not properly configured or was not granted.
Super User Applications Status:
Superuser application - version 3.0 - is installed!
SuperSU application - is NOT installed.
The SuperSU application is an alternative application for managing root access.
System File Properties for Root Access:
Standard Location
Check Command: ls -l /system/bin/su:
Result: ls: /system/bin/su: No such file or directory
Analysis: File /system/bin/su does not exist.
Standard Location
Check Command: ls -l /system/xbin/su:
Result: -rwsr-sr-x 1 0 0 64412 Jul 17 08:48 /system/xbin/su
Analysis: Setuid attribute present BUT root user ownership NOT present. Root access is NOT correctly configured for this file!
Alternative Location
Check Command: ls -l /sbin/su:
Result: ls: /sbin/su: Permission denied
Analysis: File system permissions restricted and denied access.
Alternative Location
Check Command: ls -l /system/xbin/sudo:
Result: ls: /system/xbin/sudo: No such file or directory
Analysis: File /system/xbin/sudo does not exist.
Root User ID and Group ID Status:
SU binary not found or not operating properly
System Environment PATH: /bin /usr/bin /usr/sbin /system/_install/sbin /sbin /vendor/bin /system/sbin /system/bin /system/xbin
ADB Shell Default User:
ADB shell setting for standard access, stored in default.prop, is configured as: root user - ro.secure=0
Click to expand...
Click to collapse
This is what I get from my tablet. When using ADB and I type adb shell ... I'll get the # sign. But I'm not rooted - according to this.
Any recomendation/idea what's happening there ???
Thank you in advance.
zholy said:
Hi. May I ask for your opinion about this ???
This is what I get from my tablet. When using ADB and I type adb shell ... I'll get the # sign. But I'm not rooted - according to this.
Any recomendation/idea what's happening there ???
Thank you in advance.
Click to expand...
Click to collapse
The "ls" command producing the root user id numeric. I guess this is confusing the script above, not realising "0" is the same as "root". My guess is that rooted app's works just fine on your device, using the Super User app.
kuisma said:
The "ls" command producing the root user id numeric. I guess this is confusing the script above, not realising "0" is the same as "root". My guess is that rooted app's works just fine on your device, using the Super User app.
Click to expand...
Click to collapse
Well, notg exactly. I can install SuperUSer app from PLAY ... but then I can't instal BUsyBox because it doesn't have root access. Neither Titanium Backup doesn't work ...
Any advice, what to do / what to check whether it's correct ???
Thanks in advance
zholy said:
Well, notg exactly. I can install SuperUSer app from PLAY ... but then I can't instal BUsyBox because it doesn't have root access. Neither Titanium Backup doesn't work ...
Any advice, what to do / what to check whether it's correct ???
Thanks in advance
Click to expand...
Click to collapse
Have you tried if /system/xbin/su actually works? Tried it from the shell?
Hi XDA Community,
Your forums have helped me in the past and I spent some time scouring the posts before posting this one as I couldn't find anything that was specific to my issue. Since this is my first post, I thought that I would save a ping pong of responses, by being fairly expansive on what the problem is and what I have tried; thus hoping to pinpoint my issue a little quicker.
Device Details:
---------------------
Model Number: GT-I9100
Android Version: 4.0.3
Kernel Version: [email protected] #3
Build Number: IML74K.XWLP3
ROM Firmware: Samsung-Updates.com-GT-I9100_O2U_1_20120326173406_jiut50pyip.zip (via Samsung Kies)
Rooting Method / Kernel: Odin3v185 / CF-Root-SGS2_XX_XEO_LPQ-v5.3-CWM5
Summary
--------------
Since the beginning of July 2012, I successfully upgraded from Gingerbread v2.3.6 to ICS v4.0.3 using Samsung Kies then initiated root privileges by using the CF-Root Kernel via Odin (versions shown above) - All has been working fine 100%.....
However, it appears that I seem to have lost my SU permissions and may have disabled my root access, even though my device was rooted and I would appreciate any assistance from anyone who might have time to shed some light on the situation.
Behaviour of Apps I have tried that require root
-------------------------------------------------------------------
SuperSU
SuperSU Pro v0.96 lists in the 'Apps' tab (denoted by a green # symbol) that I have granted all relevant Apps that require SU privileges. This includes AdFree, BusyBox Pro, Root Checker Basic, Root Explorer, SetCPU, Terminal Emulator, Titanium Backup, Triangle Away.
Terminal Emulator
Terminal Emulator displays the following and when I enter the su command at the prompt, I just see a carriage return with a grey block. In other words, I do not see the # symbol denoting I have su privileges.
a/local/bin:$PATH
[email protected]:/ $su
Root Explorer
Root Explorer no longer displays a directory listing and simply displays a pop up from SuperSU after tapping on Root Explorer, "Root Explorer has been granted superuser permission for an interactive shell." then the following message from Root Explorer itself:
"Root Explorer has not yet managed to obtain root access. Because of issues with Superuser, this often happens the first time the app is run but is usually fine from then on."
Root Checker Basic
Apart from the App stating "Please wait for Root Check to be complete. Systems appears to be running very slow" after tapping on the [Verify Root Access] button. It never seems to provide an output after a few minutes waiting. My conclusion is that it cannot get su permissions.
BusyBox Pro
SuperSU displays the message that Titanium Backup has been given root access, however I get the following message:
"Asking for root rights..."
Then after a few minutes I receive this most enlightening output:
"Sorry, I could not acquire root privileges. This application will *not* work! Please verify that your ROM is rooted and includes BusyBox and try again.
This attempt was made using the "/system/xbin/su" command."
I read somewhere that Titanium Backup uses it's own BusyBox installation and not the system wide BusyBox package so I went in to the Titanium Backup preferences and selected 'Troubleshooting settings' then chose 'Force system BusyBox' to see if my issue was a BusyBox specific problem. Again, it failed so not sure if it is BusyBox or my SU permissions that have somehow got corrupted or been disabled.
Additional Information
-------------------------------
Using 'ES File Explorer', I can confirm that the following file's exist at the appropriate location paths:
/system/xbin/su
/system/xbin/busybox
Conclusion so far
-------------------------
It appears that on the face of it that I have lost my root permissions, so I removed apps from SuperSU, then uninstalled the App (e.g. Root Explorer, Terminal Emulator et al.); then performed the rooting procedure again via ODIN and the CF-Root kernel. The process itself worked flawlessly and so after it rebooted, I installed the Apps in question from the Google Play Store again and they prompted to be granted SuperSU privileges. Unfortunately, the same issues arose where it appears that it cannot communicate with either the su command or BusyBox to do what it requires.
Does anyone have any ideas as the phone is fine apart from this and although performing a Titanium Backup backup around two weeks ago, I would sooner not have to wipe everything if I can help it. I wonder if it is an update that somehow confused things...Either way, I cannot use Titanium Backup to backup/restore due to it requiring SU/root permissions, of which I do not seemingly have anymore.
Any ideas please as I am scratching my head and have gone blurry eyed at spending hours viewing various forums and posts?
follow this steps:
1. Unroot your phone with the unroot method here
2. To be sure, unroot again with the method here
3. ROOT your phone again using Any of the Rooting methods in the links provided in step 1 or 2.
Good luck
ICS 4.0.3 Lost su permissions even though device was rooted - Resolved
:good: Issue Resolved :good:
Many thanks for contributing to my issue. I had come across the post before in your links and although the directions were not completely related, there was a section pertaining to a zip file that I must have missed.
Conclusion
----------------
As can be read in the post, I was unsure if my issue related to losing root, a possible corrupt su file itself or BusyBox. As you will see on the link below, Busy Box actually creates hundreds of symbolic links (symlinks) and due to my perhaps overzelous approach to wanting a quick fix; I must have inadvertently created too many links with different versions of Busy Box and therefore when an App that was correctly added and granted SU permissions within SuperSU, when it then communicated with Busy Box / su to authenticate; I can only imagine it got confused and was lost with all the dead symlinks. The net result was that although SuperSU stated that it had granted permissions to the Apps requiring root, it never got to communicate with the su file contained within /system/xbin. I hope that makes sense, well at least I am pretty sure that is what happened.
Solution
------------
Firstly, I cleared all entries contained within SuperSU and therefore removing all Apps from being granted with root access (they didn't have it anyway at the moment).
I saved the zip file contained at the following link on to my external SD card and choosing to 'install zip from sd card' within the CWM Recovery (Volume Up + Power + Home button); effectively this uninstalls Busy Box completely from your device, including hundreds of symlink files - including many which in my instance was causing issues with Apps that required root to function correctly.
Busy Box Uninstaller v1.0 here
I restarted my device and downloaded Busy Box from Google Play Store and when I opened Root Explorer and the other aforementioned Apps shown in this post, they prompted to be granted root permissions (SuperSU) and voila....it worked ! :good:
I hope this may help other droid users experiencing similar symptoms.
Hi,
I tried to upgrade the busybox with different manner (busybox, busybox installer, manual installation from xda), but no one works properly.
Each time i broke the original Archos busibox, so i lose the adb shell.
Can someone explain to me the good way to upgrade the busybox?
Thanks.
SirOch
Hi,
Nobody to explain a clean upgrade of the busybox?
cheers
SirOch said:
Hi,
Nobody to explain a clean upgrade of the busybox?
cheers
Click to expand...
Click to collapse
Google? also XDA has a great search feature have you tried that? :silly: Any particular reason why you want/need to upgrade busybox?
Hi,
As i said, i tried the different busybox installers and the installation was ok, but i each time, i lost the shell from adb.
That's just my problem.
So i just want to understand why the upgrade of the busybox broke the original archos busybox?
Moreover some application need to have other busybox installed.
Regards.
David
SirOch said:
Hi,
As i said, i tried the different busybox installers and the installation was ok, but i each time, i lost the shell from adb.
That's just my problem.
So i just want to understand why the upgrade of the busybox broke the original archos busybox?
Moreover some application need to have other busybox installed.
Regards.
David
Click to expand...
Click to collapse
Ahhh right, the quest for knowledge Your problem is as much to do with adb ( /sbin/adbd to be precise ) as it is to do with busybox, firstly you've probably wiped out the symlinks in /bin, especially /bin/sh which is the location that adbd on archos looks to run the when you do adb shell from your desktop. This is not the default location which just about every other android OEM adheares ,that is /system/bin/sh.
If you are going to upgrade the archos busybox be aware that a large number of symlinks back to /bin/busybox exist not only in /bin but also in /usr/bin /usr/sbin
Archos for reasons I still haven't fathomed, really went to town on restructuring and customized Android on the platform level.
A little tip if you've got more question, to save you bumping threads , which really does upset some folks round here... you'll probably get more more if you add more details, such as error messages etc. Saying " i lost the shell from adb." doesn't really help anyone who might be able to offer assistance. There about 10 different ways adb can fail to connect, Did the device disappear from the list or report as offline. or even come up with the message "- exec '/bin/sh' failed: No such file or directory (2) -".??
Hopefully that's helped.
Hi SirOrch,
i don't know why you loose your adb shell, but concerning busybox... the things on Archos tablets are like this:
Basically on a non rooted device we got a squashfs image mounted read only.
This image contains the stock busybox compiled by Archos (sharing system's uclibc) with limited functionality,
but containing enough tools to handle the daily job.
The path to this busybox is "hard-coded" as well. It's location is /bin which is the second entry in the path environment.
You might check that by typing printenv in your console.
The first entry should be /data/local/bin on your device.
So if you like to replace stock busybox with an advanced one, you should make sure that it will be installed to /data/local/bin.
Often there's no need to use all this apk Android Market stuff to get a proper busybox installation.
Sometimes it's little better to really understand what's happening under the hood.
Most busybox app's are statically linked, because with a static binary you don't have to take care of the device's libc or uclibc.
So you might easily extract on of the apk's or get one from xda-developers.
There are many floating around in the end.
If got one push it to /data/local/bin with adb.
You might need softlinks in this directory as well. This could be done by hand as well.
Anyway if you are a lazy person, who doesn't care about what's happening, go to the market install busybox.
Then check at /data/local/bin if it is there.
If it got installed elsewhere, some commands will still use stock busybox.
Extended commands might then use the installed one.
So check it out...
EDIT:
... aaaargh again simultaneous posting.
scholbert
Hi gentlemen,
Thanks for your help and sorry to forget to give you the error message i had:
the message was : - exec '/bin/sh' failed: No such file or directory (2) -
After investigation i found my mistake:
- In manual mode, i forget to change the ownership of busybox to root in /bin.
- when i tried to use any application from the market, the busybox was well updated in /system/xbin but the application also delete the busybox in /bin and don't change the symlinks in /bin. That's explain why adb shell won't work.
Regards.
SirOch