发展历史
本页为社区译文;如有疑义,请以英文原文为准。
英文原文
Frida 的诞生源于 @oleavr 和 @hsorbo 的一次随意头脑风暴:他们希望能把 枯燥的手动逆向工程变成更有趣、更高效、更具交互性的体验。
在开发了 oSpy 和其他用于解决逆向工程需求的定制工具后,@oleavr 开始逐步 构建 frida-gum,这是一个面向 C 语言的通用跨平台代码插桩库。当时,它只能 hook 函数,并提供一些工具,帮助开发者编写内存泄漏单元测试,以及进行极细粒度的 性能分析。后来,它经过进一步改进并被用于创建 Frida。frida-core 组件负责处理 将共享库注入任意进程的全部繁琐细节,并与运行在这些进程内部的注入代码维持实时 双向通道。在该载荷内部,frida-gum 负责 hook 函数,并使用出色的 QuickJS 引擎提供脚本运行时。
后来,@oleavr 和 @karltk 利用并不充裕的业余时间,开展了一些娱乐性质的 结对编程黑客马拉松,为 frida-gum 的代码跟踪引擎(即 Stalker)带来了 巨大改进。与此同时也创建了 Python 绑定。他们开始意识到,是时候让更多人了解 这个项目了,于是后续的黑客马拉松便投入到搭建网站和编写亟需的文档上。
如今,对于任何对动态插桩和/或逆向工程感兴趣的人来说,Frida 都应当是一套非常 有用的工具箱。目前已有适用于 Node.js、Python、Swift、.NET、 Qt/Qml 和 Go 的语言绑定,也可以从 C 语言中使用 Frida。
下一页