美文网首页
Frida-延迟Hook方法

Frida-延迟Hook方法

作者: 小木桨 | 来源:发表于2018-09-04 20:08 被阅读72次

在某些时候想要Hook的类可能还没有被加载进来,如果直接加载注入脚本可能会报找不到指定要注入的类的异常,所以应该在脚本中加入延迟方法.

使用 setTimeout(fn, delay) 方法进行延迟调用

setImmediate(function() {
//延迟1秒调用Hook方法
setTimeout(test, 1000);
});
//执行Hook方法
function test(){
    Java.perform(function () {
    var Activity = Java.use("com.test.utils");
    Activity.test.implementation = function () {
        console.log("test");
        var p = arguments[0];
        var res = this.y(arguments[0]);
        console.log("[test] params = "+p+"\nres="+res);
        return res;
    };
});
}

下面列出几个常用的函数

  • setTimeout(fn, delay): 在延迟 delay 毫秒之后,调用 fn,这个调用会返回一个ID,这个ID可以传递给 clearTimeout 用来进行调用取消。
  • clearTimeout(id): 取消通过 setTimeout 发起的延迟调用
  • setInterval(fn, delay): 每隔 delay 毫秒调用一次 fn,返回一个ID,这个ID可以传给 clearInterval 进行调用取消。
  • clearInterval(id): 取消通过 setInterval 发起的调用

相关文章

网友评论

      本文标题:Frida-延迟Hook方法

      本文链接:https://www.haomeiwen.com/subject/oupnwftx.html