安装命令pip install objection -i https://mirrors.aliyun.com/pypi/simple
hook指定进程
objection -g 测试 explore
进程名不定是包名,也可能是app名字,如“测试”就是app的名字
若出现如下错误,说明python 缺少setuptools
直接安装setuptools
即可
pip install --upgrade setuptools
重新执行:objection -g 测试 explore
出现如下,说明成功hook指定进程
命令操作
查看进程中都有哪些类
android hooking list classes
结果你会发现打印出几千条,这几千条都是系统的类,如果需要观察指定包中的类,可按如下命令查询
过滤指定包中的类
android hooking search classes com.example.test
查看类中有哪些方法
android hooking list class_methods com.example.test.MainActivity
hook指定类中的所有方法
android hooking watch class com.example.test.MainActivity
当被hook的方法执行后,frida可以观察到,如下
hook指定类中的指定方法
如hook getThumbsCount(),分别查看它的参数,调用栈,以及返回值。命令如下
android hooking watch class_method com.example.test.MainActivity.getThumbsCount --dump-args --dump-backtrace --dump-return
当hook函数执行时,打印如下
可以发现,若方法没有参数,则不会显示
hook指定参数签名的方法
如果函数存在重载,如果不指定方法签名,会hook住所有签名的方法,此时,假定getThumbsCount()有一个重载函数getThumbsCount(int index),此时只想hook getThumbsCount(int index),那么命令如下
android hooking watch class_method com.example.test.MainActivity.getThumbsCoun
t "I" --dump-args --dump-backtrace --dump-return
显示已经hook成功,但实际操作时,并无反应,暂不清楚什么情况。