Closed douglasforseti closed 3 months ago
Hmm, that's very interesting. Can you try simplifying your CLI script bit by bit, to see which one causes this? Config.js has some shared logic & settings, so you'll always need that, but all other others can be included or not independently. It's also worth testing with no Frida scripts specified on the CLI at all, just to check if this is caused by Frida detection in general (or some Frida bug or similar).
If you find it's cause by a specific script with various parts (like the script with all the cert unpinning hooks), you can try commenting out specific sections and see exactly which hook is breaking things. Takes a little trial and error, but it should be possible to pin this down a very specific cause with that.
@pimterry thank you for help.
I tried just run frida (command below), and I got the same exception. It seems to happen right at startup when trying to open a webview
$ frida -U -f br.com.autopass.top
Do you think I should open an issue on the Frida project?
Ok, thanks for confirming that. I think this means it's either a Frida bug, or it means the app is actively detecting Frida and blocking it (crashing intentionally to block this).
You might be able to confirm this by trying lots of different Frida versions. If this does run without crashing in any other Frida version, then this is almost certainly a bug (and if you can test different versions to find when this broke, and report it to the Frida team, I'm sure they'd love to hear about that).
Alternatively, to confirm for sure whether this is being actively detected & blocked, you'll need to do some serious reverse engineering of the app itself. That's quite a bit more complicated, but you might find https://httptoolkit.com/blog/android-reverse-engineering/ an interesting introduction if you're not familiar.
Either way, I'm going to close this for now, since it seems like this is not related to the current scripts at all. If you do find out that this is due to intentional Frida detection in the app though, and you learn any more about how that works in this case, do please share info here! That's definitely an interesting topic, and I'm open to eventually trying to extend the scripts here to deal with that where possible.
Ok, thank you!
I tried some other older versions of Frida and the crashing still happens. I think it is being actively detected and blocked.
I did simple reverse engineering, and I found this:
package com.appsflyer.internal;
public enum AFa1xSDK$23740$AFa1xSDK {
AFInAppEventParameterName;
private static final AFa1xSDK$23740$AFa1xSDK[] AFInAppEventType;
values;
public String AFKeystoreWrapper;
static {
AFa1xSDK$23740$AFa1xSDK var0 = new AFa1xSDK$23740$AFa1xSDK("XPOSED", 0, "xps");
values = var0;
AFa1xSDK$23740$AFa1xSDK var1 = new AFa1xSDK$23740$AFa1xSDK("FRIDA", 1, "frd");
AFInAppEventParameterName = var1;
AFInAppEventType = new AFa1xSDK$23740$AFa1xSDK[]{var0, var1};
}
private AFa1xSDK$23740$AFa1xSDK(String var3) {
this.AFKeystoreWrapper = var3;
}
}
Do you think is there a way to bypass?
No idea I'm afraid! It's not obvious to me from that snippet exactly what this is doing, you'll need to look into all the related classes and references and try to work out how this is used. It certainly suggests that's some kind of Frida detection going on, but I'm afraid it's hard to be any more specific.
I am using Burp Sute Community with a rooted Samsung Galaxy A04e device running Android 13. I am trying to inspect an app that uses certificate pinning, br.com.autopass.top
My environment info:
setenforce 0
The error: