@heyhu/fridahelper
v1.0.7
Published
A helper Utils To Frida
Downloads
1
Readme
FridaHelper
FridaHelper 整合了网上流行的和自己编写的常用的 frida 脚本,为逆向工作提效之用。
npm build 后,用 Pycharm 打开编辑,可以看到 frida api 代码补全提示。
1. 编译和使用
1.1 源码直接使用【推荐】
需要根据自己的需求修改 index.ts,编写实际操作内容。 使用 index.ts 入口方式可以按照以下方式编译和调用。
$ git clone https://github.com/deathmemory/FridaContainer.git
$ cd FridaContainer/
$ npm install
## after edit index.ts
$ npm run build
$ frida -U -f com.example.android --no-pause -l _fcagent.js
- 开发实时编译
$ npm run watch
1.2 作为 npm node 模块使用
支持作为 npm node 模拟直接嵌入 typescript 项目中。
1.3 赘述几句我当前的使用习惯
- 使用
pycharm
做开发(其他 IDE 也一样) - clone 仓库后,在项目根目录创建 agent 目录(已加入 gitignore)在这里开发业务脚本
- 修改
index.ts
引入 agent 目录下的类 - 单开一个 shell 跑
npm run watch
实时编译脚本 - 不断修改 index 或 agent 的脚本,注入、测试,达到目的。
2. 功能简介
本仓库会持续补充更新。
2.1 Android
- 一键去常规反调试
- 打印堆栈
- 通用的 Dump dex 方法
- 过 ssl pinning (新增 cronet bypass)
- Hook JNI
- Java methods trace
- JNI trace
- frida multi dex hook(java use)
- ......
2.2 iOS
- 便捷的获取函数地址
- 模糊查找函数地址
- 打印堆栈
- dump ui 结构
- 常见数据类型转换及打印
- ......
2.3 FCCommon 跨平台通用方法
| 方法 | 说明 | | ----- | ---------------------------- | | showStacksModInfo| 打印指定层数的 sp,并输出 module 信息 (如果有)| | getModuleByAddr | 根据地址获取模块信息 | | getLR | 获取 LR 寄存器值 | | dump_module | dump 指定模块并存储到指定目录 |