[Android Apps and Games] fgl27:
[IMG="iSu by fgl27"]https://github.com/fgl27/isu/blob/master/screenshots/icon.png?raw=true[/IMG]

I know that there is many tools apps etc to disable or hide SU.

I decide to make this just because those did't work on my device back in 2016 and or CyanogenMod/LineageOS ROM that I use, so I assume this happens to other in CyanogenMod/LineageOS users too, I start this thread and made this app that can help to pass a safety net test on any rooted device (hide SU only when using Lineage add on SU) as it is no longer just a SU hider app is little more.

View attachment 4256629 View attachment 4256630​

This is only to CyanogenMod/LineageOS SU binary aka CM-SU, the CM-SU only works with CyanogenMod/LineageOS ROM's and ROM that use they source code as base

That can be Download from Lineageos download page click here to see

No it doesn't work with SUPERSU or any other SU that is not base on CM-SU

No it doesn't support Xposed Hide, if you use Xposed you can't pass safety net with CM-SU.

No it doesn't support AB devices (devices with two system partition) that can't be mounted as rw dynamically in android.

What is iSu?

A simple app to help the user to pass safety net test on CyanogenMod/LineageOS or any CyanogenMod/LineageOS base ROM's.

I personally test this on Marshmallow and Nougat CM base ROM's it works 100%, it also Supports Lollipop but Kit Kat and older OS's are not supported.

How To use it?

read Installation instructions, download Folder with instructions on the bottom of the post

Download and Install the app as a normal app, if you wanna the full app support, use a ROM with the supported SU version (CM-SU), download Folder with instructions on the bottom of the post

if on Marshmallow or Lollipop flash the zip (iSu_kernel_Reboot_Support), download Folder with instructions on the bottom of the post

Learn how to use the app, below instructions

How To pass safety net?

Su deactivated (demanding)

SELinux enforced (demanding)

Android debugging deactivated (not demanding for all devices)

Props known props or special props can't have a red warning (demanding)

Below are some samples of fails or pass:

PASS

View attachment 4257299

*Android debugging only affects some devices, disable if you don't need it.

*In props if there is props with a red warning that may be the reason of the fail if SU and SELinux is set as the above.

If you have SU active you will always fail

FAIL everything

View attachment 4257305

*Fail because SU is Activated

If you have SU deactivate you will not always pass

FAIL everything 2

View attachment 4257324

*Fail because SELinux is in Permissive

If you have SU and SELinux on a correct position you may not always PASS, because some props cause fail of ctsProfile

FAIL ctsProfile

View attachment 4257306

*The above fail because ro.boot.verifiedbootstate

*Some props may or may not cause full FAILS or a FAIL of ctsProfile

Detailed app function description?

The app is divided in 5 tabs (Checks, Controls, Monitor, Props and settings), plus widgets and tiles, bellow a detailed description:

Checks

View attachment 4256633

Basic information about the application, the main start tab if it show a red warning on the SU state options because yours current SU is not supported and the app will work with limited functionality.

SU State, current user SU version and reboot support status

Update, Check for iSu updates

Safety Net test, Let the user try the safety net status, in case of fail it will tell what fail and current SU, SELinux and ADB state as those if on wrong position will cause the fail

Log, Generate a full logs of information about the device and how the app is running, in case of a problem share the log.zip on the thread and explain the problem

Controls

View attachment 4256634

The main control tab, be aware there is extras actions for this controllers in settings tab

SU, Changes and show SU state. This function only works with CM-SU

SELinux, Changes and show SELinux state, plus allow user to fake enforce Selinux for devices that have problems when running with SELinux enforced

Android debugging, Changes and show Android debugging state

Tasker, Info about how to control the app using Tasker

Monitor

View attachment 4256639 View attachment 4257327

This tab only works with CM-SU

A Service to monitor when foreground app starts then, activate or deactivate SU and SELinux or ADB (base on settings options).

App monitor, Status and access to accessibility service.

Don't Care List, Select the apps that will not have effect to App monitor, when a foreground app start.

Deactivate SU, Select the apps that will deactivate SU when started

Automatic Re-Activate SU, If this switch is on, will automatic active SU when leave the app that deactivated SU

Activated SU, Select the apps that will activate SU when started

Automatic Re-Deactivate SU, If this switch is on, will automatic deactivate SU when leave the app that activated SU

Props

View attachment 4256640 View attachment 4257328

A tab to change the value of any ro.prop or read only prop, using the resetprop applets from magisk to make a tool to modify on the go any ro.prop, there is also a list of known props that can cause safety net fail they safe or unsafe value

Read Only editor, List of ro props and the ro props changed by the user

