首先要确定Frida的python环境
进入到这个地址Frida egg包安装列表,根据自己计算机系统版本,按照列表里显示的环境版本要求就绝对不会有问题,比如我的是win10-64位
确定了python版本之后,使用anaconda开始创建虚拟环境,anaconda的下载地址Anaconda
安装好Anaconda之后,首先创建一个conda虚拟环境,python版本为3.10,frida版本我们指定版本为15.2.2
ini
conda create -n fridahook python=3.10
conda activate fridahook
知道了Frida版本之后,我们还要去找frida-tools对应的版本,禁毒到frida的github地址Releases · frida/frida
知道了Frida-tools对应的frida版本之后,我们就可以开始安装了,他们的版本是一一对应的,版本对应错了可能会有一些未知错误,我们只需要安装frida-tools这个库就可以,他会自动安装frida和frida-tools两个包
python
pip install -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple frida-tools==11.0.0
安装好了之后,验证一下是否安装成功
css
frida-ps --version
frida --version
如果正常的话会输出对应的版本号
然后去 github.com/frida/frida... 下载与上面对应版本的frida-server,这个是在手机端运行的东西,拷贝到安卓设备之后,使用root权限的用户模式运行起来
首先看下自己机器的系统架构是什么
adb shell getprop ro.product.cpu.abi
下载对应平台的frida-server,下载好之后,使用解压程序将里面的文件解压出来
连接手机,开发者模式下开启USB调试权限,在PC端使用adb命令adb push将程序复制到手机的data/loacal/tmp文件夹中,也可以用其他方式复制到手机
perl
adb push G:\download\frida-server-15.2.2-android-arm64 /data/local/tmp/fd1522
复制成功之后,在PC的CMD下执行以下命令,进入到shell环境,并且赋予frida-server文件777权限, su命令必须是你的手机获得了root权限才能被执行成功。
bash
adb shell
su
chmod 777 /data/local/tmp/1522/frida-server-15.2.2-android-arm64 // 777权限
启动frida-server,执行以下命令,成功之后会返回一个端口号,说明手机上的frida-server运行成功
bash
/data/local/tmp/1522/frida-server-15.2.2-android-arm64 &
启动之后,重新开一个cmd窗口,并且进入到安装了frida的conda环境中,运行命令测试一下是否有输出
frida-ps -U
如果之前启动时用了后台模式(&),可能进程未正确退出:
- 杀死所有 frida-server 实例,然后再重启:
vbscript
pkill -9 frida-server
- 杀死占用进程: 如果找到非必要的进程,kill掉它,然后再重启:
bash
ps
kill -9 23412
arduino
frida -U -f com.taobao.taobao -l taobao.js // frida根据包名启动app执行脚本