你可能曾经疑惑:
为什么 API 是 Python,调试逻辑却是 JavaScript?
现在你可以这样做:
$ npm install frida我们刚刚为你带来了全新的 Node.js 绑定, 而且它是完全异步的:
请查看这些示例, 了解 API 的大致样貌。它基本上是 Python 绑定所提供 API 的一对一映射,但遵循 Node.js / JavaScript 约定,例如方法名使用驼峰式命名、方法返回 ES6 Promise 对象而不是阻塞,等等。
现在,将它与 NW.js 结合起来,你就可以完全使用 HTML、CSS 和 JavaScript 构建自己的桌面应用。
所以,我们有了全新的 Node.js 绑定;太棒了!不过,我们并没有就此止步。 但首先谈谈未来。我很高兴地宣布,我刚刚创办了一家公司,目标是资助 Frida 的兼职开发。 通过提供逆向工程和软件开发方面的专业服务,希望能产生足够的收入来支付我的生活开销, 并留出一些时间投入 Frida。从长期来看,我也希望市场会有这样的需求:帮助添加功能, 或将 Frida 集成到第三方产品中。不过眼下,如果你知道有人正在寻找逆向工程或软件开发方面的专家, 若能向他们推荐我并请他们与我联系,我将不胜感激。详细信息请参阅我的简历。
先说到这里,让我们回到本次发布。接下来是:支持 32 位 Linux!甚至 Stalker 也已经完成移植。 不止如此,Linux 后端甚至可以像其他平台一样进行跨架构注入。这意味着 64 位 Frida 进程, 例如你的 Python 解释器,可以注入 32 位进程。反过来也同样可行。
另一项很棒的更新是,Tyilo 为 frida-trace 贡献了改进, 使它现在能使用 man 手册页自动生成日志处理程序。很棒,对吧?不过还有更多好东西:
- frida-server 端口现在会被重复使用。因此,如果你在 Android 上使用 Frida, 除非确实要同时附加到多个进程,否则无需不断转发端口。
- 改进 Linux 和 Android 的
spawn()支持,现在也支持 PIE 二进制文件。 - 改进 Android 的稳定性和兼容性。
- 全面改造 Mac 和 Linux 构建系统,让你可以轻松地只构建自己关心的部分; 甚至还能构建一些你可能不知道其存在、以前默认不会构建的组件。
- Python 绑定做了一项小幅简化:不再需要写
frida.attach(pid).session.create_script(), 只需写frida.attach(pid).create_script()。这与全新的 Node.js 绑定一致, 也是我们必须提升主版本号的原因。
大致就是这些了。请在互联网上分享这篇文章,帮忙让更多人知道 Frida。 作为一个开源项目,我们的规模仍然很小,因此口碑传播对我们意义重大。
尽情享用吧!
oleavr