短视频、直播数据实时采集接口,请查看文档: TiToData
免责声明:本文档仅供学习与参考,请勿用于非法用途!否则一切后果自负。
现在很多 app
都会对 Frida
进行检测,所以要根据app的情况来具体使用
壳的种类非常多,可以简单的分为以下三类:
firda-unpack 原理是利用frida hook libart.so中的OpenMemory方法,拿到内存中dex的地址,计算出dex文件的大小,从内存中将dex导出,我们可以查看项目中的 OpenMemory.js 文件中的代码更清晰直观地了解。
参考文献: https://bbs.pediy.com/thread-258776.htm
GitHub地址:https://github.com/GuoQiang1993/Frida-Apk-Unpack
将 dex
文件并 dump
下来,保存在 data/data/packageName
目录下
葫芦娃所写,脱壳后的dex文件保存在PC端main.py同一目录下,以包名为文件名
GitHub地址:https://github.com/hluwa/FRIDA-DEXDump
文件头搜索dex,来脱壳
会搜索 dex
文件并 dump
下来,保存在 data/data/packageName/files
目录下
GitHub地址:https://github.com/lasting-yang/frida_dump
寒冰写的, Frida 版的 Fart, 目前只能在 andorid8 上使用该frida版fart是使用hook的方式实现的函数粒度的脱壳,仅仅是对类中的所有函数进行了加载,但依然可以解决绝大多数的抽取保护
GitHub地址:https://github.com/hanbinglengyue/FART 下载 frida_fart.zip
即可
frida_fart.zip
fart.so
与 fart64.so
推送到 /data/app目录下
并使用 chmod 777
frida -U -f com.example.test -l frida_fart_hook.js --no-pause
Shell
_ 复制_
高级用法:如果发现某个类中的函数的CodeItem没有dump下来,可以调用dump(classname),传入要处理的类名,完成对该类下的所有函数体的dump,dump下来的函数体会追加到bin文件当中。
于被动调用的脱壳修复,由于代码覆盖率低,不可能触发app中的所有函数的调用,因此,修复的范围有限。
原文:https://www.cnblogs.com/titodata/p/14321971.html