環境: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