SuperSU and SafetyNet / Android Pay

Search This thread

garyd9

Inactive Recognized Developer
Sep 13, 2006
2,643
2,732
53
Pittsburgh, PA
That doesn't work for me. I disabled superuser but safetynet still fails
That's interesting.

On my device (galaxy note 5, systemless root, NO xbin binding), disabling superuser allows safetynet checks to pass. It's very possible that something other than the existence of 'su' is failing safetynet. You might have xbin binding, xposed installed, or something changed that safetynet explicitly checks for.
 
R

r3t3ch

Guest
That doesn't work for me. I disabled superuser but safetynet still fails

As mentioned earlier, if you're on 2.67 it won't work as intended. I can confirm that on 2.67 the disable option actually leaves su active, while on 2.66 it works correctly.

Although temporarily disabling supersu allows safetynet checks to pass and cards to be added in AP, can anyone confirm that AP will allow an actual transaction to go through? I remember in the early stages of the AP fiasco, disabling supersu passed safetynet but still couldn't get AP fully working.
 
Last edited:

Alxoom33

Senior Member
May 18, 2011
5,184
1,857
New York
www.sack-ip.com
Google Pixel Tablet
As mentioned earlier, if you're on 2.67 it won't work as intended. I can confirm that on 2.67 the disable option actually leaves su active, while on 2.66 it works correctly.

Although temporarily disabling supersu allows safetynet checks to pass and cards to be added in AP, can anyone confirm that AP will allow an actual transaction to go through? I remember in the early stages of the AP fiasco, disabling supersu passed safetynet but still couldn't get AP fully working.
Don't agree. I'm on 2.67 on the Nexus 6, and temporarily disabling Su# allows AP to pass.

Sent from my Nexus 6 using Tapatalk

---------- Post added at 09:50 PM ---------- Previous post was at 09:48 PM ----------

As mentioned earlier, if you're on 2.67 it won't work as intended. I can confirm that on 2.67 the disable option actually leaves su active, while on 2.66 it works correctly.

Although temporarily disabling supersu allows safetynet checks to pass and cards to be added in AP, can anyone confirm that AP will allow an actual transaction to go through? I remember in the early stages of the AP fiasco, disabling supersu passed safetynet but still couldn't get AP fully working.
Good point. Not going shopping now. Too cozy and warm. It's cold outside!

Sent from my Nexus 6 using Tapatalk
 

luigidk

Senior Member
Dec 6, 2011
718
274
Don't agree. I'm on 2.67 on the Nexus 6, and temporarily disabling Su# allows AP to pass.

Sent from my Nexus 6 using Tapatalk

---------- Post added at 09:50 PM ---------- Previous post was at 09:48 PM ----------


Good point. Not going shopping now. Too cozy and warm. It's cold outside!

Sent from my Nexus 6 using Tapatalk

Unfortunately for me disabling supersu in the app does not allow safetynet to pass.
 

shoey63

Recognized Contributor
I can confirm that AP now detects Systemless Root on my Nexus 6, even with the su/xbin_bind file disabled. Minor inconvenience, just temporarily disable Super Su in the app and AP works fine. Then enable SuperSu after your transaction, update binary and reeboot. Easy, peasy at least for now.

Sent from my Nexus 6 using Tapatalk

No need to update the binary and reboot. Open the app, ignore the nags and re-enable in settings.
Done.
 

Pig Vomit

Senior Member
Aug 20, 2008
419
153
Orange County, California
Weirdness going on. After my prior problems....I uninstalled SuperSU, unrooted, flashed stock *everything* except for userdata, reinstalled systemless root 2.67, tried Android Pay, got the "can't use" "can't verify OS" or whatever message I had gotten before. Two days later, went to the market, and Android Pay worked. There had been no changes since my prior failed attempt.

I think that perhaps Google is trying different things server-side in an effort to keep Android Pay secure and defeat systemless root.
 
  • Like
Reactions: Alxoom33

bunklung

Senior Member
Mar 20, 2011
532
110
It appears that Safetynet will fail when a file named su exists in /su/bin regardless if it's a valid su or has the correct file permissions. So right now one can only toggle su from within supersu.apk before and after AP usage. That's not a terrible situation. I could live with that, but I suspect this will change on Google's end as Safetynet is altered to dig deeper into the Kernel to look for patching.

Perhaps a Tasker profile which unroots the phone when Android Pay is launched, then roots the phone again when Android Pay is closed.

I don't anticipate Chainfire working to introduce any workarounds on this either as he has already said he won't.

