frida-java-bridge icon indicating copy to clipboard operation
frida-java-bridge copied to clipboard

frida-trace overload errors

Open secretrobotron opened this issue 4 years ago • 1 comments

In the particular set of apps I'm looking at, I often get an error like this when I run frida-trace -j with some wildcards:

{'type': 'error', 'description': 'Error: no supported overloads', 'stack': 'Error: no supported overloads
    at U (frida/node_modules/frida-java-bridge/lib/class-factory.js:484)
    at value (frida/node_modules/frida-java-bridge/lib/class-factory.js:800)
    at get (frida/node_modules/frida-java-bridge/lib/class-factory.js:714)
    at get (frida/node_modules/frida-java-bridge/lib/class-factory.js:681)
    at <anonymous> (agent.ts:251)
    at <anonymous> (frida/node_modules/frida-java-bridge/lib/vm.js:12)
    at perform (frida/node_modules/frida-java-bridge/index.js:192)
    at <anonymous> (/tracer.js:165)
    at Promise (native)
    at traceJavaTargets (/tracer.js:166)', 'fileName': 'frida/node_modules/frida-java-bridge/lib/class-factory.js', 'lineNumber': 484, 'columnNumber': 1}

It does create a bunch of handlers before this message appears, but it's hard to know if there are

  1. more to create, or
  2. any of them are working

because the output is silent afterward.

Is there something I can do to work around this? My knowledge of the on-device frida brigde/server is limited, so if there's anything I can do to extract more useful debug info, do let me know :).

secretrobotron avatar Jan 21 '21 12:01 secretrobotron

Update: I run into this problem regularly when I cast a wide net, like frida-trace -j 'com.something.cool!*'. However, I can get it to stop by casting slightly smaller net, with frida-trace -j 'com.something.cool!*' -J 'com.something.cool!*$*'. Then, none of those little x&x classes get instrumented, which seems to do the trick. (These little classes look like typed arrays or something—sorry, not a Java master.)

secretrobotron avatar Feb 03 '21 13:02 secretrobotron