ipad mini2 绕过激活锁

前言

这几天刷微博刷到一条被锁10年的iPhone终于解锁的视频,被称之为「时间胶囊」,我评论了之前解锁iPad2的经过,不刷机,找回忘记密码的老iPad中的数据!-爱写代码的小医生 (drcodes.cn),想不到很多人点赞评论。于是翻了翻仓库,发现有一台iPad mini2,但是已经不能进入系统了,提示需要激活,记不清当时是用哪个id登陆的了,

图片[1]-ipad mini2 绕过激活锁-爱写代码的小医生

查阅了一番资料后,发现可以绕过激活锁。大致原理如下:

图片[2]-ipad mini2 绕过激活锁-爱写代码的小医生

其实在2年前checkra1n刚火起来的时候,我也帮同事绕过了一台iPad mini2,当时是借助@appletech752的sliver工具做的,当时没有记录过程,但是这次我不想安装他的工具,自己通过命令行解锁也挺有意思的,这里简单记录解锁经过,所需要的工具和软件有:

  • 装了OS X系统的苹果电脑,或者黑苹果也可以(本人为Sonoma 14.5)
  • 数据线
  • 最新版本的checkra1n
  • libusbmuxd中的iproxy
  • 已经激活好的激活文件mobileactivationd

一、使用checkra1n越狱,打开iPad的ssh 44端口

说到Checkra1n,首先要提到的是Checkm8漏洞,Checkra1n就是基于Checkm8漏洞开发的。Checkm8是安全研究人员@axi0mX在2019年9月27日发现的苹果手机“史诗级漏洞”:链接:axi0mX/ipwndfu: open-source jailbreaking tool for many iOS devices (github.com),之所以说这个漏洞是史诗级的,因为上次发现类似漏洞已经是差不多10年前在iPhone4上发现的那个漏洞。这个漏洞位于苹果手机的Bootrom代码中,是硬件设计的漏洞。Bootrom是固化在 iPhone 只读区域中的一段代码,该区域中的代码是启动链及启动信任链的起点,主要负责加载后续的启动链,该区域中的代码无法通过系统更新来更新。iOS 设备在启动载入初始代码时,Bootrom是无法写入只能读取的,有了“checkm8”这个漏洞后,可以绕过iPhone的信任机制,加载定制的启动代码。Bootrom的漏洞由于是存在于硬件只读固件内,除非用户更换手机的硬件,否则随便Apple怎么对系统进行升级都无法修补该漏洞,因此所有影响的设备将一直可以被利用,无视上面运行的iOS版本。Checkm8的漏洞受影响的设备包括iPhone4S、iPhone5、iPhone5C、 iPhone 5S、 iPhone 6、 iPhone SE、 iPhone 6S、 iPhone 7和7 Plus、 iPhone 8、8 Plus 和 iPhone X,以及大多数基于类似 SoC 的 iPad以及Apple TV HD (ATV4)和Apple TV 4K,和Apple Watch的系列1、2和3等。在受影响的设备上,该漏洞可以被用来进行越狱操作。Checkra1n就是基于Checkm8开发的越狱工具, 不过该越狱工具目前未对iPhone4S、iPhone5、iPhone5C进行适配。不同于传统的越狱工具,Checkra1n对手机的越狱不是永久的(即Checkra1n是非完美越狱),也就是说越狱完成后,一旦设备进行了重启,系统就恢复到原来的iOS,这时候就需要重新运行Checkra1n来对设备进行越狱操作。

202409251337829.png

checkra1n的官网如下:https://checkra.in/,针对iPad mini2,其只支持iOS12以上的系统,不支持iOS9,所以要先升级系统到最新。在官网下载最新版本的checkra1n后,把checkra1n.app放到某个目录下,在终端进入该目录,输入如下指令:

./checkra1n.app/Contents/MacOS/checkra1n -c

这行指令会打开checkra1n的cli模式,成功运行后会提示:

 \- [*****]: Waiting for DFU devices

即等待DFU设备,手动将iPad mini2 进入DFU模式,方法如下:长按顶部电源键和home键10秒,后松开顶部电源键,继续长按home键,直到终端提示Exploiting

图片[4]-ipad mini2 绕过激活锁-爱写代码的小医生

图片[5]-ipad mini2 绕过激活锁-爱写代码的小医生

终端会自动运行越狱,且iPad 屏幕中间有checkra1n标志,左上角有跑代码,如果提示All Done,则提示越狱成功。

图片[6]-ipad mini2 绕过激活锁-爱写代码的小医生

二、使用libusbmuxd中的iproxy映射iPad的ssh端口到本地电脑

iproxy是usbmuxd附带的一个小工具,它的作用是将设备的某个端口映射到电脑的某个端口 mac下可以通过brew安装

brew install libusbmuxd

用法很简单:

  1. 第一个参数是你要映射到的电脑端口
  2. 第二个是iPhone的端口
  3. UDID一般不用填,会自动获取,不过多设备连接时,需要用于区分设备

iproxy的作用很丰富,终端键入如下命令:

iproxy 5222 44
  • 5222 是本地电脑端口
  • 44 是iPad的ssh端口 (checkra1n打开了iPad ssh端口,并且默认为44)

三、使用ssh连接iPad,修改激活文件。

新建一个终端窗口,输入:

ssh root@localhost -P 5222
密码为alpine

这样就以root身份通过ssh连接上iPad了,因为是最高权限,所以可以随心所欲做任何事情

在iPad上,保持在选择Wi-Fi界面,但是不要连接!

在ssh终端窗口逐行输入如下命令

mount -o rw,union,update /
launchctl unload /System/Library/LaunchDaemons/com.apple.mobileactivationd.plist
rm /usr/libexec/mobileactivationd
uicache --all

其中第三行rm /usr/libexec/mobileactivationd的意思是:删除当前iPad激活文件。

下载激活后的激活文件mobileactivationd,这是别人在其他已经激活好的机器上提取出来的激活文件,详见:E4s0N/iOS-Hacktivation-Toolkit: iOS Hacktivation Toolkit (github.com)

再新建一个终端窗口,使用scp命令将激活后的mobileactivationd 文件传输到iPad的/usr/libexec/目录上:

scp -O -P 5222 ./mobileactivationd root@localhost:/usr/libexec/

密码同样为 alpine

在连接iPad的ssh终端窗口输入:

chmod 755 /usr/libexec/mobileactivationd
launchctl load /System/Library/LaunchDaemons/com.apple.mobileactivationd.plist

最后,在iPad上选择连接iTunes,就可以绕过iCloud激活锁,进入系统了。

图片[7]-ipad mini2 绕过激活锁-爱写代码的小医生

202409251329054.png

参考链接:

  1. https://github.com/wrcsubers/iOS_ActivationBypass?tab=readme-ov-file
  2. exploit-development/iOS-Hacktivation-Toolkit: iOS Hacktivation Toolkit (github.com)
  3. checkra1n
  4. axi0mX/ipwndfu: open-source jailbreaking tool for many iOS devices (github.com)
© 版权声明
THE END
喜欢就支持一下吧
点赞12 分享
评论 共2条
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片
    • 头像dp0
      • eason的头像-爱写代码的小医生eason作者0