吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 4716|回复: 1
收起左侧

[Android 讨论] 记录一次雷电模拟器安装frida

[复制链接]
ly19961202 发表于 2021-7-22 13:30
1.下载adb,配置环境变量
打开cmd,输入adb显示命令即成功
【这里我被坑了,我一开始没下载adb工具,用的雷电模拟器路径下的adb,转发端口后注入脚本一直失败】
1.png


2.安装python,配置环境变量
输入python --version验证是否安装成功
2.png


3.安装frIDA和frida-tools
pip install frida -i   http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com

pip install frida-tools -i   http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com

cmd进入frida路径,cd c:\python\scripts\
输入frida --version验证frida是否安装成功
也用来获取frida版本号,下载frida-server要与frida版本一致
3.png


4.安装雷电模拟器,百度说低于雷电4版本不行
打开模拟器后,输入
adb shell
getprop ro.product.cpu.abi
查看安装的模拟器是什么架构
【有人说雷电模拟器是arm的,我下载了arm的frida-server一直出错,最后用上面代码查了才知道是x86,一定要看看自己安装的模拟器到底是什么架构】
4.png

我安装的雷电模拟器是x86的架构


5.下载frida-server上传至模拟器
下载地址:   https://github.com/frida/frida/releases
我下载的是frida-server-15.0.8-android-x86.xz,
解压得到frida-server-15.0.8-android-x86文件,
文件最好重命名下,不然每次使用cmd要输入很长的名字,
这里我改成了frida-server

cmd输入代码:
cd c:\leidian\LDPlayer4\
adb.exe connet 127.0.0.1:5555 [连接雷电adb server,这行貌似也可以不用]
连接雷电模拟器后上传server文件至模拟器,
adb push c:\frida-server /data/local/tmp/
这里我把文件放c盘根目录了。

或者桌面直接把文件拉进模拟器,在/storage/emulated/0/Pictures/下可找到,然后再把文件移动到/data/local/tmp/

6.启动服务
adb shell
cd /data/local/tmp/
chmod 777 frida-server
./frida-server

7.另开一个cmd窗口转到雷电adb路径设置端口转发到pc端。
代码:
adb forward tcp:27042 tcp:27042
5.png


以上安装并启动frida-server完成。


------------------------------------------


进入安装frida的目录,我的是c:\python\scripts\ .
cmd输入 cd   c:\python\scripts\ ,
输入frida-ps -R验证frida是否正常


------------------------------------------


我自己写了个app,软件蓝奏云:https://wwa.lanzoui.com/iISbVrpkucj
hook脚本蓝奏云:https://wwa.lanzoui.com/izmDxrpn7eb

这个软件是启动软件时获取getBool方法的返回值,如果为true则创建一个toast,显示FRIDA HOOK 成功,默认为false。
6.png

所以我想要hook里面的getBool方法

首先cd c:\python\scripts\进入该路径,hook脚本也要放在这里。

有两种注入方式:
1.python脚本注入:
cmd输入python hook.py
回车后会打开软件,这时按模拟器的返回键再次打开软件就会hook成功。
7.png
8.png

【切记不要按返回主页面再打开软件,这样会失败。也不要杀掉程序再打开。我在这里被坑了。】

脚本图片:
9.png


2.JS脚本注入:
先在模拟器打开软件,
输入frida-ps -U查看要hook的软件进程名
输入frida -U -l hook.js MyApp
【这个MyApp是软件的进程名,也是软件名】

退出frida js脚本注入按ctrl+d键即可,退出py注入我不知道按什么键,请大佬告诉我一下,我现在都是直接关闭cmd
10.png
11.png


脚本图片:
12.png


查了资料,
frida -U -l hook.js MyApp
这种是将一个脚本注入到android目标进程。
还有一个指令,
frida -U -l hook.js -f com.xxx --no-pause
是重启一个android进程并注入脚本,
这种方法常用于在app启动期间就执行的函数。

我认为我应该用这种方法来注入脚本。
我使用这种方法报错,软件重启时直接闪退,有没有大佬知道这个怎么解决?

13.png

14.png





-------------------------------------------

参考链接:
frida的hook java代码篇
https://www.cnblogs.com/luoyesiqiu/p/10718997.html
frida的常用方法
https://www.cnblogs.com/du-jun/p/14303380.html
frida hook方法和验证
https://blog.csdn.net/u011426115/article/details/112075394
frida用法详解【附用例】
https://blog.csdn.net/weixin_35016347/article/details/104002411
frida入门hook【看了这个示例我才第一次hook成功】
https://blog.csdn.net/tabactivity/article/details/88130653

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

kobebryant 发表于 2021-8-8 11:50
学习学习
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2025-4-13 14:09

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表