安卓相关测试
正文
环境准备:
网易Mumu安卓模拟器,里面还有adb方便调试: http://mumu.163.com/baidu/
adb: brew cask install android-platform-tools
动态调试
adb连接,mac下网易mumu端口是5555,windows下是7555
windows下:
adb connect 127.0.0.1:7555
adb shell
mac下:
adb shell
首先通过字符串搜索,定位到某个位置,command + b下断点。
在mumu上运行apk,然后attach
然后随便点一点能触发到断点的功能。
f6是 单步调试
command + f6是 步入调试
step out在debugger上
如果有两个断点,想迅速调到第二个断点就点击run
通过反编译找到关键位置,然后打断点,执行下来。
这里开始都是int类型,改为string类型就会显示变量的值,这样就可以获取到关键的一些信息。
Frida Hook
也可以利用frida hook一些点,然后能快速得拿到数据。
https://github.com/lyxhh/lxhToolHTTPDecrypt
环境准备:
1、运行frida-server
wget https://github.com/frida/frida/releases/download/12.5.2/frida-server-12.5.2-android-x86.xz
xz -d frida-server-12.5.2-android-x86.xz
adb push frida-server-12.5.2-android-x86 /data/local/tmp/
adb shell
cd /data/local/tmp/
chmod 777 frida-server-12.5.2-android-x86
./frida-server-12.5.2-android-x86
2、python环境,frida安装有点慢
pip3 install colorlog flask flask_socketio requests frida
3、go
python3 app.py
转发端口:
adb forward tcp:27042 tcp:27042
选择一个app:
然后得反编译找到具体一些包名,进行hook后随便点点触发到包,就可以看到具体的一些调用情况,比如调用参数以及调用栈。
反编译源码
1、jeb
jeb加载apk后按Q既可反编译
2、apktools
java -jar apktool_2.3.3.jar d "1.apk" -o out -f
3、dex2jar
解压apk,得到classes.dex
d2j-dex2jar.bat classes.dex
既可得到一个jar,再用jd-gui既可反编译java代码
know it then do it
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 35岁程序员的中年求职记:四次碰壁后的深度反思
· 继承的思维:从思维模式到架构设计的深度解析
· 如何在 .NET 中 使用 ANTLR4
· 后端思维之高并发处理方案
· 理解Rust引用及其生命周期标识(下)
· 35岁程序员的中年求职记:四次碰壁后的深度反思
· 当职场成战场:降职、阴谋与一场硬碰硬的抗争
· ShadowSql之.net sql拼写神器
· Excel百万数据如何快速导入?
· 无需WebView,Vue也能开发跨平台桌面应用