Frida在不在控制台时崩溃

时间:2018-02-21 09:16:09

标签: javascript android frida

我在尝试打印所有课程时遇到此错误,或者我试图加载任何 js

该脚本取自here,它有一些有用的钩子。

js部分是 -

setTimeout(function() {
    Java.enumerateLoadedClasses({
        onMatch: function(className) {
            send(className);
        },
        onComplete: function() {
            send("done");
        }
    });
}, 0);

我对frida很新。

Error: VM::GetEnv failed: -2
    at e (frida/node_modules/frida-java/lib/result.js:6)
    at frida/node_modules/frida-java/lib/vm.js:71
    at p (frida/node_modules/frida-java/index.js:171)
    at frida/node_modules/frida-java/index.js:112
    at repl1.js:15

Frida版本 - frida-server-10.6.54-android-arm64 最新版本

更新

我意识到这只会在加载js文件时发生,但如果在控制台上粘贴相同的js则不会发生。

任何应用程序都是一样的。

1 个答案:

答案 0 :(得分:0)

您应该尝试例如enum_classes.js:

Java.perform(
  function(){
    Java.enumerateLoadedClasses(
      {"onMatch":function(className){
         console.log(className) },
         "onComplete":function(){}
       }
     )
   }
 )

并通过以下方式使用Frida加载此js:

frida -U -l enum_classes.js --no-pause -f <package-name>

在放置enum_classes.js或添加路径之前的同一目录上运行此脚本(例如/path/where/you/store/this/frida/script/enum_classes.js)

您可以获取软件包名称:

frida-ps -U