Special Props, Known props that has a complicated value that can't be define as OK or NOK

Known props list, just explanation about safe, unsafe or unknow values

Force set all Known props, Click to force all Known Props to the chosen value

Known props, the real list of known props and they current value click to change

Settings

View attachment 4256641

Basic application setting, extra controls and notifications

Application, Allow to force language to English

SU, Extra SU options allow to deactivate it on boot This function only works with CM-SU

App monitor, Allow delays to app monitor This function only works with CM-SU

Props, Allow to apply props changes on boot

Notifications, Enable disable notifications or toast's of SU state This function only works with CM-SU

SELinux, Extra control of SELinux state base on SU is state changes This function only works with CM-SU

Android debugging, Extra control of Android debugging state base on SU is state changes This function only works with CM-SU

Widgets and tiles

View attachment 4256649

The app has widget and tiles that can be used to control the app Controls

Widgets They only work with CM-SU for SU changes

Mono Widget, Allow to change and read SU state, it also work with Settings extra controls (Notifications, SELinux and Android debugging)

Dual Widget, Allow to change and read SU or SELinux state, it also work with Settings extra controls (Notifications, SELinux and Android debugging)

Tiles Only visible on Nougat

SU tile, Allow to change and read SU state, it also work with Settings extra controls (Notifications, SELinux and Android debugging)

iSu tile, Click to open the app

Installation instructions:

Download Folder: Click Here

There is three files, description:

iSu_X_x.apk Install the apk as a normal app.

iSu_kernel_Reboot_Support_V_X_x_and_up.zip Flashable zip, flash only if you are running Marshmallow or Lollipop

Explanation of the above, iSu only need flashable reboot support for Marshmallow or older OS.

The kernel reboot support , this files prevents from losing SU access after a reboot with SU deactivated.

Old reboot support, in case the current fail

Old reboot support download Folder: Click Here[/B]

iSu_kernel_Reboot_Support_V_X_x_and_up_Enforcing.zip Flashable zip, use only one zip, if running Marshmallow or older

iSu_kernel_Reboot_Support_V_X_x_and_up_Permissive.zip Flashable zip, use only one zip, if running Marshmallow or older

Explanation of the above, iSu only need flashable reboot support for Marshmallow or older OS.

The kernel reboot support use only one(enforcing or permissive), this files prevents from losing SU access after a reboot with SU deactivated.

Use the one base on yours current Selinux status to check on your device look in settings > About a phone > SELinux Status if is enforcing or permissive, some CM ROM Run with selinux in Permissive so check yours.

Be aware!!

Updating CM/Los nightly or any ROM update of any CM/Los base ROM will remove the changes made by the zip, so is need to re-flash those .zip after any ROM update, may be need to do it also with some custom kernel from developer that use a boot.img to share the kernel(check yours kernel zip content to know).

If you forget to flash the .zip in a update and have lost ROOT don't worry just go back to recovery and flash it after the reboot all will be good.

The below are obsolete after V3.6 of the app, see old_version folder in main download folder for those files just reference no longer supported

iSu_kernel_cmdline_Patch_V_X_x_and_up.zip

The kernel_cmdline is only need to some devices that after deactivating SU with the app still can't pass the safety check, Google is using kernel and bootloader arguments to determined that the user modify the stock SW(AKA is using custom ROM) and prevent from passing as "safe", this add extra safe arguments to cmline and help to achieve the pass current it only support some device (Nexus and Motorola, maybe other post on the thread device/vendor if the zip help you)

iSu_kernel_defaultprop_Patch_V_X_x_and_up.zip

This is only for those that have apps that use rootbeer SU detection...

explain in this post (Click here).

After flashing defaultprop_Patch zip the user will no longer have access to the option in Settings > Developer options > Root access

But that is not a problem as the same zip will enable root by default so you can use without changing that option.

XDA:DevDB Information

iSu, App for all CyanogenMod/LineageOS devices (see above for details)

Developer donation link:

To donate via paypal click here

No other donation option is available.

Contributors

All Contributors can be see in github click here

fgl27, I use osm0sis Anykernel2 for the kernel zip

App Source Code: https://github.com/fgl27/isu

Extra App credits: iSu readme credits

Version Information

Status: Stable

Current Stable Version: Check latest version in Download folder

Changelog

Created 2016-Oct-03

Last Updated Check latest version

[IMG="XDA Labs"]https://img.xda-cdn.com/oshFRo1rSEHTP5__wCXMO3e3u-I=/http%3A%2F%2Fimgs.xda-labs.com%2F0621sigs%2Flarge%2Fcontributor.png[/IMG]