For the people who run custom roms/kernels and temp unroot does NOT fix the situation, then Safetynet is digging deeper than just looking for the SU binary.
 

DROITURK182

Senior Member
Oct 11, 2010
573
150
Gainesville
Update: went to McDonald's to check if AP worked with systemless root. Went and unchecked disable su in app, loaded up safety net app and checked and it passed, went up to counter tried to pay with AP and it failed. Maybe someone else can try the same steps that I did but this time maybe reboot the phone before using AP. If not I will tonight when I get off from work this time with a reboot after disabling. :(
 

FletchF

Senior Member
Aug 15, 2010
229
25
Update: went to McDonald's to check if AP worked with systemless root. Went and unchecked disable su in app, loaded up safety net app and checked and it passed, went up to counter tried to pay with AP and it failed. Maybe someone else can try the same steps that I did but this time maybe reboot the phone before using AP. If not I will tonight when I get off from work this time with a reboot after disabling. :(

Just tried the same with the same results. After disabling su, Safetynet Playground passed, but AP wouldn't work. I did not reboot before trying AP. I also was unable to re-enable root without re-flashing 2.67.
 

bobby janow

Senior Member
Jun 15, 2010
6,830
2,631
This new detection is quite easy to beat really.

The thing is, most work-arounds that aren't ridiculously complicated are fairly easily detectable anyway.

My favorite line from the OP. "This thread has been created because you guys simply cannot stop talking about this, so these posts can now go here, where I don't ever have to see them. "

Made you look, made you buy a penny book. So I'm ready to beat this new detection. Do tell.
 

Alxoom33

Senior Member
May 18, 2011
5,184
1,857
New York
www.sack-ip.com
Google Pixel Tablet
My favorite line from the OP. "This thread has been created because you guys simply cannot stop talking about this, so these posts can now go here, where I don't ever have to see them. "

Made you look, made you buy a penny book. So I'm ready to beat this new detection. Do tell.
OK, but what is your point Bobby?

Sent from my Nexus 6 using Tapatalk
 

