[SOLVED] UPDATE Bypass Mobileiron and Root Detection ICS, JellyBean - Android General

Disclaimer: This is for testing purposes only. I do not condone breaking company policy, or breaking any laws. I am not responsible for you getting fired as a result of you making these modifications. You should always read and abide by company policies and any laws pertaining to such modifications. Use of this tutorial is at your own risk.
Preface: I have tested the new method on multiple devices and it has been flawless so far.
UPDATE: I have found a new method that so far has been flawless across multiple devices so far for me. With this new method you won't even have MobileIron installed when you're done! I have tested this on my Galaxy Nexus, My Nexus 7 and my Galaxy Note II and believe it should work regardless of device. Your company may have different security policies than mine so it's possible this may not work for you.
The easiest way to do this is with one of mskip's toolkits, but it can also be done manually with adb (must have the latest sdk).
Toolkit Method
0. Make sure you have MobileIron and Touchdown installed, configured and syncing. Your phone does NOT have to be rooted to do this.
1. Download mskip's Toolkit Here and install.
2. Make sure you have the adb drivers for your phone installed on your computer and android debugging is turned on in the developer settings on your phone.
3. Open the toolkit and connect your phone to your computer
4. It shouldn't matter what model phone you choose for the purpose of what we're doing, and the options may be slightly different based on which toolkit you download
5. Choose the option backup and restore your device
6. Choose backup all installed apps
7. Choose do NOT include system apps in the backup
8. Choose backup apk's AND respective app data
9. Choose do NOT back up internal storage data in backup
10. Wake your phone and it will ask you to start the backup, choose to do so
Once it is finished you will need to wipe your phone. It may work without wiping and just uninstalling touchdown and Mobileiron before proceeding to the next section, but I haven't tested this.
11. Connect your phone to your computer and enable android debugging
12. Browse to C:\Galaxy Nexus Toolkit (or whatever the name of your toolkit is under c:\)
13. Open the folder backups and rename the backup file to backup.bak. (if you don't see the file extension just name it backup)
14. Open the toolkit and choose a model
15. Choose Backup and Restore
16. Choose Restore apps from a backup file
17. type backup.bak and press enter
18. Wake your phone and choose to begin the restore
19. When it's finished, uninstall mobileiron, open touchdown and see if it's syncs!
ADB Method
adb backup -all -system -shared -apk
recovery> backup, wipe, flash rom, flash gapps, reboot
adb restore backup.ab
Requirements For ICS:
1. Rooted Android Phone running ICS based ROM
2. Titanium Backup (app installed)
3. Hide my Root (app installed)
4. Mobileiron (app installed but never run)
5. Touchdown (app installed but never run)
Instructions for ICS:
0. Make a Nandroid backup
1. Open Hide my Root
2. Choose hide SU binary
3. Press home
4. Menu, settings, apps, all apps
5. Choose Superuser.apk
6. Choose disable
7. Now open mobileiron and configure the settings per your company's instruction.
8. Set up your email in the Touchdown application and let it sync everything.
9. Open Hide my Root and choose restore SU Binary
10. Go back to menu, settings, apps, superser.apk and choose enable. (Its at the bottom when disabled)
11. Open Titanium Backup
12. Choose backup/restore from the top
13. Scroll to Mobileiron and tap it and choose freeze.
14. Profit
Now restore your nandroid backup before you get in trouble.
**Update** for Jelly Bean
It seems the builds out there for Jelly Bean use a new version of SuperUser that as of yet isn't compatible with Hide My Root. I wrote the developer of Hide My Root and he is looking into this but currently doesn't have a device running Jelly Bean to test on, so I took it upon myself to figure this out once again. I tested this and it does work. Again this was tested on a VZW Galaxy Nexus only.
Instructions for Jelly Bean:
0. Make a Nandroid backup!
1. Download MobileIron (App installed but never run)
2. Download Touchdown (or any apps that depend on MobileIron and do not launch them)
3. Download Titanium Backup (You may need the premium version to freeze apps)
4. Download SuperSU flashable zip from HERE and place on your SDcard.
5. From the app drawer launch SuperSU (that app already installed, not the zip you just downloaded)
7. Swipe 2 screens to the right to Settings
8. Choose Full unroot.
9. Install and configure MobileIron and dependent apps and let them fully sync.
10. Enable Airplane Mode
11. Reboot to recovery and flash the SuperSU zip you downloaded
12. Boot into Android, open Titanium Backup and freeze MobileIron
13. Turn off Airplane Mode
14. Profit
Now restore your nandroid backup before you get in trouble.
After a reboot all of the lockscreen options will reappear allowing you to have an insecure lockscreen.

This is great
You just saved me hours of frustration.

Thanks!
Thanks - this is a huge help!!
Question: does this work only with Touchdown, or any Android email client? (I prefer the app Enhanced Email).

SoCalNewb said:
Thanks - this is a huge help!!
Question: does this work only with Touchdown, or any Android email client? (I prefer the app Enhanced Email).
Click to expand...
Click to collapse
I have only tested this as posted. Make a nandroid backup and play around with it

How to re-enable superuser?
Made a nandroid backup. Followed instructions below. Works great, now I can synch email with MobileIron fortified corp server AND change the PIN lock requirement that MobileIron required! Thank you
Only one issue: I couldn't complete step 10 ("Go back to menu, settings, apps, superser.apk and choose enable"). Superuser was no longer in the "All" list under menu, settings, apps. As a result, I seem to have lost the ability to grant root access to new applications.
QUESTION: How do I re-enable superuser?
Notes:
- ADB: I can connect to device via ADB, but if I type "adb shell", and then type "su" at the "sh-3.2#" promot, no $ access is granted).
- Terminal Emulator: TE cannot get root (I type "su" at the "sh-3.2$" command, and TE says "Permission denied")
- Root Access - Old Apps: Any apps that previously had root privileges still do (Root Explorer can navigate to "/" and enable "Mount R/W", Wifi Tether still works, etc).
- Root Access - New Apps: New apps requiring root are not able to get root (no superuser prompt comes up)
- Re-Installing Superuser.apk: I tried using root installer to re-install superuser.apk (in the "/system/app" directory). It said it installed successfully, but still no superuser in the "All" list under menu, settings, apps.
- Re-Rooting: I tried re-rooting (using mskip's exceelend GNEX toolkit HERE), to no avail (process completes, but no superuser access).
If anyone can help me troubleshoot I would be extremely appreciative. I've tried to not be a helpless newb and to try a few fixes (above), but I would be ecstatic if one of XDA's Android ninjas could tell me how to re-enable superuser. Hoping to avoid comments of "restore nandroid backup and give up"
bhilgeman said:
1. Open Hide my Root
2. Choose hide SU binary
3. Press home
4. Menu, settings, apps, all apps
5. Choose Superuser.apk
6. Choose disable
7. Now open mobileiron and configure the settings per your company's instruction.
8. Set up your email in the Touchdown application and let it sync everything.
9. Open Hide my Root and choose restore SU Binary
10. Go back to menu, settings, apps, superser.apk and choose enable.
11. Open Titanium Backup
12. Choose backup/restore from the top
13. Scroll to Mobileiron and tap it and choose freeze.
Click to expand...
Click to collapse

SoCalNewb said:
Made a nandroid backup. Followed instructions below. Works great, now I can synch email with MobileIron fortified corp server AND change the PIN lock requirement that MobileIron required! Thank you
Only one issue: I couldn't complete step 10 ("Go back to menu, settings, apps, superser.apk and choose enable"). Superuser was no longer in the "All" list under menu, settings, apps. As a result, I seem to have lost the ability to grant root access to new applications.
QUESTION: How do I re-enable superuser?
Notes:
- ADB: I can connect to device via ADB, but if I type "adb shell", and then type "su" at the "sh-3.2#" promot, no $ access is granted).
- Terminal Emulator: TE cannot get root (I type "su" at the "sh-3.2$" command, and TE says "Permission denied")
- Root Access - Old Apps: Any apps that previously had root privileges still do (Root Explorer can navigate to "/" and enable "Mount R/W", Wifi Tether still works, etc).
- Root Access - New Apps: New apps requiring root are not able to get root (no superuser prompt comes up)
- Re-Installing Superuser.apk: I tried using root installer to re-install superuser.apk (in the "/system/app" directory). It said it installed successfully, but still no superuser in the "All" list under menu, settings, apps.
- Re-Rooting: I tried re-rooting (using mskip's exceelend GNEX toolkit HERE), to no avail (process completes, but no superuser access).
If anyone can help me troubleshoot I would be extremely appreciative. I've tried to not be a helpless newb and to try a few fixes (above), but I would be ecstatic if one of XDA's Android ninjas could tell me how to re-enable superuser. Hoping to avoid comments of "restore nandroid backup and give up"
Click to expand...
Click to collapse
When you disable superuser.apk in the apps list it moves it from the alphabetical order to the bottom of the apps list. Look there and see if its at the bottom of your apps list.

bhilgeman said:
When you disable superuser.apk in the apps list it moves it from the alphabetical order to the bottom of the apps list. Look there and see if its at the bottom of your apps list.
Click to expand...
Click to collapse
YOU ARE THE MAN.
That was so simple, but I spent an hour trying stuff and still missed it
My Android experience is back to awesome despite Mobile Iron - THANK YOU!!!!

Thanks for that. Great idea.
I followed your instructions but I had to switch 9 and 10 because Hide my root cannot restore a deactivated app.
But my TouchDown says "Synchronization Error" --> access denied (update your password). Maybe too strong policies?
And by the way: you have to use tintanium backup PRO to enable or disable apps
---------------------
Edit: I made a system application of "Hide my root" with TI Backup - works. I had to uninstall TI Backup now - currently TouchDown is syncing again. We will see if it works, next: I try to use LBE Privacy Guard... will report. Disabling "MobileIron" seems not working for me...

Hey, is not possible solve it on 2.X version of Andriod? Thanks...

OP Updated to reflect Changes for those running JellyBean. Long live the Android experience!

bhilgeman said:
The SU change needed for JellyBean makes this previous method unusable. I did however figure out how to still get to the same result if you're running JellyBean.
I will so an update to the OP soon to reflect this.
Click to expand...
Click to collapse
Looking forward to the instructions for making this work on JB

SoCalNewb said:
Looking forward to the instructions for making this work on JB
Click to expand...
Click to collapse
OP updated for JB instructions.

Sorry, I haven't tested this on a 2.x build so I'm not sure. If I get time I'll try to test this for you, I'm just super slammed with projects right now...

Will we appear "normal" on the Server that the app links us to our Corp acct??

Yes, you will appear as a non rooted phone. I just updated the JB instructions again. Realized I left out a step.

Anyone test this for Airwatch yet?

FWIW.....my experience has shown this to be merely a temporary solution, by itself. Yes...following the JB instructions will allow you to sync up just fine. But.....when mobileiron does not report back as device administrator, the red flags go up. My solution, thus far, has been to suspend root access on the phone, after reactivating mobileiron. In my case, after re-activating mobileiron, the app, itself, now FC's, which may be helping me out....not sure. At this point I seem to be able to continue remaining synced, without root access. As long as I use airplane mode before enabling root access to do root-type stuff, I seem to be fine. Word of caution, though....disabling root, seems screw up TB when I re-enable root. Specificaly...even though I have TB pro, it does not register after re-enabling root, so freezing and unfreezing mobileiron at will has not been possible. Could just be my system though.I recommend using airplane mode liberally if there is any doubt regarding your recognized root/non-root status. This definitely changes how I use the device, though, for sure.

makelegs said:
FWIW.....my experience has shown this to be merely a temporary solution, by itself. Yes...following the JB instructions will allow you to sync up just fine. But.....when mobileiron does not report back as device administrator, the red flags go up. My solution, thus far, has been to suspend root access on the phone, after reactivating mobileiron. In my case, after re-activating mobileiron, the app, itself, now FC's, which may be helping me out....not sure. At this point I seem to be able to continue remaining synced, without root access. As long as I use airplane mode before enabling root access to do root-type stuff, I seem to be fine. Word of caution, though....disabling root, seems screw up TB when I re-enable root. Specificaly...even though I have TB pro, it does not register after re-enabling root, so freezing and unfreezing mobileiron at will has not been possible. Could just be my system though.I recommend using airplane mode liberally if there is any doubt regarding your recognized root/non-root status. This definitely changes how I use the device, though, for sure.
Click to expand...
Click to collapse
I run your CM10 build on my nex7 and love it. Great to have navbar mods.
On my nex7 it took me a few tries to get it to stick but I finally got it. I hadn't updated a nightly for a couple weeks and when I did Mobileiron got me. I decided I don't care about getting work email on my tablet as much as I do my phone so no big deal. I freaking hate Mobileiron and touchdown nearly as bad.
On my galaxy nexus (running fitsnugly cm10) I don't have any issues. I flash the nightlies every day and I've gone a couple months without Mobileiron flagging me.
Sent from my Nexus 7 using xda app-developers app

bhilgeman said:
I run your CM10 build on my nex7 and love it. Great to have navbar mods.
On my nex7 it took me a few tries to get it to stick but I finally got it. I hadn't updated a nightly for a couple weeks and when I did Mobileiron got me. I decided I don't care about getting work email on my tablet as much as I do my phone so no big deal. I freaking hate Mobileiron and touchdown nearly as bad.
On my galaxy nexus (running fitsnugly cm10) I don't have any issues. I flash the nightlies every day and I've gone a couple months without Mobileiron flagging me.
Sent from my Nexus 7 using xda app-developers app
Click to expand...
Click to collapse
Skanklove!
I was completely under the radar, due to some corporate user configs, until I screwed up and raised the red flag. Then I had to encrypt, and install mobileiron. I was perfectly happy with touchdown until mobileiron got involved. I don't want work email on any device other than my work phone (toro). I can still run email without mobileiron, but no activesync and no email attachments......meh

Steps on ICS
Hello,
I am new to using mobileiron, as my corporation just started to use this program. Can I use your steps on ICS and keep my root undetected or will I eventually have issues. Last question, why is it necessary to restore your nandroid backup at the end?

Related

[Q]Galaxy Tab 10.1 problem

I purchased my tab in China. Samsung China has deleted all Google apps from the pre-installed rom. As a result, the Chinese GT 10.1 community has compiled an Google app pack (GoogleServeice_P7510.zip) to bring back those apps.
I flashed it immediately after I rooted the tab. The Google apps were installed successfully. I entered my google account after the boot and every google app was running without a glitch. But not long after that I found I could no longer enter browser settings anymore. It would always give me a FC when I tried to do so. I then downloaded the dolphin browser. So this problem was bypassed.
Then I found there was something wrong with the superuser, I could not adb remount/push, and it couldn't be revoked by the apps that required root access.
This problem was partially resolved later by flashing the OC kernel for GT 10.1, which secured adb privileges. But the superuser was still problematic. Then I found out that after I flashed any zip other than root.zip in recovery, be it the kernel.zip, the su_busybox_tools.zip or google_servicepack.zip, the superuser icon in the app drawer would always become 4 times smaller (2 time in both height and length) than the superuser app "installed" by root.zip, as well all other apps.
There seemed to be something wrong with this version of superuser app (small icon). Whenever I opened an app that required root access, the superuser prompt window would not pop out. But if I flashed the root.zip again, the big-icon superuser app would be back. And other apps can revoke it most of time. However, it was not perfectly stable. Somethimes, it still failed to be revoked. I have flashed the root.zip among the other 3 zips for many times to get this conclusion.
I then applied the V6 SuperCharger script and flashed the su_busybox tools for GT 10.1 right before that, because SuperCharger script required busybox. However, due to the superuser problem, the SuperCharger script was not fully working. After reboot, part of the settings was changed back to default, because 99supercharger.sh couldn't be run on boot with root and there's not init.d folder in GT Tab 10.1. Then I flashed the OC kernel hoping it will fix all the problems. After that, I surprisingly found out that I was able adb remount and push. But the icon of the superuser app was again back to the small one. So the apps requiring root could not revoke it for permission.
As a result, I flashed the root.zip again. At this moment, superuser works normally, even after some reboots. SetCPU and script manager are able to automatically acquired root access on boot. But when I rechecked the supercharger script, current pages(minfree) were still showing blank.
Other problems include backspace and enter keys not working in terminal emulator/console. And the problem I just found - the notification ringtone list in the system settings and other app (e.g. Gmail) settings was blank. I could not change ringtone, although the system can play it without problem. And the ogg files are still there in /system/media/notifications.
Since all Android devices works more or less the same. I hope some of you phone experts can shed some light on these problem. The user base of Android tabs has made it less supported than Android phones. It'll be highly appreciated if all these annoying problems get fixed.
Thank you!

Superuser got updated (problems again)

Of course superuser got updated again and everything goes crazy.
Titanium backup can't get root after this new superuser updates today. What to do what to do?
I was planning to go to the previous version by using titanium backup but i can't use it because of no root..
stupid superuser...
Have you tried running superuser to allow it to enable root access for itself?
I've just updated it, ran it, set auto response to allow then ran ES File Explorer and Link2SD and everything works.
automatic response is on allow set.
link2sd works, but titanium backup doesn't and now neither busybox.
i manually installed from recovery this:
su-bin-3.1-arm-signed.zip
Superuser-3.1.3-arm-signed.zip
but i still can't obtain root with titanium backup and busybox.
what else to do?
Try checking the superuser app on the market. See if there are any other reports about this issue. If not, then email developer via the available options on the app page.
In my case with sony live with walkman w19i, I need to always enable usb debugging to get it work.
If I disable usb debug, then I'll get problem like yours.
Please report this bug. Don't know how to contact the dev,,,,,
I have also performed the following:
Settings -> Apps - Superuser -> Force stop -> Clear data -> Open su and update binaries.

Good for Enterprise (GFE) [03-7-2014] root workaround

This IS working for 4.3+ using xposed module.
http://forum.xda-developers.com/showpost.php?p=49878296&postcount=679
All credit goes to Phantasm4489. I am only adding the the OP so people can find it.
Below can be used for anything below 4.2 but I still think the xposed module above is better.
Standard Disclaimer:
**************************************************************************************************************
I AM NOT RESPONSIBLE FOR YOU BEING FIRED BY CIRCUMVENTING THE POLICY YOUR IT STAFF HAS PUT IN PLACE. I AM NOT RESPONSIBLE FOR BRICKING YOUR PHONE (ALTHOUGH SERIOUSLY DOUBT IT COULD POSSIBLY DO THAT). I AM NOT RESPONSIBLE FOR ANY DAMAGE WHAT SO EVER. THIS IS FOR EDUCATIONAL PURPOSES ONLY!!
**************************************************************************************************************​
Click to expand...
Click to collapse
First off:
THANKS to sparky for the 'su' binary I use in my newer scripts.
THANKS to chainfire for the 'su' binary I use in my older scripts.
THANKS to Fallon for helping fine tuning the directions.
This thread is dedicated to using GFE on rooted devices. My intent is to understand root detection schemes for my own personal education. If the information here is beneficial to others, then that is a plus.
I came up with a process that satisfies both GFE and its use on rooted (technically temp unrooted) devices. Basically unrooting and rerooting the phone so that the GFE app functions and I comply with not running GFE on a rooted phone. .
Tested on CM9 and CM10 for the Epic 4 Touch and the Galaxy S3. I've seen success on other ROMS as well. If you run into issues, i'd be happy to help and improve the process.
What GOOD(GFE) detects and what it doesn't care about
Some key notes about what GFE seems to detect:
Detects 'su' anyplace on the phone /system partition (usually located in /system/bin/su or /system/xbin/su).
Detects the superuser apk and supersu apk
Detects if you have su'd in adb or shell while it is running. Close adb and log out of and shells before launch!
If you use a root tool like titanium, reboot before launching good! Titanium will sometimes leave open rooted processes running.
In pre-JB, it could use the READ_LOGS android permission to comb the system logs and find 'root like 'activity'. In JB, that 'security hole' is closed and that permission is locked down by android.
It detects if /system is RW.
The software is setup to never be shutdown. Once its started, it runs no matter what. Preventing it from starting is a good thing IMHO.
Seems that for some unknown reason, if es explorer was run in root mode at any point before running good, it detects root. Even if I manually kill all the back ground processes before unfreezing/launching Good.
Sometimes I get a compliance failed when I was working in ADB prior to running good. Typically if I was in ADB doing root work, i'll reboot the ROM before enabling good.
Turn off 'automatic update' for super user app from market
What GFE does not seem to care about:
busybox
CWM
locked/unlocked bootloaders
Here is how to make root and GFE play as nice as possible. This isn't perfect but it works pretty good. I still get the 'compliance failed' once in a while when i do something dumb. I am lucky in that I can clear data on the GFE app and reuse the prior key or request a new key from our IT system on demand. If you cannot do this easily, then this may be cumbersome. As we further progress this, we should get less and less lockouts.
SCRIPTED PROCESS
Downloads:
Something to run the scripts One of these will do:
- Connectbot or any shell execution program from play store. connectbot has widgets. I use connectbot.... ​- Script Manager found here: http://db.tt/Vonx78NI . Or playstore.​
(required for PRE-JB roms only). Install Permissions Denied from the Market
The latest cwm/twrp flashable zip attached to this OP.
An installation of busybox. Typically comes with CM and lots of other ROMs but just making the point here that it is required.
Setup app and dependencies:
Flash the gfe_workaround_setup zip attached to this OP in CWM. This will create four scripts and a "backdoor" su binary. They are as follows:
/system/xbin/dger
/system/xbin/egdr
/system/xbin/fu. (The sparkysu binary is insecure so be careful out there! Just a disclaimer)
/system/xbin/r_dger
/system/xbin/r_egdr
Install Good Application
If pre-JB (NOT REQUIRED ON JB+), open Permissions Denied and disable the READ_LOGS permission for the Good Application. Immediately after disabling that permission reboot the device from within the Permissions Denied app (in the menu). It must be done from within the application immediately after toggling the permissions to denied.
Optional but recommended: use "autostarts app" (or similar) from market to turn off all autostarting flags for Good app. This is incase you forget to disable root before you reboot and dont want it to start after again after flashing a rom which would restore root..
Use Connectbot or old script manager to execute the enable/disable scripts.
HOW TO Use the scripts and run the Good.
These scripts will basically temp unroot your phone and disable the superuser user whenever you want to run good. It will reverse the operation whenever you want to return root and lockup good.
I typically leave good disabled unless I am using it but that is up to you.
Whenever you want to 'run good'. You will run the script egdr.
Whenever you want to disable good and return root to your phone run dger (prior to reboot for example or flashing roms or whatever)
DO NOT FORGET TO run the DGER script before flashing a rom since that rom will repush superuser and su and if good was enabled when you shutdown to reflash the rom, good will detect root and deactivate the handheld. Also since I disable the superuser user entirely when you flash the new rom, you will lose root and will need to enable the superuser user and reflash the rom to fix things... You can always just fix it with adb but renabling superuser... But that is a pain.
(pre-JB only) Permissions Denied takes FOREVER to startup, several minutes at least & you repeatidly see it getting root permissions, at first I thought it was having issues but that is how it works.
No need to "Lock Permissions" within the Permissions Denied app from what I've seen but ymmv
Under the ROM Developer Options "Root access" is irrelevant, GFE is working just fine with it set to "Apps and ADB right now"
GFE will work fine by wiping app data & initilizing it with a new PIN if you get things cleaned up after a policy violation
No need to get an unlock code from your sysadmins after a policy violation, just wipe app data for GFE & get a new PIN (assuming you have access to a website to request a new PIN
A mini-how to for connectbot:
I prefer this because connectbot is a simple tool and I like to keep it simple. But you may prefer the script manager interface instead.
With connectbot, you can create 2 'local' connections. One for each of the enable/disable scripts appropriately named. You can edit each of the local connections and setup 'post-login automation'. In the post-login automation you add the following (Note that <enter> means to put a line feed... i.e. hit enter ):
Code:
/system/xbin/dger;exit
<enter>
Code:
/system/xbin/egdr;exit
<enter>
You can either open connectbot each time and run the enable or disable scripts or you can add connectbot shortcuts to each local connection on your launcher's desktop. Its under 'add shortcut' you will see connectbot.
If you, like me, get annoyed by the notification icon from connectbot, you can optionally do these steps to execute it.
In the connectbot options, disable persistence. Also you can replace the ';exit' in the post automation commands with ';kill $PPID' and that will get you very close a self closing command. That will terminate the shell session you are in. When disabling GFE you'll still have to hit the back button but when enabling GFE it wont stay in your notification bar.
Example:
Code:
/system/xbin/dger;kill $PPID
<enter>
The negative is that if there was an issue, you wont see the log. I may add logging support in the scripts so that we can go back and look easier anyway at what failed if we get a lock out. If you ever needed to debug though just remove that temporarily and you'll see the log again.
If you wanted a few seconds to review the log, you could do something like this also:
Code:
/system/xbin/dger;[COLOR="Red"]sleep 5[/COLOR];kill $PPID
<enter>
A mini-how to for script manager:
In script manager you will add the scripts into script manager and execute them via the app or it's widgets. The scripts should NOT be setup to run as superuser but they still will prompt for super user when the disable one is actually executed and you should respond GRANT to that request. You will use the app to find the scripts in /system/xbin chosing the following:
Code:
/system/xbin/dger
Code:
/system/xbin/egdr
FAQ
Q: If I am going to dirty flash a new rom (no data wipe), What do I need to do to keep GOOD in compliance?
A: IT'S LIKE DANCING AROUND A LAND MINE! You will want to follow this process before and after flashing dirty:
Run dger to return root to your device and disable GOOD
Reboot into cwm
Flash rom and do any other rom specific instructions including any reboots or whatever the rom maintainer wants you to do.
Reflash the gfe_workaround zip from the op since flashing the rom overwrites it.
Boot into the rom and set it up as you like with root...
Run disable good enable root.sh to make sure things are well after rom flash.
reboot one last time
use scripts as normal
Q: If I am going to clean flash a new rom (wipe data), What do I need to do to keep GOOD in compliance?
A: Clean Flashing will require you to restore the good app or jsut reactivate it. You can likely avoid reactivation by following this. YMMV
Run dger to return root to your device and disable GOOD
Use Titanium Backup (or similar like carbon) to backup the GOOD app and data.
Reboot into cwm
Flash rom and do any other rom specific instructions including any reboots, wiping data/system or whatever\ the rom maintener wants you to do.
Reflash the gfe_workaround zip from the op since flashing the rom overwrites it.
Boot into the rom and set it up as you like with root...
Restore GOOD with Titanium. You may need to also restore your android ID with titanium as I am not sure if it hashes that ID with activation credentials.
Immediately run dger BEFORE REBOOTING to make sure things are well after rom flash.
Ensure you redisable any permissions denied things and autostarts.
reboot one last time
use scripts as normal
DEBUGGING PROCESS
So you've experienced a policy break/lockout? Now what?? This is how you can debug and give me what I need to help you if required:
flash newest scripts in OP and boot up and let it settle.
run the disable good script.
run enable good script.
run disable good script again.
That will create log files in /sdcard/ with the same names as the scripts. You can review those or submit them to me in this thread and I can look. I will also need the following. I review these files to see if there are any 'other' superuser or supersu apks that my scripts have missed. I will need the /sdcard/gfe.txt after you run the below to assist posted in the thread.
Run the following commands in a connectbot shell after above:
Code:
Code:
su
find /system/app /data/app /system/bin /system/xbin|sort > /sdcard/gfe.txt
pm list packages >> /sdcard/gfe.txt
Then give me these following logs:
/sdcard/gfe.txt
/sdcard/egdr.......log
/sdcard/dger.......log
Some of the most common reasons for lockouts are because of the running of certain root apps prior to enabling good. Certain root apps still retain root access after you close them. Notably es explorer and titanium. I'm sure there are others but this is two that I know of. If you use those tools either disable root access in them if applicable or reboot before running good after using them.
Change log
04-20-2013 (v16):
Renamed scripts and binary
04-03-2013 (v16):
Added "script complete" messages to output.
04-02-2013 (v15):
Added command line option to turn off auto-launch of GFE. The default will remain to auto-launch it.
04-01-2013 (v14):
Went back to sparky su as other su is causing too many anomolies.
FAQ added to OP.
02-26-2013 (v13):
Removed execution speed enhancement introduced in v11 as it caused some issues.
02-22-2013 (v12):
Further improved Logging to sdcards
Added some enhancements and termination of some root apps(titanium)
02-14-2013 (v11):
Improved script execution speed by parallelizing some operations
Added logging to /sdcard if available
02-04-2013 (v10):
Changed the way I handled superuser apps (or multiples) stored in data and system.
Added ability to handle chainfire's nonag apk in addition to regular supersu.
Started using supersu's su for a more secure setup.
Revamped directions and cleared up some errors in the OP.
01-29-2013 (v9):
added new mask for apk
added error handling for mounts incase.
01-25-2013 (v8):
reversed order of hiding apks between system/data to resolve
issue of supersu/superuser "forgetting" settings when rerooting.
12-18-2012 (v6):
added supersu support
fixed left over apks from super app upgrades
12-14-2012 (v3):
Added clean exit commands.
12-13-2012 (v2):
- Discovery that new script manager may cause compliance issues and doesn't work after temp unrooting!
12-12-2012 (v1):
- Fixed bugs
- Automated variables
- Created flashable setup script
- Simplified the install process
12-10-2012 ():
- Initial design
The 'manual' process may not work anymore. I believe supersu apks are getting picked up for compliance. There are a few more manual ways listed in this thread that may or may not work for you but you are welcome to try them.
MANUAL PROCESS
If the script process is too complicated for you and you want to do things manually, you can do this as well. It is a pain though and more prone to getting the handheld disabled by good because of user error (forgetting to do something).
The key to this way is that gfe doesnt appear to detect supersu apk and does detect superuser apk. Not sure how long this will last! ymmv
You can install supersu, open it and let it authorize. Then rename /system/app/Superuser.apk to super_user.rob since its not needed anymore and let supersu do the authorizations.
Then install "app quarantine" from the market or titanium backup. These apps let you freeze and unfreeze the gfe app so you can bounce between a rooted and unrooted phone. (hint: there are widgets for this in titanium and app quarantine that are much more convenient)
If pre_JB, Install "permissions denied" (in app store) to remove the some of the permissions from the app. specifically you must remove
READ_LOGS
The process is as follows once the above is complete and gfe is installed and you want to use gfe:
FROST GFE(reroot)
open gfe and go into preferences and select "disconnect" and then select shutdown good. VERY IMPORTANT TO DISCONNECT AND SHUTDOWN from within the GOOD app. Do NOT just hit the 'HOME' button and reroot. It WILL detect that it has been frosted and unfrosted if you do not follow this advice
immediately open supersu app and go to settings and select "enable supersu" to reenable root.
open app quarantine (or titanium) and freeze good so it won't autostart.
You can now use the rooted phone like normal.
when you want to use gfe, temp unroot as follows:
UNFROST GFE(temp unroot)
using titanium or app quarantine defrost gfe.
immediately open supersu and go to settings and uncheck "enable supersu". the will hide the su binary and temp unroot.
open gfe and use it like normal.
once done using gfe, refrost it like above
this works very well but ymmv. The scripted method works much better.
Finally had success getting GFE running a recent CM10 nightly on my AT&T SGS3 thanks to calisro. Thanks for figuring out a good work around to enable GFE! It looks like my issues this go around were with Permissions Denied & me doing some uninstall-re-install of GFE.
My process (tweaks to calisro's stuff mostly):
Uninstalled ES explorer (just to make sure it is not causing issues for now)
Installed GFE
Installed Script Manager (I've since upgraded to Script Manager-SManager(NoAds), always a good idea to support the devs)
Installed Permissions Denied
Installed su as /sdcard/rob_su
Opened Permissions Denied and disabled the following permission for the Good Application: READ_LOGS and RECEIVE_BOOT_COMPLETED
Rebooted from within Permissions Denied, checked & verified Good had the 2 permissions in question denied
Created the 3 scripts using the updated versions recently posted
setup_rootdoor.sh
enable_good_disable_root.sh (complete with the missing final line noted above)
disable_good_enable_root.sh
With Script Manager, ran setup_rootdoor.sh
Deleted all data for GFE through app manager
With Script Manager, ran enable_good_disable_root.sh
Activated GFE
Working GFE
Notes:
Permissions Denied takes FOREVER to startup, several minutes at least & you repeatedly see it getting root permissions, at first I thought it was having issues, but I guess that's normal behavior
No need to "Lock Permissions" within the Permissions Denied app from what I've seen
Under Developer Options "Root access" is irrelevant, GFE is working just fine with it set to "Apps and ADB right now"
GFE seems to be sucessfully cleaned up by deleting app data from within app manager
GFE will work fine by wiping app data & initializing it with a new PIN if you get things cleaned up after a policy violation
No need to get an unlock code from your sysadmins after a policy violation, just wipe app data for GFE & get a new PIN (assuming you have access to a website to request a new PIN
Logs & thoughts from of my previous failures & troubleshooting steps http://forum.xda-developers.com/showpost.php?p=33025295&postcount=5
Fallon said:
Finally had success getting GFE running a recent CM10 nightly on my AT&T SGS3 thanks to calisro. Thanks for figuring out a good work around to enable GFE! It looks like my issues this go around were with Permissions Denied & me doing some uninstall-re-install of GFE.
My process (tweaks to calisro's stuff mostly):
Uninstalled ES explorer (just to make sure it is not causing issues for now)
Installed GFE
Installed Script Manager (I've since upgraded to Script Manager-SManager(NoAds), always a good idea to support the devs)
Installed Permissions Denied
Installed su as /sdcard/rob_su
Opened Permissions Denied and disabled the following permission for the Good Application: READ_LOGS and RECEIVE_BOOT_COMPLETED
Rebooted from within Permissions Denied, checked & verified Good had the 2 permissions in question denied
Created the 3 scripts using the updated versions recently posted
setup_rootdoor.sh
enable_good_disable_root.sh (complete with the missing final line noted above)
disable_good_enable_root.sh
With Script Manager, ran setup_rootdoor.sh
Deleted all data for GFE through app manager
With Script Manager, ran enable_good_disable_root.sh
Activated GFE
Working GFE
Notes:
Permissions Denied takes FOREVER to startup, several minutes at least & you repeatedly see it getting root permissions, at first I thought it was having issues, but I guess that's normal behavior
No need to "Lock Permissions" within the Permissions Denied app from what I've seen
Under Developer Options "Root access" is irrelevant, GFE is working just fine with it set to "Apps and ADB right now"
GFE seems to be sucessfully cleaned up by deleting app data from within app manager
GFE will work fine by wiping app data & initializing it with a new PIN if you get things cleaned up after a policy violation
No need to get an unlock code from your sysadmins after a policy violation, just wipe app data for GFE & get a new PIN (assuming you have access to a website to request a new PIN
Logs & thoughts from of my previous failures & troubleshooting steps http://forum.xda-developers.com/showpost.php?p=33025295&postcount=5
Click to expand...
Click to collapse
FYI, I simplified the install with a flashable zip and some modifications to the scripts so that the work they do is dynamic rather than hard coded.
Discovered that the new Script Manager is potentially causing policy compliance issues. See the op for alternative or older version of script manager.
calisro said:
Discovered that the new Script Manager is causing policy compliance issues. See the op for alternative or older version of script manager.
Click to expand...
Click to collapse
Does it only trip when you use it? I think I saw Script Manager update a couple days ago, but haven't had any problems yet. Then again I haven't needed to mess with SM at all since then or even engage root for anything since I got GFE working on CM10 a week or so ago.
I'm having it fail compliance by simply having it installed. I've gone through and upgraded, tested, downgraded, tested, etc for a number of times to be sure and it keeps tripping as soon as it is used once. I've even installed it,denied superuser for the app, then used connectbot to actually run the script and it still failed. As soon as I go back to older version it works flawlessly again.
I'll be interested if yours' trips when toggle root and good once again.
De easiest way to perform tasks that require root is to use chainfire's exynos exploit apk to acquire root and when you're done use supersu to unroot.
Make sure you stop de GFE service before rooting! I just did this and GFE really stops working as I rooted, cleaned up my new polish Note 2 4.1.2. rom, unrooted, booted and used GFE like before, no policy violations.
Whatever you do, do not boot before you unrooted.
blackspp said:
De easiest way to perform tasks that require root is to use chainfire's exynos exploit apk to acquire root and when you're done use supersu to unroot.
Make sure you stop de GFE service before rooting! I just did this and GFE really stops working as I rooted, cleaned up my new polish Note 2 4.1.2. rom, unrooted, booted and used GFE like before, no policy violations.
Whatever you do, do not boot before you unrooted.
Click to expand...
Click to collapse
I wouldn't call that the easiest but to each their own.
While that may work for some people for a short time, it doesn't address a lot of things:
1) Doesn't work with superuser since Good detects the superuser apk and doesn't detect supersu yet. Detection of supersu will be added to Good at some point since its use is being coming more prevalent.
2) That exploit will be addressed soon since it affects millions of hand sets. Samsung will close the exploit and AOSP/AOKP will also address the exploit. So it will be useful for a short time only.
3) It only works for Samsung exynos based handsets only. My method is generic.
4) Requires reboots to bounce back and forth between root and unroot. Would be tiresome to do this many times a day.
5) if you reboot while your rooted, you'll get policy breaks.
v6 works great. the new method of CWM installation of scripts makes it very easy. i used the free autorun app "autorun manager" to disable the receiver flags of GFE.
the only annoyance that really is not bad is that when GFE is disabled, the shortcuts/widgets i have are removed since the app is hidden. a very acceptable price to pay considering my company has the "root" compliance turned on. this at least gives me access to email w/o rebooting when needed.
Thanks for all the work!
Do you have to use CWM recovery to flash the zip or can I use the team win recovery. I'm on Verizon note 2 with jelly beans v4 rom.
Thanks, Will
Sent from my SCH-I605 using xda app-developers app
wc4482 said:
Do you have to use CWM recovery to flash the zip or can I use the team win recovery. I'm on Verizon note 2 with jelly beans v4 rom.
Thanks, Will
Sent from my SCH-I605 using xda app-developers app
Click to expand...
Click to collapse
I have not tried twrp but it should work fine.
calisro said:
I have not tried twrp but it should work fine.
Click to expand...
Click to collapse
Just wanted to say thank you for your scripts. Installation worked perfectly on TWRP and to be safe I froze ES file Explorer in titanium since it came with my ROM.
I think my favorite part of the re root script is killing Good and not being bothered by work emails unless I want to be.
Sent from my SCH-I605 using xda app-developers app
glad they are working for you. what rom and phone are you on?
calisro said:
glad they are working for you. what rom and phone are you on?
Click to expand...
Click to collapse
Jelly Beans v4 ROM for Verizon Galaxy Note 2
Sent from my SCH-I605 using xda app-developers app
Good unrooted
Hi,
I've tried lots of different options, being a complete noob at this unrooting malarkey.
Having had a nightmare rooting, I finally managed it, only for Good to then not work because it was rooted.
I finally managed it thus: Downloaded the paid for version of SuperSU. Selected the 'clean up for complete unroot option', downloaded GFE, and self served a new pin, installed Good, went through the setup steps, et voila!
Have rebooted a couple of times and it's still working. Fingers crossed.
Galaxy S3 i9300 with a nightly build of CyanogenMod 10.1 Jelly Bean 4.2.
Not sure if it'll keep working, but I really hope so!
Bestbaldmanever said:
Hi,
I've tried lots of different options, being a complete noob at this unrooting malarkey.
Having had a nightmare rooting, I finally managed it, only for Good to then not work because it was rooted.
I finally managed it thus: Downloaded the paid for version of SuperSU. Selected the 'clean up for complete unroot option', downloaded GFE, and self served a new pin, installed Good, went through the setup steps, et voila!
Have rebooted a couple of times and it's still working. Fingers crossed.
Galaxy S3 i9300 with a nightly build of CyanogenMod 10.1 Jelly Bean 4.2.
Not sure if it'll keep working, but I really hope so!
Click to expand...
Click to collapse
If you completely unrooted it should be fine but now you don't have root unless you reflash. The point here was to offer a way to temp unroot.
calisro said:
If you completely unrooted it should be fine but now you don't have root unless you reflash. The point here was to offer a way to temp unroot.
Click to expand...
Click to collapse
*hangs head in shame for being a dumbass*
That said, it's no biggie to reflash with CF Root whenever I need Root. Which won't be very often I can't imagine... I've had the phone six months and only flashed it cos I got so frustrated with TouchWiz and the horrendous lag I was getting.
The SGS3 is my work phone; I'm an iOS boy for all my personal stuff (sorry!), so I'm quite used to operating without Root access!
Bestbaldmanever said:
*hangs head in shame for being a dumbass*
That said, it's no biggie to reflash with CF Root whenever I need Root. Which won't be very often I can't imagine... I've had the phone six months and only flashed it cos I got so frustrated with TouchWiz and the horrendous lag I was getting.
The SGS3 is my work phone; I'm an iOS boy for all my personal stuff (sorry!), so I'm quite used to operating without Root access!
Click to expand...
Click to collapse
But the scripts in the OP didn't work for you? What problems did you have?
I understand if it ain't broken don't fix it, but I'm also a noob and was able to get this working- the best of both worlds now!
Sent from my SCH-I605 using xda app-developers app
wc4482 said:
But the scripts in the OP didn't work for you? What problems did you get have?
I understand if it ain't broken don't fix it, but I'm also a noob and got the best of both worlds now!
Sent from my SCH-I605 using xda app-developers app
Click to expand...
Click to collapse
Truth be told, i'm not sure what happened. Flashed the ROM, installed connectbot, ran the scripts; nothing happened. Searched for the scripts in system/xbin but couldn't find them.
This was at the end of two days of battling with connection problems with Odin, phone getting stuck in Download mode, SD card not being recognised with the nightly build of CM 10.1 I was using, and a few other things.
I could probably have made it work, but being as my primary goal was to get rid of TouchWiz and all the Vodafone clag on the phone, that has been achieved.
At some point in the future, i might have another go. But as I'm someone who loves technology but isn't a techie, the instructions on most of these blogs are a bit difficult for my small brain to follow.
That's obviously my problem, not anyone else's, but it takes me a while to penetrate the language and understand what people mean. So, unless I really, really need to be switching back and forth between root and no root, I'll probably leave well alone for a while now.
Thanks, though, to everyone who is clearly a lot, lot cleverer and more persisten than I am for making all this wonderful stuff available.

cant login to Snapchat

I can't log into Snapchat on my OnePlus one. This has started very recently, after a factory reset.
My account is not locked, as I have logged in on my iPhone. I did try to unlock it however to no avail.
I have no 3rd party Snapchat apps installed.
Some apps I have that might be causing the problem:
Titanium backup
Magisk manager (with magisk hide enabled)
Catlog
FX file explorer
Rom: resurrection remix (6/20 update)
Kernel: resurrection kernel
A0001(bacon)
yeah its because of root, UNroot then log in then root again. its the most simple way.
I Found the reason and the resolution in the OnePlus 3T forum:
https://forum.xda-developers.com/oneplus-3t/help/snapchat-fail-login-root-t3571405
"Snapchat checks for root and purposely prevents you from logging in if it find it. If you rooted with SuperSU, try installing Chainfire's SUHide. Otherwise, if you rooted with Magisk, enable MagiskHide in Magisk Manager."
It took forever to find this solution, it worked!
I use SU# and it was simple to "unroot" from within the SU# app
1. click on the settings in the upper right, scroll down to the "cleanup" section, select full unroot, accept all the warning messages, the phone will reboot into recovery and then reboot the phone after it finishes. Your phone may cycle through the reboot process a couple of times
2. log back into your phone, then you can log into the Snapchat app.
3. now you can re-root your phone, if you want to.
Cheers.
For me the easiest way was to install SC in other nonrooted device and log in. After that, use Titanium Backup to export the data app, then from the rooted device just import data and that was it.
leokook said:
For me the easiest way was to install SC in other nonrooted device and log in. After that, use Titanium Backup to export the data app, then from the rooted device just import data and that was it.
Click to expand...
Click to collapse
I wonder why they have such dumb policies.Can't they just simply increase their encryption level? Other social apps don't have any issues with root and they're also secure af!

Question I want try to unroot my pixel 7 pro but...

Hi, I use root in all my devices from a lot of time but now I'm 41yo and no more interested in this.
I use root "now only" for
1) call recording (BCR);
2) SwifthBackup;
3) Revanced.
So, call recorder seems to be installed also without root: just put apk in system app directory!
... but, how I can move an apk in system directory without root or twrp, and with locked bootloader?
SwifthBackup can work without root? I don't remember but I can search.
Revanced isn't a problem, I can use with microG.
----
Any help about my doubts?
I want try also because VPN not work, and after a months of email with support "seems" can be related to unlocked/rooted device.
I want just try.
Ty.
Without root, Swift Backup can backup app APK files, but not the app data. It does allow you to grant adb permissions through Shizuku, but I never figured out what [if anything] that allows it to do. I wasn't able to backup app data with ADB privelages.
I don't know the answer to the Call Recording issue.
lupastro82 said:
Hi, I use root in all my devices from a lot of time but now I'm 41yo and no more interested in this.
I use root "now only" for
1) call recording (BCR);
2) SwifthBackup;
3) Revanced.
So, call recorder seems to be installed also without root: just put apk in system app directory!
... but, how I can move an apk in system directory without root or twrp, and with locked bootloader?
SwifthBackup can work without root? I don't remember but I can search.
Revanced isn't a problem, I can use with microG.
----
Any help about my doubts?
I want try also because VPN not work, and after a months of email with support "seems" can be related to unlocked/rooted device.
I want just try.
Ty.
Click to expand...
Click to collapse
I imagine that, once you move that .apk to the system app directory (while rooted), once you unroot, it should still stay there and probably be accessible; but I'm unsure whether successfully running it will be possible -- it depends on the call recording app and if the app requires root to run. If it doesn't and it simply needs root just to be inserted, then I imagine it would probably work if you unroot.
But I have never heard of this method of getting a mod or add-on to work by inserting it in the system app directory...it's fascinating...
Like you said, ReVanced doesn't necessarily need root to work; it just works better with it. Swift Backup will only in a basic way be able to back your device up without root access.
But if you are simply just trying to get a certain VPN to work -- and in the end you don't want to lose root -- you could try doing the numerous root-hiding methods. There are many games, banking apps, and streaming apps that won't work with root (without even giving you a warning that it's because of root detection sometimes) that, once you hide root successfully, are able to run it. It sounds like that could possibly be the case for your VPN.
There are these you can try (if you haven't yet); Zygisk Deny List, UniversalSafetyNetFix (Displax mod works best with P7P), Shamiko, HideMyApp, Magisk Delta, etc.
Also, please be aware (or reminded if you know already) that while unrooting will not wipe and reset your device, locking your bootloader requires wiping the device and you losing everything! You'll be able to get some stuff restored through Google One Backup/Sync, but most everything will need to be set back up and/or lost. And if all you are seeking is to get a VPN to work, I really highly doubt that the app/service goes so far as to detect if you have an unlocked bootloader; it seems there are some banking apps that go that far, but most apps out there don't go that far, and hearing a VPN does would be a first...
Good luck!
Just Google VPN. Do not work anymore from about two months and seems can be a root/unlocked issue.
Anyway, u're right. Ty so much.

Categories

Resources