Frida
是一款基于 Python + JavaScript
的 Hook
与调试框架。
Firda
是一款易用的跨平 Hook
工具, Java
层到 Native
层的 Hook
无所不能,是一种 动态 的插桩工具,可以插入代码到原生 App
的内存空间中,动态的去监视和修改行为,原生平台包括 Win、Mac、Linux、Android、iOS
全平台。
- 静态二进制插桩:在程序执行前插入额外的代码和数据,生成一个永久改变的可执行文件。
- 动态二进制插桩:在程序运行时实时地插入额外代码和数据,对可执行文件没有任何永久改变。
Frida
的功能如同油猴插件,通过油猴插件编写的脚本可以直接改变网页的编码方式。
大部分 App
对于我们来说都是黑盒,对 App
进行逆向和动态调试、或自动化分析、需要不断的进行动态调试,Frida
通过使用 Python
注入 JavaScript
脚本,都是通过 JS
脚本来操作设备上的 Java
代码。
如果需要持久化的 Hook
还是需要通过 Xposed
等框架,但是 Frida
的动态和灵活性对逆向和自动化逆向提供了很大帮助。
- 对于逆向操作破解来说方便,安装环境和配置环境要求简单兼容性好。
- 选择动态调试函数会遇到各种反调试、崩溃,相比
xposed
而言,frida
优势是其动态执行不需要重启。
因为Frida大致原理是手机端安装一个server程序,然后把手机端的端口转到PC端,PC端写python脚本进行通信,而python脚本中需要hook的代码采用javascript语言。
第一、Xposed的优缺点
优点:在编写Java层hook插件的时候非常好用,这一点完全优越于Frida和SubstrateCydia,因为他也是Android项目,可以直接编写Java代码调用各类api进行操作。而且可以安装到手机上直接使用。
缺点:配置安装环境繁琐,兼容性差,在Hook底层的时候就很无助了。
第二、Frida的优缺点
优点:在上面我们可以看到他的优点在于配置环境很简单,操作也很便捷,对于破解者开发阶段非常好用。支持Java层和Native层hook操作,在Native层hook如果是非基本类型的话操作有点麻烦。
缺点:因为他只适用于破解者在开发阶段,也就是他没法像Xposed用于实践生产中,比如我写一个微信外挂用Frida写肯定不行的,因为他无法在手机端运行。也就是破解者用的比较多。
![图片[1]-骑个伯乐(Frida-Hook 注入调试工具) 2021-1-5[更新]-诺诺诺嗯](https://www.nnnen.com/wp-content/uploads/2021/01/11.png)
![图片[2]-骑个伯乐(Frida-Hook 注入调试工具) 2021-1-5[更新]-诺诺诺嗯](https://www.nnnen.com/wp-content/uploads/2021/01/22.png)
1.
请不要将软件放在中文目录 否则会出现开启服务和执行注入错误。。。
测试环境win10 64位 雷电模拟器>=4 安卓版本>=7
需要Python和Frida 环境
勾选重启注入 是frida_server先把APP结束掉,再附加APP运行 适合某些APP启动就加密的情况
强烈推荐安卓7以上 安卓5非前台运行的APP可能会附加失败(包括启动就注入!)
软件只用来学习研究使用,请勿用于非法用途 否则后果自负!!!
本版本是第一版,难免会有BUG,如有BUG联系我即可
- 最新
- 最热
只看作者