Top Liked Posts

  • There are no posts matching your filters.
  • 54
    This is the place to discuss anything and everything related to SuperSU and SafetyNet / Android Pay.

    To clarify, I am not currently actively doing any development on having SuperSU pass SafetyNet detection, or having Android Pay work; the same way I put no effort into beating other root detection methods such as various enterprise security tools.

    In case any SuperSU-rooted device passes SafetyNet, that is a bug in SafetyNet, not a feature of SuperSU.

    While I may not agree with Google's stance, I'm not about to go messing with payment systems. Is it possible though? Probably yes.

    This thread has been created because you guys simply cannot stop talking about this, so these posts can now go here, where I don't ever have to see them.
    33
    One fast question: Up there you said that you were not recommending systemless v2.61 "yet" over v2.52, but that you "would soon". For Android 6.0.1 and maybe next releases, the system option will be completely dumpled out, or both options will be eligible? And for now, can we keep with 2.52 forward until new advice or its not recommended anymore? I am one of those that end up doing a lot more modifications to /system so systemless root doesn't seem any better than normal root, and not worth the hassle.

    Thanks for your replies @Chainfire and for your continued work and support. While systemless root is the right longer term move, until we get unionfs/overlayfs I don't think many of us can escape still modifying /system for various reasons. Yes, we can already bind mount by hand various files and directories and manually fix apps that need need to change /system (and even some of them need to be installed as system apps) but this gets annoying quickly at least for Nexus devices that receive the monthly security updates from Google.
    I would appreciate it if you could still have an easy way to have a /system based root. I read your post about touching su in /system, would be possible to provide a flashable zip that does just that? Or a version of SuperSU that has the switch set to install in/system? Just looking for an easy way to be able to take the monthly security updates without going the custom ROM or kernel way. Thank you.

    I completely agree! I change some system sounds and add the no tether check to the build.prop with every update Although systemless root isn't the best option for me. I do think having both as an option would be great, if not too much to hope for.

    +1
    I still use 2.52 while upgrading my 5x to 6.0.1 because I don't need android pay and I want to keep the things simple as possible.

    For updates instead of flash boot&recovery before each OTA I prefer flash boot&system&radio from factory image (that are out sooner on each update).

    So the classic, ever so great method of root has been dethroned then? Just like that? No more system root? Not even a thorough explanation or farewell?

    If systemless is the future, fine. I just won't update atm. Apps that install on the system partition are iffy or they require symbolic link or they just don't work. Too much work if you ask me.

    I understand this is a transition but i would of at least liked system root support until systemless gets good enough.

    With that said, Is there a way to update Nexus 6P to 6.0.1 system root right now?

    I think there is a bit of confusion going on here. Let me explain this one more time.

    (1) Being able to change things on /system is completely unrelated to having a system-based root or a system-less root. System-less root does not prevent you from making any changes to /system you want. The root itself just doesn't make any changes to your /system. It is true that on some devices modifying /system doesn't work right even with root, but this is not due to root itself or how/where it is installed, these are two separate issues.

    (2) On 6.x, even with a system-based root, you still need a patched (custom) boot image (kernel). If you don't want the system-less root because you don't want to need a patched kernel, installing root to /system isn't going to solve that problem for you.

    (3) Root on /system still works if installed that way, it just isn't installed that way by default. I'm keeping it available in case the exploiters need it to root locked bootloader devices. I have no idea how they would do this, but I'd rather not limit them at this point.

    (4) I will provide a solution to increase compatibility with old apps by doing something with /system/xbin/su, for 2.62.

    Aside from point (4), there are no benefits that I can see to using a /system based root over the system-less variant. Please, try to explain to me why you think you need it. What benefit will it bring you? Because none of the points raised in the quoted posts above (again, aside from 4) actually work the way it appears you think it does.
    29
    If I flashed 2.52 system beta on the Nexus 6p but want to switch to 2.61 systemless, do i have to remove 2.52 system prior or will applying 2.61 systemless handle this? If I do need to remove 2.52, how do I do that?

    The upcoming 2.62 will wipe 2.52, but if you want easy OTA in the future, reflashing stock /system is advised (and the only 'supported' upgrade path)

    I don't think most people care about being able to receive OTA's. If a new factory image comes out, people usually flash that long before the OTA will hit their device.

    You think wrong.

    Exactly. If you can root you can flash a new build. And what are the chances that OTA updates actually work when you are rooted (systemless) and some app may have modified /system anyway without you realizing? OTA updates are over-rated. Now Android Pay is a different story.

    Don't project your own preferred way of working on a few dozen million users, you will come up short.

    @Chainfire
    Is there anything untoward in this recovery.log which is preventing root on the Tab S2 sm-t710?

    http://pastebin.com/fAufmsZW

    2.62 will have a possible work-around for your problem. When it's out (probably some time today), try again, and let me know if the issue was fixed.

    of course, any modification on /system invalidate Google Pay or OTA, but I think this is irrelevant for most. Ideally we want root and continue to receive and update OTA directly, but even with systemless mode you ca¡n't do it, you have to flash boot anyway.

    On a personal side, I prefer/need access and change my system partition, not only to modify the hosts file, but to delete content, add myself and others.

    The "Full Unroot" option in SuperSU settings will automatically reflash boot. And there's more stuff coming to make OTAs easier. Surprise, not everything can be done in one day. And again, systemless root does not prevent you from modifying system.

    I got everything up and running yesterday on my Nexus 5. All working as expected. I know you backup the stock_boot image file in /data/. I have two backed up stock boot images. I had SuperSU 2.60 first and I have 2.61 currently. Do each of your upgrades create a new stock boot image? and can I delete the old ones?

    Actually it should have removed the old ones automatically. I changed the script from uncompressed backups to compressed backups at some point and forgot to fix up the cleanup part as well. This will be fixed in 2.62. You can figure out which one is the current correct backup by looking at the end of /init.rc, or when 2.62 is out, flash back stock boot image before applying the new ZIP, and the old ones will be removed automatically.

    Good catch. It's dynamic and needs to be static to work universally most likely.

    Edit: Hmm it's a recovery command, not an included binary.. so not sure why the linking error. @Chainfire might need to do some of his LD_LIBARY_PATH magic to fix it up or there's something wrong with the recovery build you're using.

    Exactly this.

    Hi, I just flashed Official MMB29K, in my Nexus 5 and SuperSU 2.61 SystemLess, but I have an issue:
    ES File Explorer doesn't prompt me for root permissions; if I try to enable "Root Explorer" toogle in the left panel, a message says that the Test failed, bla bla bla.
    But other apps have successfully obtained the root permissions.
    What the hell?!

    Root Explorer, like many other apps, will need to be updated.

    It's weird how everyone expects everything to just work perfectly out of the box every major Android update even though they change half the system around.
    12
    After reading the last 10 pages I feel like this is now an android pay thread :(