• After 15+ years, we've made a big change: Android Forums is now Early Bird Club. Learn more here.
Jul 26, 2010
99
14
Is there a way for your phone to hide its root status from apps? I have PocketBlu for downloading digital copies of movies (like the new X-men) and the latest update to the app can now tell if your phone is rooted at which point it tells you that due to DRM rules it wont allow rooted phones to play digital copies. Older versions of this app were buggy and not working well so I dont have the option to restore an older version. So does anyone know if its possible for the phone to hide its root status?
 
One would have to know what that app is looking at to verify root status. It could just be looking for the SuperUser app. Doubtful, but possible. Freezing that app with TiBu Pro might solve the issue. But if it's looking at system permissions, you're screwed.

Wouldn't said app need Root Status to check system permissions in the first place though, or am I totally off?
 
Upvote 0
Post revised:

The su file is in the xbin folder, not "bin" for those of you amateur rooters like me who are looking for a workaround to this problem.

Bottom line: the trick I posted above works. Im downloading my movie as I speak. I will test to see whether it will play after I rename my su file back to "su" and report back
 
Upvote 0
That happened to me when I flashed the deodex bloated "rom". Wipe, reflashed and it will came back or there is another fix.

This is thanks to Messenger13

"OK, so I had issues with Rom Manager and Superuser, like some of you. I had to uninstall Superuser, then reinstall it from the Market, open it up and let it update the binaries. Then I uninstalled BootStrap recovery. Then open Rom Manager and install CWM version 5.0.2.5."
 
Upvote 0
Ran into a problem. I didn't use ADB shell when changing the su file (never used adb shell before) and instead used Root Explorer. As stated, this worked to trick the app to thinking I didn't have root.....well that's because I didn't anymore. I went back into root explorer to change the name back and now I can't mount into R/W because I'm not rooted.

Does anyone know how I could have gone about this and made it work without having to re-root? Like I said, I've never used ADB shell so I would have no clue what I'm doing with that unless I got some instruction.
 
Upvote 0
One last update for the night:

After re-rooting and trying to play my move on PocketBlu, I get the message that it can't play the video on a rooted device. So even if you get the movie downloaded, it won't let you watch it if it detects su. Im done playing for the night, but I'll try using that "temporary unroot" app to see if it works.

I also considered copying the su file in Root Explorer, changing the name, watch the movie, then when Im done, paste the original su file back in the xbin directory and delete the one I renamed since it is useless. Can anyone see why this wouldn't work?
 
Upvote 0
I don't have any suggestions for you, but this is a dangerous precedent. What if Big Red starts pressuring more android developers to block root users. :(


And on another side note. Yet ANOTHER piece of evidence to support how STUPID AND USELESS DRM IS. This is an example of a user who legally paid for his media, and is now unable to access it. Where as, if I were to go torrent whatever movie he is trying to watch I would have 0 problems.

GJ!
 
Upvote 0
Just thought I'd throw a few thoughts out there for you guys:

1. Yeah, as you may have seen and can guess, I would imagine that most apps that look for root would simply check for the presence of /system/bin/su (/system/xbin/su is usually soft-linked to /system/bin/su).

