注入框架 Frida
- Frida:跨系统、跨平台的开源进程注入框架
- 官网
- 用 Frida 提供的 Shell 环境,可查看目标进程内存中的任何内容,调用进程中加载的函数,注入一个外部的 DEX 或 so 动态库等
Frida 的安装与配置
-
安装计算机端(Windows10、Python 3.7)
-
官方推荐使用 Python3(Python 2.7 安装失败)
-
用 pip 安装:
pip install frida-tools
-
安装完成后,可用
frida --help
查看 Frida 命令支持的功能
-
-
安装 Android 设备端(Android 5.1)
-
根据自己的设备 CPU 架构下载相应的
frida-server
,本人的设备为 Nexus 5(失败,改用 AS 的模拟器才成功,仍为 Android 5.1,步骤、命令也相同),故下载frida-server-12.8.20-android-arm.xz
-
将上述下载好的文件解压,重命名为
frida-server
,push 到设备中,给予可执行权限
-
执行如下命令,可查看当前连接到计算机的设备
-
在设备上启动
frida-server
,然后另开一个终端执行如下命令,可查看设备上的进程信息
执行注入与 Hook
-
用 Frida 可向运行在 Android 设备上的进程注入一小段代码或一个程序
-
首先,启动目标程序(如 Crackme0201)(注意:一定要先打开目标程序,再下一步操作),然后,运行
frida-server
。此时可用frida-ps
命令查看其进程信息(此处改用 Ubu