Skip to content

Commit 700383b

Browse files
kiber-ioaviraxp
authored andcommitted
Fixed v3 verification
Signed-off-by: Wang Han <416810799@qq.com>
1 parent b1007e9 commit 700383b

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

app/src/main/java/toolkit/coderstory/CorePatchForT.java

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@
33
import android.content.pm.Signature;
44

55
import java.io.PrintWriter;
6+
import java.io.RandomAccessFile;
67
import java.lang.reflect.InvocationTargetException;
8+
import java.util.Arrays;
79

810
import de.robv.android.xposed.XC_MethodHook;
911
import de.robv.android.xposed.XposedBridge;
@@ -90,6 +92,26 @@ protected void afterHookedMethod(MethodHookParam param) {
9092
if (utils != null) {
9193
deoptimizeMethod(utils, "canJoinSharedUserId");
9294
}
95+
96+
var apkSigningBlockClass = findClass("android.util.apk.ApkSigningBlockUtils", loadPackageParam.classLoader);
97+
var signatureInfoClass = findClass("android.util.apk.SignatureInfo", loadPackageParam.classLoader);
98+
findAndHookMethod(apkSigningBlockClass, "parseVerityDigestAndVerifySourceLength", byte[].class, long.class, signatureInfoClass, new XC_MethodHook() {
99+
@Override
100+
protected void beforeHookedMethod(MethodHookParam param) {
101+
if (prefs.getBoolean("authcreak", false)) {
102+
param.setResult(Arrays.copyOfRange((byte[]) param.args[0], 0, 32));
103+
}
104+
}
105+
});
106+
107+
findAndHookMethod(apkSigningBlockClass, "verifyIntegrityForVerityBasedAlgorithm", byte[].class, RandomAccessFile.class, signatureInfoClass, new XC_MethodHook() {
108+
@Override
109+
protected void beforeHookedMethod(MethodHookParam param) {
110+
if (prefs.getBoolean("authcreak", false)) {
111+
param.setResult(null);
112+
}
113+
}
114+
});
93115
}
94116

95117
Class<?> getParsedPackage(ClassLoader classLoader) {

0 commit comments

Comments
 (0)