2. The SuperUser app (SuperUser.apk or sometimes Superuser.apk) just helps you manage root and does not actually give you root access (just pointing this out for those that don't know). Checking for the precense of this app would also be a good indicator that your Android device is rooted. Freezing this app would not remove the .apk (freezing basically disables the app from being launched) so its presence could still be detected file a file check.

3. You should be able to temporarily hide root by doing the following:

- download Android Terminal Emulator (you'll use this later in lieu of adb--although using an adb shell is much more straightforward and less typing error-prone)

- use your favorite tool (Root Explorer, adb, etc.) to remount /system as read/write; you will need to know the explicit mount command because you'll have to manually type it in later on (but you don't need it here)

- then rename /system/bin/su to something like /system/bin/su-backup

- now that the su program is "hidden" (-ish) and that satistfies your requirements; continue on below when you are done and ready to "re-root"...

- launch the Android Terminal Emulator app and regain root by typing "/system/bin/su-backup" (minus the double-quotes, of course); you'll see the $ prompt change into the beloved # ;)

- now, in order to rename su-backup back to su, you'll have to re-mount /system as read-write again (unless you have retained this ability from the previous re-mount above); type "mv -i /system/bin/su-backup /system/bin/su" to rename the file

Anyway, I think the above should work for you.

I also think its possible that if you can still keep Root Explorer launched (and it root privileges intact), you'd be able to skip all of the above.

Good luck and cheers!
 
Upvote 0
Alien,

Thanks for the information! I have a couple of questions...

1) when I look in my Bionic's /system/bin folder I do not see the su file. The only place I can find an su file is in my xbin folder. Do I still use the same commands you used or would I replace the "bin" parts with "xbin"?

2) when I load terminal emulator it starts me with a prompt line that says, "app_198@cdma_targa:/$"
Is that the correct prompt to begin typing the commands you mention?
 
Upvote 0
Alien,

Thanks for the information! I have a couple of questions...

1) when I look in my Bionic's /system/bin folder I do not see the su file. The only place I can find an su file is in my xbin folder. Do I still use the same commands you used or would I replace the "bin" parts with "xbin"?

2) when I load terminal emulator it starts me with a prompt line that says, "app_198@cdma_targa:/$"
Is that the correct prompt to begin typing the commands you mention?

1) I believe so...I did my tests above on my Droid X, but I would think that the folder location doesn't matter, unless the su in your xbin is actually a soft-link (like mine is.../system/xbin/su is soft-linked to the actual /system/bin/su program). I did my tests by copying the su program to su-backup and invoking / re-invoking su-backup to gain root access, then making sure I could remount /system as read/write and then making sure I was able to rename su-backup to something else (su, in your case).

The key is knowing the proper mount command /system to make it read/write (the Droid X is a little different than other phones...not sure what the exact command is for the Bionic) since you'll need to type this in manually at the terminal emulator prompt so you can rename su-backup back to su.

2) Yes, you are just mainly concerned about the "$" prompt at the end...it looks like your version of the terminal emulator is putting extra context on your command prompt.

Getting the su program installed on your /system partition is the hardest part of root, and your will already be there, regardless of how its named. Its just that if its not "su", then programs that typically invoke the su shell to gain/use root access, won't be able to find it while its renamed to su-backup.

Good luck and cheers!
 
Upvote 0
I had started writing scripts to do exactly this however the renamed su-backup cannot get whitelist access from SuperUser.apk and you get an access denied. It appears that only an app called su can do that. superuser.apk has updated several times so it is possible this condition is fixed now. I have not retried.

Ah, that's a good point Lars!

The tests I did were with my Android Terminal Emulator that had already been granted root permissions.

Invoking the alternate / backup (su-backup) from an adb shell will work (I tested this), but that, of course, requires using your PC (which we were trying to avoid).

Cheers!
 
Upvote 0
Ok ignore my last post. I didnt' have my chmod right. Here are the terminal commands:

To hide (Bionic only, assuming su is in xbin,busybox installed):

su
mount -o remount,rw -t ext3 /dev/block/system /system
cp /system/xbin/su /system/xbin/subak
chmod 6755 /system/xbin/subak
rm /system/xbin/su

Actually the last three could be a simple mv command.

To restore:

subak
mount -o remount,rw -t ext3 /dev/block/system /system
cp /system/xbin/subak /system/xbin/su
chmod 6755 /system/xbin/su
 
Upvote 0
Ok ignore my last post. I didnt' have my chmod right. Here are the terminal commands:

To hide (Bionic only, assuming su is in xbin,busybox installed):

