download:全新版FRIDA与安卓 应用安全与逆向实战宝典
Firda介绍
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底层的时候就很无助了。