yashsingh1/xdaforums huggingface dataset:
[Magisk] chiteroman:
PlayIntegrityFix/app/src/main/cpp/main.cpp at 72f3882054c04a64d689eb1899bc71f4cc095fff · chiteroman/PlayIntegrityFix

Fix Play Integrity (and SafetyNet) verdicts. Contribute to chiteroman/PlayIntegrityFix development by creating an account on GitHub.

github.com

FIRST_API_LEVEL is only used in native code, in Java this property cannot be set because it is marked as @SystemApi

core/java/android/os/Build.java - platform/frameworks/base - Git at Google

Maybe I can bypass it with this:

GitHub - LSPosed/AndroidHiddenApiBypass: LSPass: Bypass restrictions on non-SDK interfaces

LSPass: Bypass restrictions on non-SDK interfaces. Contribute to LSPosed/AndroidHiddenApiBypass development by creating an account on GitHub.

github.com
[Magisk] zgfg:
All the other 7 properties from Json/ spoofs are shown in the log as

11-29 14:28:17.677 11144 11144 D PIF/Java: [PRODUCT]: lisa -> taimen
11-29 14:28:17.677 11144 11144 D PIF/Java: [DEVICE]: lisa -> taimen
11-29 14:28:17.677 11144 11144 D PIFJava: [MANUFACTURER]: Xiaomi -> Google
Etc

making it clear from which properties in JSON they were taken from

Only, for the FIRST_API_LEVEL there is

no such log line with [FIRST_API_LEVEL]

And from the log line you quoted:

11-29 10:13:16.380 9236 9329 D PIF/Native: [ro.product.first_api_level] -> 25

it is not really clear was that spoofed based on JSon (like for the other 7 properties), or is it just hard-coded that ro.product.first_api_level

must be always spoofed to 25

Btw, in the v13.8 Beta there was also a log line saying how many properties were read from Json (normally 8, or 7 if SECURITY_PATCH was omitted in JSON) - IMO, that was very useful to be sure that the whole JSON was successfully read/processed
[Magisk] zgfg:
Yeah, but I'm pretty sure that in v13.8 Beta there was also a log line like for the other seven properties from JSON:

... D PIF/Java: [FIRST_API_LEVEL]: 32 -> 25
[Magisk] UberNorse:
I can confirm I am on 13.8 Magisk 26400 Android 14 Pixel 7 Pro and I am failing device integrity and I rolled back to 13.8 beta and still failing device integrity. The attached is all I'm getting from logcat.
[Magisk] Virnik0:
I set it back, yes. Three times during last month when SFNet issues started again.
[Magisk] immortalwon:
Google banned sailfish fingerprint, new version uploaded to github and passing for the time being.
[Magisk] chiteroman:
New update!

Release v13.9 · chiteroman/PlayIntegrityFix

