Skip to content

Commit 04987a8

Browse files
committed
Don't modify CertCapabilities.AUTH capability (#118)
1 parent 84f05c4 commit 04987a8

File tree

3 files changed

+8
-6
lines changed

3 files changed

+8
-6
lines changed

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

+2-2
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ public void afterHookedMethod(MethodHookParam methodHookParam) throws Throwable
8989
@Override
9090
protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
9191
if (prefs.getBoolean("digestCreak", true)) {
92-
if ((Integer) param.args[1] != 4 && prefs.getBoolean("authcreak", false)) {
92+
if ((Integer) param.args[1] != 4 && (Integer) param.args[1] != 16 && prefs.getBoolean("authcreak", false)) {
9393
param.setResult(Boolean.TRUE);
9494
}
9595
}
@@ -100,7 +100,7 @@ protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
100100
@Override
101101
protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
102102
if (prefs.getBoolean("digestCreak", true)) {
103-
if ((Integer) param.args[1] != 4 && prefs.getBoolean("authcreak", false)) {
103+
if ((Integer) param.args[1] != 4 && (Integer) param.args[1] != 16 && prefs.getBoolean("authcreak", false)) {
104104
param.setResult(Boolean.TRUE);
105105
}
106106
}

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

+3-2
Original file line numberDiff line numberDiff line change
@@ -235,10 +235,11 @@ public void afterHookedMethod(MethodHookParam methodHookParam) throws Throwable
235235
hookAllMethods(signingDetails, "checkCapability", new XC_MethodHook() {
236236
@Override
237237
protected void beforeHookedMethod(MethodHookParam param) {
238-
// Don't handle PERMISSION (grant SIGNATURE permissions to pkgs with this cert)
238+
// Don't handle PERMISSION & AUTH
239239
// Or applications will have all privileged permissions
240240
// https://cs.android.com/android/platform/superproject/+/master:frameworks/base/core/java/android/content/pm/PackageParser.java;l=5947?q=CertCapabilities
241-
if (((Integer) param.args[1] != 4) && prefs.getBoolean("digestCreak", true)) {
241+
// https://cs.android.com/android/platform/superproject/main/+/main:frameworks/base/services/core/java/com/android/server/accounts/AccountManagerService.java;l=5867
242+
if ((Integer) param.args[1] != 4 && (Integer) param.args[1] != 16 && prefs.getBoolean("digestCreak", true)) {
242243
param.setResult(true);
243244
}
244245
}

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

+3-2
Original file line numberDiff line numberDiff line change
@@ -28,11 +28,12 @@ public void handleLoadPackage(XC_LoadPackage.LoadPackageParam loadPackageParam)
2828
hookAllMethods(signingDetails, "checkCapability", new XC_MethodHook() {
2929
@Override
3030
protected void beforeHookedMethod(MethodHookParam param) {
31-
// Don't handle PERMISSION (grant SIGNATURE permissions to pkgs with this cert)
31+
// Don't handle PERMISSION & AUTH
3232
// Or applications will have all privileged permissions
3333
// https://cs.android.com/android/platform/superproject/+/master:frameworks/base/core/java/android/content/pm/PackageParser.java;l=5947?q=CertCapabilities
34+
// https://cs.android.com/android/platform/superproject/main/+/main:frameworks/base/services/core/java/com/android/server/accounts/AccountManagerService.java;l=5867
3435
if (prefs.getBoolean("digestCreak", true)) {
35-
if ((Integer) param.args[1] != 4) {
36+
if ((Integer) param.args[1] != 4 && (Integer) param.args[1] != 16) {
3637
param.setResult(true);
3738
}
3839
}

0 commit comments

Comments
 (0)