frida / frida-core

Frida core library intended for static linking into bindings
https://frida.re
Other
609 stars 193 forks source link

Android Process.enumerateThreads is Empty #125

Closed Benno1308 closed 6 years ago

Benno1308 commented 7 years ago

Hello, i've used

BabelCore = require('babel-core'),
Frida = require('frida'),
FridaCompile = require('frida-compile'),
co = require('co');
co(function *() {
  let scriptCode = yield FridaCompile.compile(require.resolve('./remote'), {}, {babelify: true});
  scriptCode = BabelCore.transform(scriptCode.bundle, { presets: ['env']});

  const device = yield Frida.getUsbDevice(1000);

  let processes = yield device.enumerateProcesses();

  let session = yield device.attach(processes[0].pid);

  const script = yield session.createScript(scriptCode.code);
  yield script.load();
  console.log("script loaded");
})
.catch(error => {
  console.error(error);
});

to Inject the following Script into the app Cookie Clicker:

console.log("Before enumerateThreads");

Process.enumerateThreads({
  onMatch: function (thread)
  {
    console.log("onMatch called");
  },
  onComplete: function()
  {
    console.log("onComplete called");
  }
});

console.log("After enumerateThreads");

Console Output:

Before enumerateThreads
onComplete called
After enumerateThreads

As you can see onMatch never gets called

Frida: 10.0.3 Version: Android 7.1.1 Model: One Plus 3

P.S: Sorry for the Close and reopen of the Issue, I had some problems with the Markdown

oleavr commented 6 years ago

Please reopen in frida-gum. Cheers!