Frida环境搭建与安装

首先要确定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

如果之前启动时用了后台模式(&),可能进程未正确退出:

  1. 杀死所有 frida-server 实例,然后再重启:
vbscript 复制代码
pkill -9 frida-server
  1. 杀死占用进程: 如果找到非必要的进程,kill掉它,然后再重启:
bash 复制代码
ps
kill -9 23412
arduino 复制代码
frida -U -f com.taobao.taobao -l taobao.js // frida根据包名启动app执行脚本
相关推荐
快手技术几秒前
快手Klear-Reasoner登顶8B模型榜首,GPPO算法双效强化稳定性与探索能力!
后端
代码老y7 分钟前
十年回望:Vue 与 React 的设计哲学、演进轨迹与生态博弈
前端·vue.js·react.js
二闹10 分钟前
三个注解,到底该用哪一个?别再傻傻分不清了!
后端
一条上岸小咸鱼13 分钟前
Kotlin 基本数据类型(五):Array
android·前端·kotlin
大明8816 分钟前
用 mouseover/mouseout 事件代理模拟 mouseenter/mouseleave
前端·javascript
小杨梅君18 分钟前
vue3+vite中使用自定义element-plus主题配置
前端·element
用户490558160812521 分钟前
当控制面更新一条 ACL 规则时,如何更新给数据面
后端
一个专注api接口开发的小白23 分钟前
Python + 淘宝 API 开发:自动化采集商品数据的完整流程
前端·数据挖掘·api
林太白23 分钟前
Nuxt.js搭建一个官网如何简单
前端·javascript·后端
晴空雨24 分钟前
一个符号让 indexOf 判断更优雅!JavaScript 位运算的隐藏技巧
前端·javascript