Google banned old fingerprint :(

github.com

Also, seems like Pixel 8 Pro users cannot pass Device using this, but my safetynet-fix fork yes, wtf ???
[Magisk] UberNorse:
Thank you.
[Magisk] makeyourself:
Well, it's relatively easy to change the package name to whatever you like if that's what you need to do. See step 5 here for how to do it with MT Manager, apparently it can also be done with King Installer.
[Magisk] osm0sis:
My Pixel 8 Pro is passing fine using my custom print on PROPS v2.1, as usual. 🤷‍♂️
[Magisk] Virnik0:
Doesn't work. Was passing with 13.8

View attachment 6038177
[Magisk] UberNorse:
13.9 failing device integrity on P7P.
[Magisk] immortalwon:
Just curious, are you using shamiko?
[Magisk] Virnik0:
After reverting back to 13.8, I do pass again
[Magisk] Virnik0:
Yes
[Magisk] Virnik0:
The download doesnt seem to work, it says that the key doesn't exist in xml page instead. will try from desktop
[Magisk] chiteroman:
New v13.9 update with old service.sh and system.prop

Seems like few devices need it.

Release v13.9 · chiteroman/PlayIntegrityFix

Google banned old fingerprint :(

github.com
[Magisk] UberNorse:
No.
[Magisk] shoey63:
@chiteroman

I think you need to put a timeline on how long you will continue to release stable builds with a different print every time Google shuts one down. Eventually there will be none left!

Users will simply have to get used to the idea of finding one that works for them and keeping their mouth shut🤐
[Magisk] rogers11:
Working
[Magisk] awarexda:
Wow, this is full of adrenaline! 13.8 didn't pass but 13.9 passes (S22 Ultra).

One good point is that it seems that wallet lags a bit to see the "failed device integrity" by still showing "meets requirements". For some hours (?), days (?) - who knows...

I would like some sort of notification when an PIF update is available... Any idea how to have one????
[Magisk] UberNorse:
Now passing. Thank you for the tireless effort!
[Magisk] immortalwon:
Try it first, using it for all google related app / services such as: G. play services, g wallet, g play store and report back.
[Magisk] xcl1pse:
Just uninstall the manager if the app don't like KernelSU, why need to manual rename it lmao
[Magisk] swour:
With the increasing rate at which fingerprints "expire", we should be asking ourselves that question. Is there a plan for how to pass device integrity once we run out of fingerprints? If no, stable releases might have to be stopped altogether. Putting it on everyone to search custom ones themselves. That is not a long term solution either though.
[Magisk] immortalwon:
I agree with shoey but also with you. It may be the end for P.I passing. The average user does not feel comfortable modding files themselves but they might have to.
[Magisk] immortalwon:
Hang out at the local pub (telegram) channel for quick updates or chatting

Play Integrity Fix

https://www.paypal.com/paypalme/chiteroman	https://github.com/chiteroman/PlayIntegrityFix	https://xdaforums.com/t/module-play-integrity-fix-safetynet-fix.4607985/

t.me
[Magisk] zgfg:
Both Sailfish (v13.7) and Taimen (v13.8) have gone

I had v2.1 Beta with their custom JSONs, and observed that Device started to fail

Then retested with the corresponding versions with haed-cored spoofs, unfortunately the same

Seems that Google is catching up faster and faster now

Downloading v13.9 - thanks for express support, we'll see for how long it will live

Edit: v13.9 works. And my Goodness, what I see in the log: 🖥️
[Magisk] makeyourself:
Because it's relatively easy to do so and then you won't have to keep uninstalling and installing it to make changes to ksu config, but do as you wish obviously "lmao"
[Magisk] rodken:
I agree with you that for many users, P.I. passing was a relatively straightforward and accessible way to modify their devices and unlock new features.

The modding community is resilient and has a history of adapting to changing circumstances even if P.I. passing does indeed becomes temporarily unavailable.

Notwithstanding, the potential end of P.I. passing could incentivize modders to focus on developing more user-friendly modding methods that don't require complex technical procedures which could lead to a broader adoption of modding among average users, even if it means utilizing alternative methods to traditional P.I. passing techniques.

Framing the future of Android modding will depend on the adaptability of the modding community and the willingness of device manufacturers and software developers to provide modders with access and tools to modify their devices responsibly.
[Magisk] Virnik0:
thx, works.
[Magisk] badabing2003:
100% agree,

Otherwise this will become a daily affair and soon we'll run out of prints.

We're making it easy for Google, all they have to do is follow this module and update daily their banned list.

If we all switch to each to their own custom print, then it would be harder (not impossible) for Google to know what's being used / abused.

Including a print in the updates should be stopped.

If the user does not provide pif.json, the module should not run.
[Magisk] xcl1pse:
It's kinda useless since "dirty" app still can scanning spesific app installation
[Magisk] Vision:
For that i still keep v13.3 (old is gold) with custom fingerprint found from here (Deleted) still pass 2/3
[Magisk] zgfg:
Thanks for the quick 'fix'

🖥️ 📺

Can't find more appropriate 'emoticons' to what I see in the log
[Magisk] osm0sis:
Dude... The fix isn't this, it's putting them in post-fs-data.sh so that it's closer to system.prop but still conditional.

Don't blind revert, figure out what's wrong then revise. Be methodical. 🤦‍♂️

(Your IDE seems to continually delete trailing newlines in files, which is weird and not preferred... Also please stop using tabs, everything is spaces in the files right now, you mixing-and-matching makes it look crazy... :p)

I'll open another PR...

Edit: @Virnik0 + @UberNorse can you stick around for a few minutes to test for me?
[Magisk] osm0sis:
@Virnik0 + @UberNorse, please try the attached and see if it resolves what you were seeing.
[Magisk] highdiver_2000:
Magisk 26.4 main version
[Magisk] BrimoFan123:
Yeah... I'm afraid this battle at the end will be lost.

Google will detect and ban all spoofed fingerprints, apps developers will switch to require strong integrity attestation...

Rooting era is going to the end.

F**king Google!

Why they are doing this? How big-scale is the problem with compromised rooted devices? How many people lost their money?

Does Microsoft prohibit the use of elevated Administrator privileges? No, so why does Google do it?

I'm pretty sure soon I will uninstall google wallet and will use bank applications until they allow do that on rooted devices but when it will be mandatory to pass strong integrity then... second phone for "special" applications will be required.
[Magisk] UberNorse:
I will try this for you this afternoon have to be on the road now. Thank you
[Magisk] Gilg@mesh:
13.9 works with P8P.

btw, **** you, Google!
[Magisk] highdiver_2000:
Sure PM the link.

BTW, using PIF and Shamiko module with standard magisk, Wallet, POSB and Singpass works.
[Magisk] JpegXguy:
We need some kind of guide for the custom prints, I think @osm0sis mentioned writing one?

Long term the only solution would be some kind of legislation from the EU.

It's really annoying that certain companies like Google, manufacturers or banks try to tell me what to do with my phone. It should be like PC. I should be able to use whatever I want. If a UNIX kernel from 1978 runs on my phone and I want to use it you should not block me. Root is the freedom to say you own your phone.
[Magisk] pndwal:
Re:

Re-worded for clarity! 👍 PW
[Magisk] pndwal:
No. 🙃 PW
[Magisk] HRSE:
I hope it's not topjohnwu that you're cursing.
[Magisk] DanGLES3:
Until ya realize that on PCs, programs and specially games can run with privileged access to your device to see if you're doing anything malicious or not (most specifically kernel level anticheats which pretty much block Linux users)

So, they're only "comfortable" with you having admin access on a PC because they can also have such access
[Magisk] pndwal:
... Are you still using (deprecated) MHPC with Force BASIC key Attestation option active?...

The default setting spoofs Nexus 5 in Model prop(s) on Google devices and it seems it may also use Nexus 5 model prop value for devices unknown to MHPC... That module sets props globally which may cause all kinds of issues... Probably interfering with targeted USNF/PIF model prop setting.

If using, uninstall it!... Otherwise, are you using a custom ROM?... Which?

🤠 PW
[Magisk] osm0sis:
Should probably add MHPC to the removal list in PIF.

Edit: Done. https://github.com/chiteroman/PlayIntegrityFix/pull/103/commits
[Magisk] michasssxdd:
View attachment 6038238View attachment 6038239View attachment 6038240The phone does not meet security requirements. How to fix it? Oneplus 6t
[Magisk] osm0sis:
RTFM:

GitHub - chiteroman/PlayIntegrityFix: Fix Play Integrity (and SafetyNet) verdicts.

Fix Play Integrity (and SafetyNet) verdicts. Contribute to chiteroman/PlayIntegrityFix development by creating an account on GitHub.

github.com
[Magisk] m0han:
On v13.8 Device Integrity which was passing yesterday started failing today. Installed v13.9 and all is good.
[Magisk] Virnik0:
Works.
[Magisk] osm0sis:
Perfect! I've already got the fixes in my custom branch PR, and I'll add them to a main branch PR now. :cowboy:

Edit: Done. https://github.com/chiteroman/PlayIntegrityFix/pull/104/commits
[Magisk] gpvecchi:
Failing device integrity with all the versions now on Pixel 8 Pro, latest beta software.
[Magisk] arda99:
May I suggest a quick hack to add support for custom.pif.json?

in main.cpp:

#define CUSTOM_JSON_FILE_PATH "/data/adb/modules/playintegrityfix/custom.pif.json"

....

static void companion(int fd) {
....
FILE *json = fopen(CUSTOM_JSON_FILE_PATH, "r");
if (!json)
json = fopen(JSON_FILE_PATH, "r");
[Magisk] Gilg@mesh:
13.9 works for me P8P.
[Magisk] osm0sis:
stat is technically faster from what I was reading? Of course yours doesn't require the extra include. You definitely seem to have more C++ experience than me (not difficult to achieve :p), what do you recommend?
[Magisk] Virnik0:
and git link? As I am not certain I ever used your repos (maybe, dunno, really). Or is it that there would be two projects doing the same now?
[Magisk] osm0sis:
They're fixes I've submitted to chiteroman's repo.

Pull requests · chiteroman/PlayIntegrityFix

Fix Play Integrity (and SafetyNet) verdicts. Contribute to chiteroman/PlayIntegrityFix development by creating an account on GitHub.

github.com
[Magisk] dmenezes:
Same here, except I installed V13.9, rebooted, and still failing Device Integrity.

Cleared storage in Google Play Services, rebooted again: same thing.

Then I reviewed the list of apps in Deny List, added Google Play Services and everything in it, ditto Google Play Store. Then force-stopped and cleared storage for both, then rebooted: same thing.

Anything I might be missing?

Running Official LOS20 on my Lisa.

TIA!
[Magisk] gpvecchi:
Are you on stable or beta?
[Magisk] Gilg@mesh:
stable
[Magisk] osm0sis:
Try my test build: https://xdaforums.com/t/module-play-integrity-fix-safetynet-fix.4607985/page-175#post-89189197
[Magisk] Chris_Kaos79:
Try Airplane-Mode to disconnect all Data-Connections to the Google-Servers - when you delete the mentioned Data.
[Magisk] UberNorse:
This is passing for me just to let you know.
[Magisk] Virnik0:
awesome!
[Magisk] dmenezes:
Downloaded it from here: https://github.com/chiteroman/PlayIntegrityFix/releases/tag/v13.9

So, I'm guessing Stable.
[Magisk] a g bell:
Working again for now,thanks for posting this 😊
[Magisk] dmenezes:
Thanks for the tip. Tried it but no change, still failing Device Integrity.
[Magisk] dmenezes:
That did it: downloaded and installed the above, activated airplane mode, force-stopped both Google Play Store and Google Play Services, cleared their storage, then rebooted, deactivated airplane mode, and run SPIC again: Device Integrity is back!

Thanks everyone that helped, and specially @osm0sis for the modded module that fixed it.
[Magisk] dmenezes:
PS: is it just me, or has Google started working overnight to make our lives difficult?
[Magisk] ralf_waldo:
I'm using stock rom on Sony Xperia I IV with android 13. I just flashed this module and nothing else. @chiteroman can you please have a look at this observation for bug fix.
[Magisk] Dj Telo:
Let me try to ask again. Anyone has any suggestion to avoid things changing automatically in the background?
[Magisk] ralf_waldo:
Hi @osm0sis thanks for adding this to the commits. Please do let me know if it needs to be tested.
[Magisk] Homeboy76:
Open Google Play Store ==> Settings ==> Network preference ==> Auto-update apps ==> Set it to

Don't auto-update apps
[Magisk] gpvecchi:
I'm talking about phone firmware. QPR2 beta or 14 stable?
[Magisk] Ginosius:
Yes I'm also wondering about that.

I'm using this module on my OnePlus 7T Pro running CrDroid v9 (A13) with KernelSU, ZygiskNext and Shamiko.

For me the module has always been working from the early releases.

No need for any special props or settings or whatever.

The only thing I'm seeing is that Google is now using the ban-hammer on these "fingerprints" much quicker than before.

This is a bit cumbersome when using a custom rom and relying on device integrity for stuff like Google Pay and banking apps.

Are there any new methods to battle this?

Or is it time to just buy a new phone which has at least 5 years of support? (Like Samsung for example).

I kinda love my OnePlus to be honest 😂
[Magisk] zgfg:
In the 'background' - you want to hack Google's servers to prevent them applying changes there or what?

Google is not changing anything (in the background) on your phone
[Magisk] elfrench:
13.9 work in P7P after delete data/cache play store...services...wallet ...etc
[Magisk] dmenezes:
Thanks for the clarification.

First time I see any mention the vendor firmware version plays any role in that.

Anyway, here's what I was able to dig up: V14.0.2.0.TKOMIXM

So, I guess it's stable and not beta.
[Magisk] Vision:
@chiteroman someone looking for you

View attachment 6038278

View attachment 6038279
[Magisk] vinnik:
View attachment 6038276View attachment 6038275

For me 13.9 works perfectly for device integrity. Xiaomi 14 with latest xiaomi.eu rom.

But I can't get my wallet to work. I did the airplane mode trick and clearing data+cache of wallet, playstore and play services.

I have zygisk enabled and have no clue why wallet is not working. Even re-installed wallet.

Can someone help? :)
[Magisk] niko26:
Just curious about the fingerprints - do they really exists meaning that they're based on real h/w fingerprints or can you just generate some?
[Magisk] osm0sis:
Read back a page... It should be more clear what ROM *build* fingerprints are and how they work.
[Magisk] niko26:
Thx, I haven't caught up with the latest posts when I've asked my question ;)

Still struggling to understand what's happening in the background. Is there a database of fingerprints which Google has, which has all the known devices from all hardware vendors?

And if we use a fingerprint from an existing device and Google blocks this fingerprint - does that mean whoever actually owns the hardware with this fingerprint is out of luck due the blocked fingerprint?
[Magisk] sawdoctor:
Could some create a sticky thread with an idiot proof guide? Think that would be the ideal solution
[Magisk] badabing2003:
Something even better on it's way

View attachment 6038282
[Magisk] sawdoctor:
Can you pm a mod to make this a sticky thread/post on its own? It's going to get lost otherwise and we'll keep seeing the same question
[Magisk] osm0sis:
It's very specific to this thread however.. 🤔

I'd say it should be linked in the OP.
[Magisk] sawdoctor:
I'm running QPR 2 1.1 on the pixel fold and 13.9 wouldn't work but chiitomans modded safetynet fix works so should work for you
[Magisk] vinnik:
Same result with the fix of @osm0sis...
[Magisk] osm0sis:
You've got something else wrong. It passes Device Integrity so the module is working. Make sure you've added your Google account again and got it all set up since you wiped Play Services data. If that doesn't work call Wallet support.
[Magisk] zgfg:
Please double check:

For adding SECURITY_PATCH or not, is it really the threshold March 2023 or March 16 2018?

In your script you have the condition:

if [ "$UTC" -gt 1521158400 ]; then
item "Build date newer than March 2018, adding SECURITY_PATCH ...";
SECURITY_PATCH=$(file_getprop build.prop ro.build.version.security_patch);

And indeed, when I tested with online UTC Calculator, it converts as on the screenshot to March 16, 2018, noon
[Magisk] osm0sis:
Whoops, yep, typo, fixed.
[Magisk] franco985:
I have recovered info how to ... (in case it needs)

Make FCM Push back to work after cleared GSF data​

Once you cleared GSF (Google Service Framework, com.google.android.gsf) data, a new DeviceID of Google Service Framework will be generated. So all the FCM tokens that have registered in the server of Apps will no longer work (it will point to your old DeviceID). You can follow these steps to make the Apps to generate a new FCM token.

The idea is to delete a file called xxx.gms.appid-no-backup (xxx usually is the package name) in the app's files folder. Once the file does not exist, the app will generate a new FCM token when it starts up next time.

Run the following commands to do that, you can use adb shell, Termux, some terminal apps, or whatever.

Get the root user

su

cd to /data/data

cd /data/data

Search for the files ending with gms.appid-no-backup firstly (without really deleting it), so you can review the list of the files that will be deleted, and make sure it will not delete something wrong (usually it should not. I don't think any other useful files named like this). If you don't really care, you can skip this step.

find . -type f -name '*gms.appid-no-backup'

Delete all the files end with gms.appid-no-backup

find . -type f -name '*gms.appid-no-backup' -delete

Reboot your device.

It is better to launch the apps that receive FCM push one time, to make sure it generates a new FCM token and registers with the server.
[Magisk] vinnik:
Weird. As everything was working before google updated something again. Xiaomi.eu includes the PIF by default.

I just checked and I am still logged in everywhere I checked.
[Magisk] Serveh:
maybe you just have to wait some time, it can take hours

View attachment 6038290
[Magisk] zgfg:
You could also use newer v13.8 Beta, v2.0 and v2.1 Betas with support for custom PIFs
[Magisk] gpvecchi:
Thanks, I couldn't find it. Can you please piont me to the correct post? Osmosis one doesn't work...
[Magisk] Dj Telo:
Ha ha ha, very funny, thanks for your constructive attitude.

I have auto update apps off and automatic system updates off. Yet this keeps happening every couple of weeks. There must be some other thing happening "in the background", or whatever expression you may want to use, that maybe can be prevented from happening.
[Magisk] Qnorsten:
The changes are all happening on googles server nothing you can do to prevent them from blacklisting the fingerprint and other parameters spoofed by this module.

If you use the custom branch and find your own parameters to put into pif.json so you don't spoof the same device as everyone else, then it might take them longer to blacklist. But that depends on if Google are using volume of devices to detect spoofed devices or something else.

I started using my own parameters after today, it will be interesting to see if it takes them longer to blacklist that compared to the parameters used in the latest pif version