当前位置:   article > 正文

frida hook 出现 Process terminated_frida process terminated

frida process terminated

最近在学习frida的时候,同一个so文件,其他函数可以拦截,但是唯独拦截其中一个的时候,会出现 Process terminated,找了下资料,网上也没说是什么原因,经过自己研究发现,原来是hook到了未导出的函数,虽然拿到了so基址+偏移,但还不是不够的,还要让偏移+1,是因为thumb和arm指令的区分,地址最后一位的奇偶性来进行标志,所以这里还需加1也就是最终的地址,这一点很重要不管使用Cydia还是Frida都要注意最后计算的绝对地址要+1,不然会报错的。

  1. var str_name_so = "libcocos2dlua.so"; //需要hook的so名
  2. var n_addr_func_offset = 0x03548E4 + 1; //需要hook的函数的偏移
  3. var n_addr_so = Module.findBaseAddress(str_name_so); //加载到内存后 函数地址 = so地址 + 函数偏移
  4. var n_addr_func = parseInt(n_addr_so, 16) + n_addr_func_offset;
  5. var ptr_func = new NativePointer(n_addr_func);

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/484662
推荐阅读
相关标签
  

闽ICP备14008679号