self.app_pid = self.frida_device.spawn([self.package_name])
# Save pid. Then if in start_app check Device.get_process to match pid
session = self.frida_device.attach(self.app_pid)
self.load_script(session)
logger.info("Script loaded, resuming app")
self.frida_device.resume(self.app_pid)
最近在使用frida进行js注入时,会去hook一些比如idfa、idfv、request等方法,但是遇到很多应用,在启动时,应该是进行了一些对frida检测,或者是对某些方法进行了防护,应用启动后,会一直卡在启动页,并且循环去调用被我hook的方法,直到崩溃;
但如果是手动启动应用后,再去frida注入js,就不会出现这种情况;
通过打印堆栈,我关注到一些方法,通过MonkeyDev hook那些方法,App能正常启动;
IDFA.txt (61.0 KB)
IDFV.txt (117.6 KB)
这边是番茄的堆栈信息;还有其他很多应用,都发现了类似情况;
想知道这些App是怎么做的防护,有没有什么思路能够绕过这些防护?