JsHook 到底是什么——一个 Frida 注入的图形化管理器
一句话说清
JsHook 是安卓上的一个 Frida 注入管理工具——它把 Frida 动态二进制注入框架和 rhino JavaScript 引擎打包成一个图形化安卓应用,让你不用敲命令行,就能用 JavaScript 写脚本给目标应用挂钩子。
它本身不提供任何现成功能。装上之后界面空荡荡的,应用列表和 Hook 服务全是灰的。要让它干活,得先激活环境、然后写脚本(或订阅别人公开的脚本)、选中目标应用、开启 Hook 服务。
底座是 Frida
Frida 是跨平台的动态二进制注入工具,能在应用运行时观察、修改其行为。传统用法是在电脑端运行 frida-server,然后用命令行写脚本注入。JsHook 做的事,是把这套流程搬到手机上,全程图形化操作。
两条引擎路
JsHook 内置两套 JavaScript 引擎,覆盖不同场景:
- Frida 系:完整的 Frida JS API,包括
Java.use()、Interceptor.attach()、Module.findBaseAddress()等,适合熟悉 Frida 的开发者。 - rhino 系:基于 rhino 引擎,提供 Xposed 风格的 API(如
XposedHelpers类似接口),适合以前用 Xposed 写过模块的人群。
两套引擎不是互斥的——同一个 JsHook 实例里,你可以给不同应用选不同的注入框架。
谁适合用
| 人群 | 典型场景 |
|---|---|
| 安卓逆向/调试开发者 | 在自己设备上分析应用行为、调试自家 APK |
| Xposed 转 Frida 的脚本作者 | 熟悉 rhino 引擎 API,想从 Xposed 迁移到 Frida |
| 安全研究人员 | 动态分析、内存读写、内核驱动模式下的观察者进程 |
| 不想开电脑的手机党 | 在手机上直接写脚本、注入、调试,全程不碰 PC |
它不做什么
- 不破解、不绕过任何应用的授权验证
- 不托管任何现成的"一键 XX"脚本——脚本全靠订阅或自己写
- 不提供应用商店式的"点击即用"体验,它是个工具平台,不是成品功能
命名来源
JsHook = JavaScript + Hook。用 JavaScript 写 Hook 脚本,注入到目标应用里运行。名字直白地描述了它的工作方式。