Fix Play Integrity (and SafetyNet) verdicts.
Go to file
osm0sis 1a9eb9d2e7
Module scripts fixes/improvements
- add back check_resetprop but rename functions to make their use more clear (thanks HuskyDG)
- combine system.prop (runs at post-fs-data) entries into service.sh so that they're only set if needed (note that they therefore wouldn't need to be late props)
- use a uniform style in all scripts (only necessary quoting and brackets, add trailing newlines, spaces not tabs :P)
- remove GMS data pif.prop/pif.json files left over from previous releases to ensure they don't trigger detection at some point (these lines can be removed again in a later release once we're satisfied everyone affected has this resolved)
2023-11-29 00:20:02 -04:00
.idea New version for custom spoof! 2023-11-27 17:25:34 +01:00
app New version for custom spoof! 2023-11-27 17:25:34 +01:00
gradle/wrapper v13.1 2023-11-20 00:42:21 +01:00
module Module scripts fixes/improvements 2023-11-29 00:20:02 -04:00
.gitignore Added auto module zip! 2023-11-27 12:37:26 +01:00
.gitmodules PROPS-v1.2 2023-11-26 10:51:22 +01:00
build.gradle.kts Add SECURITY_PATCH and fix null props 2023-11-21 14:04:33 +01:00
changelog.md New update! v13.8 2023-11-27 14:18:58 +01:00
COPYING Add license 2023-11-21 14:56:29 +01:00
gradle.properties v13.1 2023-11-20 00:42:21 +01:00
gradlew v13.1 2023-11-20 00:42:21 +01:00
gradlew.bat v13.1 2023-11-20 00:42:21 +01:00
README.md README fixes/improvements 2023-11-27 20:49:56 -04:00
settings.gradle.kts v13.1 2023-11-20 00:42:21 +01:00
update.json New update! v13.8 2023-11-27 14:18:58 +01:00
wallet-troubleshoot-1.jpg Added troubleshooting section to readme 2023-11-21 20:38:36 +00:00
wallet-troubleshoot-2.jpg Added troubleshooting section to readme 2023-11-21 20:38:36 +00:00

Play Integrity Fix

A Zygisk module which fixes "ctsProfileMatch" (SafetyNet) and "MEETS_DEVICE_INTEGRITY" (Play Integrity).

To use this module you must have one of the following:

  • Magisk with Zygisk enabled.
  • KernelSU with ZygiskNext module installed.

Download the latest here.

Telegram group

https://t.me/playintegrityfix

Donations

Official posts

About module

It injects a classes.dex file to modify a few fields in the android.os.Build class. Also, it creates a hook in the native code to modify system properties. These are spoofed only to Google Play Services' DroidGuard (SafetyNet/Play Integrity) service.

The purpose of the module is to avoid a hardware attestation.

About 'pif.json' file

You can modify this file in the module directory to spoof custom values to the GMS unstable process.

You can't use values from recent devices due them triggering hardware backed attestation.

Troubleshooting

Failing BASIC verdict

If you are failing basicIntegrity (SafetyNet) or MEETS_BASIC_INTEGRITY (Play Integrity) something is wrong in your setup. Recommended steps in order to find the problem:

  • Disable all modules except this one

Some modules which modify system can trigger DroidGuard detection, never hook GMS processes.

Failing DEVICE verdict (on KernelSU)

  • Disable ZygiskNext
  • Reboot
  • Enable ZygiskNext

Play Protect/Store Certification and Google Wallet Tap To Pay Setup Security Requirements

Follow these steps:

  • Flash the module in Magisk/KernelSU
  • Clear Google Wallet cache (if you have it)
  • Clear Google Play Store cache and data
  • Clear Google Play Services (com.google.android.gms) cache and data (Optionally skip clearing data and wait some time, ~24h, for it to resolve on its own)
  • Reboot
Guide

Google services cache Removing all data

Read module logs

You can read module logs using this command directly after boot:

adb shell "logcat | grep 'PIF'"

Can this module pass MEETS_STRONG_INTEGRITY?

No.

About Play Integrity, SafetyNet is deprecated

You can read more info here: click me