iOS 12.4 使用 unc0ver 越狱之后安装 Reveal2Loader

Uncover Jailbreak

0x00 前言

昨天刷微博发现 iOS 12.4 也可以越狱了(虽然是所谓的不完美越狱,也就是重启设备之后会回到未越狱状态,需要重新越狱一次,不过也没事),就拿开发备用机 iPhone 6s 去试了。

越狱教程地址:GitHub,要是过程不清楚的,可以看这个教程

0x01 准备工作

  1. 已越狱手机(以下简称手机)
  2. Mac 电脑(已安装了 Reveal

手机安装好 OpenSSH,就是用 unc0ver 越狱时,开启了 (Re)Install OpenSSH 选项,手机和电脑连接同一个 WiFi。

手机打开 Cydia 安装插件 Reveal2Loader,亲测支持 iOS 12.4(iOS 8 时,我的另一个越狱手机 iPhone 5s 安装的是 RevealLoader,一直没有升级系统,停留在 iOS 8)。

打开设置,找到 Reveal,进去随便打开一个 App 的开关,然后 Mac 打开 Reveal,可以看到 App 出现在界面上,点击选择,如果你 Mac 的 Reveal 版本比手机安装的插件里面的 RevealServer 的版本高,那么 Mac 上的 Reveal 会提示:

The operation couldn’t be completed. The app is link against an older version of the Reveal library. You may need to update the Reveal library in your app.

不要慌,下面来讲解决办法(嫌过程太长不想看的,请直接点击这里查看最终的解决办法)。

0x02 解决过程

按照以往的经验,只要更新一下 RevealServer 即可。

打开 Mac 终端(我用的 iTerm2),ssh 连接手机(ip 地址改成你自己手机的 ip):

1
ssh root@172.20.10.10

初始密码为:alpine(建议修改默认密码)

以前用的插件是 RevealLoader,现在是 Reveal2Loader,不知道 RevealServer 的地址是否一样,那么就先来看看。

进入到 /Library 文件夹,发现并没有 RHRevealLoader 文件夹,看来两个插件不太一样。

在浏览 LANRevealLoader 这个开源库时,最后的 Install 写着:

从RevealServer.framework/RevealServer获取RevealServer,并下载LANRevealLoader,解压后将LANRevealLoader.dylib、LANRevealLoader.plist、RevealServer放在已越狱iOS的/Library/MobileSubstrate/DynamicLibraries目录下。

看了下这个文件夹下面的文件,发现除了 reveal2Loader.dylibreveal2Loader.plist,并没有 RevealServer

既然如此,那么就试试看,把 Mac 上 Reveal 的 RevealServer 复制到这个文件夹下(新开一个终端窗口,不是在手机上运行这个命令):

1
scp /Users/meilbn/Library/Application\ Support/Reveal/RevealServer/iOS/RevealServer.framework/RevealServer root@172.20.10.10:/Library/MobileSubstrate/DynamicLibraries

然后重启手机(不建议,还要重新越狱)或者(respings,建议这个方式):

1
killall SpringBoard

手机会显示加载的菊花,完了之后杀掉原先打开的 App,重新打开,然后去 Mac 上的 Reveal 中查看下。

·
·
·

哈哈哈,还是一样,看不了。

没有关系,Google 搜索了下 Reveal2Loader,找到了 Cydia 的对应地址:http://cydia.saurik.com/package/com.zidaneno5.reveal2loader/

打开 GitHub 地址,花了一点时间,看了下一些文件的源码,发现了目标RevealServer.framework 是会被 copy 和 sign 到 FrameWorks 文件夹。

印象中,/Library 下面就有一个 FrameWorks 文件夹,然后就去看了下,RevealServer.framework 果然是在这个里面:

0x03 更新 RevealServer.framework

既然已经知道了 RevealServer.framework 的位置,那么就像之前那样,更新一下就好了:

1
scp -r /Users/meilbn/Library/Application\ Support/Reveal/RevealServer/iOS/RevealServer.framework root@172.20.10.10:/Library/Frameworks

这样就大功告成啦!