frida准备

2020-12-16
1059
frida框架分为两部分: 
一部分是运行在系统上的交互工具frida CLI;
一部分是运行在目标机器上的代码注入工具 frida-server;
 
 
  • frida使用范围
(1)正常方式: 脚本控制在pc端,通过pc连接到安卓的frida-server来操作
 
  • frida安装
下面是环境: windows电脑端 + android手机
1. frida电脑端的安装
安装adb, 使用adb --version检测
+
安装python, windows环境访问https://www.python.org/downloads/windows/, 安装完成; 使用python命令行运行,ctrl+z退出
+
安装frida-tools, 使用命令行 pip3 install frida-tools, 安装完成; 使用frida --version检测
0
0
 
2. frida手机端的安装(frida-server)
准备工作android手机已经root过了(重要) + 安装Magisk App(管理root应用),
+
手机连接电脑开启开发者模式, 开启shell命令行的root权限, shell获取权限并检查如下:
0
+
Android frida-server 安装
(1)注意下载版本:
在Android 系统上,每一个CPU架构对应一个ABI:armeabi,armeabi-v7a,x86,mips,arm64- v8a,mips64,x86_64。
怎么查看自己手机cpu的架构
命令行: adb shell cat /proc/cpuinfo
app: Droid Info, Inware,Device Info,CPU info,My Device
代码:
private String cpuType() { String arch = "";//cpu类型 try { Class<?> clazz = Class.forName("android.os.SystemProperties"); Method get = clazz.getDeclaredMethod("get", new Class[]{String.class}); arch = (String) get.invoke(clazz, new Object[]{"ro.product.cpu.abi"}); } catch (Exception e) { e.printStackTrace(); } return "cpu类型:" + arch; }
 
(2)手机安装frida-server
使用adb命令将其推送到手机上去。
$ adb push frida-server /data/local/tmp/
然后使用adb shell命令进入到手机中去,执行以下命令:
$ adb shell bullhead:/ $ su - bullhead:/ # cd /data/local/tmp/ bullhead:/data/local/tmp # chmod 755 /data/local/tmp/frida-server // 权限
 
(3)检测并运行
以后台模式运行frida-server,这样电脑上的frida CLI就能够与frida-server进行交互,我们可以在电脑上使用frida来与android设备中的app交互(当然前提是手机要通过usb数据线连接到电脑),如下所示:
0
重新打开一个windows PowerShell窗口, 使用frida的命令可以和android手机交互
0
 
 
转载时必须以链接形式注明原始出处及本声明

扫描关注公众号