Apple M1,逆向环境设置与我自己遇到了很多坑逐一解决,给后来的同学一个参考吧

Apple M1,逆向环境设置我自己遇到了很多坑逐一解决,给后来的同学一个参考吧

常用软件

  • [x] Homebrew
  • [x] Xcode (AppStore下载即可)
  • [x] firda
  • [x] frida-ios-dump
  • [x] Monkey-dev
  • [x] Python3.9(这里我用3.9是因为支持了arm64)
  • [x] xia0lldb

前期准备工作

  • 强烈建议大家用两个控制台软件,一个设置rosetta,另一个保持原生arm64
    其他没有啥了开干吧,我也刚用不久就算记录和分享吧
  • 设置一个host可以有效加速github相关的下载大家有代理请忽略
    199.232.96.133 raw.githubusercontent.com
  • 小命令:file $(which cat) 可以查看 executable 的类型 arm64 或者 arm64
/bin/cat: Mach-O universal binary with 2 architectures: [x86_64:Mach-O 64-bit executable x86_64] [arm64e:Mach-O 64-bit executable arm64e]
/bin/cat (for architecture x86_64):	Mach-O 64-bit executable x86_64
/bin/cat (for architecture arm64e):	Mach-O 64-bit executable arm64e

开干

  • 先去AppStore下载Xcode,默认大家都安装了后边都有依赖的

  • homebrew:我默认大家网络都正常,不正常的同学就用清华源来安装吧那边挺快的,因为早些时间源同步和其他问题有些BigSur的包没同步过来现在好了 传送门附送一个手动安装教程
$ arch -x86_64 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  • 安装Python3.9
    这里要注意3.9已经支持arm64了,我这边提供两种安装方式第一种官网pkg安装,另一种brew安装
  1. pkg安装方式地址 传送门 这里选择描述带 including macOS 11 Big Sur on Apple Silicon (experimental)
  2. brew安装方式就简单了brew install python@3.9
    下载完毕自己检查一下file $(which python3.9) 你可以看到多个executable arm64 和 x86_64 因为python3.9都支持,俗称胖二进制
  • 安装Frida
    简单安排上,直接上命令不墨迹了,这里在原生终端下运行 pip3 install frida 如果卡住不动,取消上边的命令,来这里 找到 frida-14.2.8-py3.8-macosx-11.0-arm64.egg 用网页下载完毕后运行如下命令
    mv ~/Downloads/frida-14.2.8-py3.8-macosx-11.0-arm64.egg ~/frida-14.2.8-py3.9-macosx-11.0-arm64.egg 再运行 pip3 install frida

  • 安装居家旅行必备神器 Monkey-Dev

0x1:

$ sudo git clone --recursive https://github.com/theos/theos.git /opt/theos

0x2:

$ arch -x86_64 brew install ldid

0x3:

$ xcode-select -p

0x4:

$ sudo /bin/sh -c "$(curl -fsSL https://raw.githubusercontent.com/AloneMonkey/MonkeyDev/master/bin/md-install)"

剩下的只有等了,如果觉得慢可以加上刚才开头说的host可以让你少痛苦一会,等你们安装好用猴神框架搞项目编译的时候肯定会遇到错误

Showing Recent Messages File not found: /usr/lib/libstdc++.dylib

解决办法下载如下仓库代码 执行相应代码

$ sudo  git clone https://github.com/devdawei/libstdc-.git  && cd libstdc- && sh install-Xcode_12.sh
  • xia0lldb 得安装吧增强脚本,强到没话说
    git clone https://github.com/4ch12dy/xia0LLDB.git && cd xia0LLDB && ./install.sh

重新签名调试相关

关于M1重新签名调试 iOS & macOS 完整流程准备工作如下

  • 首先得有688开发者账号(可有可无)
  • 脱壳ipa 本论坛有大佬自动脱壳 点我
  • iOS App Signer工具

1、先去开发者后台去把M1添加到Devices列表
2、去创建一个 Bundle identifiers 记住这个名字
3、去Xcode 登陆你自己的账号创建一个项目,Bundle identifier 就用刚才创建的那,然后运行一档
4、打开iOS App Signer 选中脱壳的ipa 选团队,选profile文件 签名就可以了,签名后的ipa可以直接安装到M1上进行玩耍了

  • 调试篇
  1. lldb 调试:App 运行起来附加调试 sudo lldb -p $(pgrep xxx)

  2. frida调试,有个问题哈frida调试会意外终止进程只有lldb附加一次后才能用frida
    命令如下:frida -p $(pgrep xxxx)

9 Likes

:couch_and_lamp:给自己,突然想记录一下因为菜脑子记性也开始差了起来,发帖记录一下把,论坛大把的大神但我却找不到组织,在论坛疯狂刷帖心好累,有组织么想加入这样会不会进步快一点

1 Like

找不到组织是啥意思,论坛不就是一个组织么

楼主求一个联系方式

我最近也在研究M1相关的东西 可以的话老哥留个联系方式 一起交流

arch x86_64 brew install ldid
命令是不是错了 正确的是:
arch -x86_64 brew install ldid

感谢提醒,我在mweb里编辑完拷贝过来的,大意了

给力。晚上回去操作操作。
M1我这有个tg小群,可以 https://t.me/applem1talk

刷了好多 小黄鸭老师的帖子 马上进TG

下载 xcode12.5beta 后, 个人账号也可以在 M1 上调试了

1 Like

我还没升上去,感谢提醒

签名后可以在iPhone上安装运行,但是在m1上报“无法安装请稍后再试”,是我m1系统版本11.2太高的原因?看网上说上个版本就开始限制安装ipa了

我没升级上次无法进行测试,我这里11.1 还是可以的 目测应该是你签名 错误,如果签名微信,记得删除 手表相关支持文件。 你换个签名工具试一试 iOS App Signer