Frida使用文档(一)安装、启动、运行、关闭

简介: Frida使用文档(一)安装、启动、运行、关闭

<table><tr><td bgcolor=orange>本文所有教程及源码、软件仅为技术研究。不涉及计算机信息系统功能的删除、修改、增加、干扰,更不会影响计算机信息系统的正常运行。不得将代码用于非法用途,如侵立删!</td></tr></table>


****


## Frida使用文档(一)安装、启动、运行、关闭

### 操作环境

- win10

- Google nexus5x

- Python3.9

- frida==14.2.17

- frida-tools==9.2.4

### 安装Frida


#### PC安装frida和frida-tools


注意frida和python frida-tools的版本匹配,[Frida与Frida-tools对应关系](<https://github.com/frida/frida/releases>)


```

pip install frida==14.2.17

pip install frida-tools==9.2.4

```


![请添加图片描述](https://ucc.alicdn.com/images/user-upload-01/bf4fea6fe110408faeb3398ba0703076.png)



#### 手机安装frida-server


在 官方[github](https://github.com/frida/frida/releases)页面的`release`标签里,找到对应版本的frida-server`,注意要匹配系统和架构,比如`arm`和`arm64就不能搞错


- 查看手机CPU 架构类型


 ```

 PS C:\Users\Administrator> adb devices

 List of devices attached

 00eda37121888c2c        device

 PS C:\Users\Administrator> adb shell

 bullhead:/ $ getprop ro.product.cpu.abi

 arm64-v8a

 ```


![请添加图片描述](https://ucc.alicdn.com/images/user-upload-01/12a8af411a9c4fa886d7c1776f0a364e.png)


- 根据frida版本和手机CPU版本下载对应的frida-server

![请添加图片描述](https://ucc.alicdn.com/images/user-upload-01/dcbccf7c5227402b8761f375cf524f07.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5ouJ54Gv55qE5bCP5omL,size_20,color_FFFFFF,t_70,g_se,x_16)

 下载完成后进行解压,获得`linux`原生的可执行文件,我们将它重命名为`frida-server`


- 将frida-server安装至手机


 使用`adb`命令将其推送到手机上去


 ```

 $ adb push frida-server /data/local/tmp/

 ```


 然后使用`adb shell`命令进入到手机中去,执行以下命令:


 ```

 $ adb shell

 bullhead:/ $ su

 bullhead:/ # whoami

 root

 bullhead:/ # cd /data/local/tmp/

 bullhead:/data/local/tmp # chmod 755 /data/local/tmp/frida-server

 bullhead:/data/local/tmp # ./frida-server &

 [1] 6669

 

 ```


 `frida-server`运行成功。


### 运行Frida


#### 启动frida-server服务


电脑新开一个shell,执行如下命令


```

PS C:\Users\Administrator> adb shell

bullhead:/ $ su

bullhead:/ # cd /data/lo

local/       lost+found/

bullhead:/ # cd /data/local/tmp/

bullhead:/data/local/tmp # ./frida-server &

[1] 8610

bullhead:/data/local/tmp #

```

![请添加图片描述](https://ucc.alicdn.com/images/user-upload-01/12d161d88ab8476b98d118f57cd9a82c.png)


此时在电脑上新开一个`shell`,运行`frida-ps -U`命令,即可显示手机中正在运行的进程。


![请添加图片描述](https://ucc.alicdn.com/images/user-upload-01/207e65a3c6cb4edaa97abaac7d511630.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5ouJ54Gv55qE5bCP5omL,size_20,color_FFFFFF,t_70,g_se,x_16)


frida-server服务端启动成功!


#### 关闭frida-server服务


查看frida进程


```

ps | grep frida

```


杀死进程


```

kill -9 进程id

```


![请添加图片描述](https://ucc.alicdn.com/images/user-upload-01/43fd8ab053b8422db1539b911aa421c9.png)


### 常用命令


#### 端口转发


```

adb forward tcp:27042 tcp:27042

```




### 常见问题


#### Frida hook某些App,明明包名写对了,却找不到进程


```

#查看进程中的信息

#process = frida.get_usb_device().enumerate_processes()

#print(process)


1.新开一个shell输入命令:

adb shell am monitor

2.启动需要获取包名的应用

```

![请添加图片描述](https://ucc.alicdn.com/images/user-upload-01/c9613a877fe34c3ba952ae0ad976b3f4.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5ouJ54Gv55qE5bCP5omL,size_20,color_FFFFFF,t_70,g_se,x_16)

****


<table><tr><td bgcolor=orange>本文仅供学习交流使用,如侵立删!</td></tr></table>



****

相关文章
|
7月前
基于AutoJs的94自动运行脚本
基于AutoJs的94自动运行脚本
113 0
|
4月前
|
Shell Python
如何将PyCharm中的终端运行前面的PS如何修改成当前环境
这篇文章介绍了如何在PyCharm的终端中修改命令提示符(PS)以反映当前激活的环境,通过更改PyCharm设置中的Shell Path实现。
|
5月前
|
Shell 应用服务中间件 Linux
shell 实现项目的启动与停止
shell 实现项目的启动与停止
30 0
|
Python
启动appium服务的2种方法(python脚本&cmd窗口)
启动appium服务的2种方法(python脚本&cmd窗口)
1007 0
启动appium服务的2种方法(python脚本&cmd窗口)
|
测试技术 Windows Python
python-windows命令行启动appium及杀掉对应接口进程
文章目录 windows命令行启动appium及杀掉对应接口进程 一.环境配置 1.安装命令行版appium 2.安装appium-doctor检测 3.python安装Appium-Python-Client: 4.定位uiautomatorviewer.bat 5.查看主包名主类名Activity 二.python-appium启动app 1.appium启动一加计算器相关参数: 2.windows查看端口 三.windows杀掉对应进程
227 0
python-windows命令行启动appium及杀掉对应接口进程
|
Linux
12.18 Linux将后台命令脱离终端运行(nohup命令)
在前面章节中,我们一直在说进程可以放到后台运行,这里的后台,其实指的是当前登陆终端的后台。这种情况下,当我们以远程管理服务器的方式,在远程终端执行后台命令,如果在命令尚未执行完毕时就退出登陆,那么这个后台命令还会继续执行吗?
267 0
12.18 Linux将后台命令脱离终端运行(nohup命令)
|
编解码 Android开发 Windows
win10一键启动程序
win10一键启动程序
163 0
|
网络协议 Shell
如何使用 Shell 脚本来查看多个服务器的端口是否打开?
如何使用 Shell 脚本来查看多个服务器的端口是否打开?
450 0
|
Python
python 技术篇-pythoncom.PumpMessag()关闭、杀死它的进程,pythoncom.PumpMessag()运行卡住解决办法
python 技术篇-pythoncom.PumpMessag()关闭、杀死它的进程,pythoncom.PumpMessag()运行卡住解决办法
676 0