su
mount -o remount,rw -t ext3 /dev/block/system /system
cp /system/xbin/su /system/xbin/subak
chmod 6755 /system/xbin/subak
rm /system/xbin/su

Actually the last three could be a simple mv command.

To restore:

subak
mount -o remount,rw -t ext3 /dev/block/system /system
cp /system/xbin/subak /system/xbin/su
chmod 6755 /system/xbin/su
hope i don't get in trouble for bumping an old thread. this issue seems to be present in many random places and can't see any specific central location to discuss with the users who had raised complaints.

i was searching on google for "hide root" and came across this thread.
i've thought about creating an application to perform these basic commands.

would that be helpful for people?
 
Upvote 0
hope i don't get in trouble for bumping an old thread. this issue seems to be present in many random places and can't see any specific central location to discuss with the users who had raised complaints.

i was searching on google for "hide root" and came across this thread.
i've thought about creating an application to perform these basic commands.

would that be helpful for people?

Joey,

I'm sure that would be a great app...although I do think you'd have to account for the different commands to remount /system for different phones (if you're planning on having it work for more than just the Bionic).

By the way, I didn't realize you were the Root Checker guy (I've recommended your app to folks before--nice!). Your other apps look very impressive, too!

Cheers!
 
Upvote 0
Just thought I'd throw a few thoughts out there for you guys:

1. Yeah, as you may have seen and can guess, I would imagine that most apps that look for root would simply check for the presence of /system/bin/su (/system/xbin/su is usually soft-linked to /system/bin/su).

2. The SuperUser app (SuperUser.apk or sometimes Superuser.apk) just helps you manage root and does not actually give you root access (just pointing this out for those that don't know). Checking for the precense of this app would also be a good indicator that your Android device is rooted. Freezing this app would not remove the .apk (freezing basically disables the app from being launched) so its presence could still be detected file a file check.

3. You should be able to temporarily hide root by doing the following:

- download Android Terminal Emulator (you'll use this later in lieu of adb--although using an adb shell is much more straightforward and less typing error-prone)

- use your favorite tool (Root Explorer, adb, etc.) to remount /system as read/write; you will need to know the explicit mount command because you'll have to manually type it in later on (but you don't need it here)

- then rename /system/bin/su to something like /system/bin/su-backup

- now that the su program is "hidden" (-ish) and that satistfies your requirements; continue on below when you are done and ready to "re-root"...

- launch the Android Terminal Emulator app and regain root by typing "/system/bin/su-backup" (minus the double-quotes, of course); you'll see the $ prompt change into the beloved # ;)

- now, in order to rename su-backup back to su, you'll have to re-mount /system as read-write again (unless you have retained this ability from the previous re-mount above); type "mv -i /system/bin/su-backup /system/bin/su" to rename the file

Anyway, I think the above should work for you.

I also think its possible that if you can still keep Root Explorer launched (and it root privileges intact), you'd be able to skip all of the above.

Good luck and cheers!
i hv renamed my su file to su1 using solid explorer and henve i lost my root. now im unable to rename it back to su. please help. i tried using terminal emulator. when i typed the command which u suggested, i saw # sign to my relief but then when i typed ur command of renaming it showed some error. please help
 
Upvote 0
i hv renamed my su file to su1 using solid explorer and henve i lost my root. now im unable to rename it back to su. please help. i tried using terminal emulator. when i typed the command which u suggested, i saw # sign to my relief but then when i typed ur command of renaming it showed some error. please help

Yeah, your root apps would be referencing the "su" binary by it's name...you should still have root, but it will only be accessible by using the newly renamed "su1" binary manually through something like an adb shell or Terminal Emulator for Android shell.

Can you tell us which device and version of Android you have?
 
  • Like
Reactions: doogald
Upvote 0

BEST TECH IN 2023

We've been tracking upcoming products and ranking the best tech since 2007. Thanks for trusting our opinion: we get rewarded through affiliate links that earn us a commission and we invite you to learn more about us.

Smartphones