目录
- pip安装frida
- 安装木木模拟器
- 开启模拟器的root权限
- 打开模拟器USB调试
- 安装RE文件管理器
- 下载frida服务端-Android
- 下载frida-server文件
- 移动文件到tmp下
- 使用adb连接mumu模拟器
- 设置frida-server权限并启动
- 查看是否启动成功
- 使用python调用
pip安装frida
本机环境win10 (AMD64)、python3.6.4
- pip install frida
如果报错: ERROR: Command errored out with exit status 1
解决方法: 安装Wordcloud.whl文件,下载地址:
https://www.lfd.uci.edu/~gohlke/pythonlibs/
找到对应自己的版本.下载后 pip install wordcloud…whl 即可.
- pip install frida-tools
安装完成后frida后,再pip安装frida-tools
安装木木模拟器
直接去官网下载. http://mumu.163.com/
此过程省略… 下载后首先:
开启模拟器的root权限
打开模拟器USB调试
在开发者选项中。
安装RE文件管理器
直接搜索进行下载,下载后打开给予root权限
然后现在就可以去下载frida的服务端了.
下载frida服务端-Android
下载frida-server文件
到 https://github.com/frida/frida/releases 下载相应的版本
这里是给木木模拟器安装Android版本,所以下载下面这个:
frida-server-12.8.20-android-x86.xz
移动文件到tmp下
下载完成之后,如果你使用的本地下载,则把这个文件放入木木共享文件夹中解压,重命名为 frida-server
然后打开 RE文件管理器,使用全局搜索,找到这个文件的位置.
接着把 frida-server文件复制到 /data/local/tmp 目录下.
复制后就可以先停一下,先进行下面的操作
使用adb连接mumu模拟器
先找到模拟器的安装目录,然后进入 emulator\nemu\vmonitor\bin目录
因为是win10环境,所以是 adb_server.exe 文件.
在此处打开cmd,输入连接命令: .\adb_server.exe connect 127.0.0.1:7555
然后输入 .\adb_server.exe shell 进入交互界面
设置frida-server权限并启动
进入adb shell后, cd 到 /data/local/tmp 目录.
然后设置frida-server的权限
chmod 777 frida-server
给予了可执行权限之后, 输入下面的命令来启动它:
./frida-server
查看是否启动成功
重新打开一个cmd窗口, 执行下面的命令 :
frida-ps -U
查看当前运行的进程. 有输出则说明启动成功.
如果需要进行debug的话,将手机端的端口转发到PC端进行通信
.\adb_server.exe forward tcp:27042 tcp:27042
.\adb_server.exe forward tcp:27043 tcp:27043
使用python调用
简单测试:
import frida
import sys#获取设备信息
rdev = frida.get_remote_device()#获取在前台运行的APP
front_app = rdev.get_frontmost_application()
print (front_app)
你在模拟器上运行一个微信。
weixin = "com.tencent.mm"
# 枚举进程中加载指定模块中的导出函数
session = rdev.attach(weixin) # 也可以使用attach(pid)的方式
# 我找了半天,老版本的enumerateModules方法没了,现在只能通过js入口
jscode = """Process.enumerateModules({onMatch:function(exp){send(exp.name);},onComplete:function(){send("stop");}
})
"""
script = session.create_script(jscode)
def on_message(message, data):print(message)
script.on('message', on_message)
script.load()
sys.stdin.read()