ARM MacBook MuMu 模拟器 Pro 安装及使用
软件下载
本次测试的硬件平台为:MacBook Pro M3 Max Sequoia 15.8
软件配置
应用已损坏报错解决
sudo xattr -rd com.apple.quarantine /Applications/MuMuPlayer.app |
Little Snitch 设置
MuMu 模拟器安装好后,确保已经打开了 Little Snitch,然后再打开安卓模拟器,此时 Little Snitch 便会记录所有 MuMu 模拟器对外建立的连接。
打开 LittleSnitchNetworkMonitor(如果找不到,使用快捷键:control + option + command + M),禁止所有包含 mumu.nie.netease.com 的连接。

若不做这步设置你会发现,新建模拟器在你关闭后就无法再次重新打开

抓包调试
磁盘模式
模拟器的硬盘切换成 可写系统盘 模式,开启 Root 权限,修改完后需要重启模拟器。

导入证书
将 burp 的 cacert.der 证书转换一下格式,然后导入到手机 system 证书文件夹下。
cer 证书转为 pem 证书 |
抓包测试
BP 开启局域网监听,然后将模拟器的代理指向 BP 的监听端口。

最后找个开启 SSL 的网站抓包测试看看,成功抓包

Frida 测试
下载最新的 arm 架构的 frida-server-16.2.1-android-arm64 包,使用 adb push 到模拟器里。点我下载
adb push frida-server-16.2.1-android-arm64 /data/local/tmp/ |
手机端直接运行 frida server,为了稳定建议模拟器里面安装个 Termux 终端模拟器。先使用 su 命令申请并切换 Root 权限:

手动给 frida server 执行权限并运行
cd /data/local/tmp/ |

使用 frida-ls-devices 查看模拟器的连接类型为 USB 类型,可以正常与模拟器进行 hook 测试。

面具安装
模拟器设置 可写系统盘,开启 Root 权限。
Kitsune Mask
直接使用官方的面具我们大概率是无法直接安装成功的,所以这里使用 Kitsune Mask 这种第三方为模拟器适配的面具。
Kitsune Mask 直接使用「直接安装 (直接修改 /system)」方式即可。


修复异常
重启后发现提示 su 文件冲突了,需要手动修复一下异常。

原理很简单,使用 Root 权限删除之前冲突的 su 相关文件即可,这里直接使用 adb 连接,手动将之前冲突的 su 相关文件直接备份一下。
mv /system/xbin/su /system/xbin/su.bak |

最终效果
删除冲突 su 文件后,就不会报错了

启动超时 / 概率崩溃
前言
在使用的过程中,我发现如果长时间通过 adb 控制模拟器,模拟器会卡死崩溃或者启动超时「1002」。
解决方法
burp 抓包设置拦截开启,只拦截 mumu.nie.netease.com

新建一个模拟器,设置磁盘写权限、Root 权限,安装好 burp 证书,设置好代理。(开启代理后 Little Snitch 的禁用规则就会失效)
修改数据包 /api/v1/rom/file_update/config/fetch,version 参数修改为最新版本 1.9.2

修改之后会远程获取 MuMu 模拟器 Pro 1.9.2 版本的所有远程热更新

如果恰巧你有玩网易游戏的需求(没错,我玩痒痒鼠),丢弃数据包 /api/v1/release/game/update/rom/hotfile,没有就不要管。

亲测完成上述操作后,就算 Little Snitch 没有禁用 mumu.nie.netease.com,重启也不会再出现启动失败「1002」了。
PS:我没有测试 mumu 更新版本之后,是否需要重新抓包
/api/v1/rom/file_update/config/fetch将version参数修改为最新版本。如果你实在不放心,可以继续使用 Little Snitch 禁用mumu.nie.netease.com。
MuMu 1.6.10
从 1.4.11 到 1.6.10,增加了很多使用功能。【 点我下载 】
由于是国际版,拦截域名从 mumu.nie.netease.com 改为 api.mumuglobal.com
GET /api/v1/rom/file_update/config/fetch?uuid=CF98EC9D-8A7F-58DC-8A8A-6F1EE6FC7F17&channel=default&engine=MACPRO&package=mumu&version=1.9.2&architecture=arm64&product=&product_version=&usage=1&rhf_version=12.1216 HTTP/2 |

若直接修改 Contents/Info.plist,会导致签名失效,运行会有「BUG」,目前还没找到有效的解决方法。
也欢迎大家分享解决方法。



