环境:android 10
build env: node : v14.19.0
jnitrace app 卡死#
SeeFlowerX:
jnitrace 总是卡死手机的原因找到了!
在源码的 jnitrace-engine/lib/engine.ts 中有一个 dlopen replace 的代码,将这部分代码注释掉就不会卡手机了
将该部分代码改为 patch:https://gist.github.com/SeeFlowerX/67d4503e0e521a6711862f65d8494b00
如果是安装的对应库,那么路径是 > node_modules/jnitrace-engine/dist/engine.js
重新编译:
推到 jnitrace 的目录:
mv jnitrace/build/jnitrace.js /usr/local/Caskroom/miniconda/base/envs/frida14.2.18/lib/python3.7/site-packages/jnitrace/build/
即可生效。
来自 SeeFlowerX 的演示视频:
开启之后,没有成功 hook 到 jni?#
正常的 trace 会有一行:
Traced library "libmynative.so" loaded from path "/data/app/io.reao.mynative-msWjdfdU69wZmWOOd46paw==/base.apk!/lib/arm64-v8a".
说明检测到了目标 so,如果没有,说明没检测到
添加 console.log 可以查看加载了哪些 so