This commit is contained in:
5ec1cff
2024-07-18 10:51:35 +08:00
parent 5c9fe31ced
commit c620cecc2f

View File

@@ -88,7 +88,8 @@ object KeystoreInterceptor : BinderInterceptor() {
return Skip
}
private var tried = false
private var triedCount = 0
private var injected = false
fun tryRunKeystoreInterceptor(): Boolean {
Logger.i("trying to register keystore interceptor ...")
@@ -96,10 +97,11 @@ object KeystoreInterceptor : BinderInterceptor() {
val bd = getBinderBackdoor(b)
if (bd == null) {
// no binder hook, try inject
if (tried) {
if (triedCount >= 3) {
Logger.e("inject tried but still has no backdoor, exit")
exitProcess(1)
}
if (!injected) {
Logger.i("trying to inject keystore ...")
val p = Runtime.getRuntime().exec(
arrayOf(
@@ -114,7 +116,9 @@ object KeystoreInterceptor : BinderInterceptor() {
Logger.e("failed to inject! daemon exit")
exitProcess(1)
}
tried = true
injected = true
}
triedCount += 1
return false
}
val ks = IKeystoreService.Stub.asInterface(b)