MENU

使用Vieux将iphone5s 降级到10.3.3

2019 年 12 月 16 日 • 瞎研究

今年9月份,国外大神axi0mX宣布:他们已经发布好了几十年难得一见的苹果手机越狱漏洞,这个基于bootrom漏洞的新漏洞被称为"checkm8",能够让搭载A5, A6, A7, A8, A9, A10, A11系列处理器的iPhone和iPad实现越狱,也就是说,设备覆盖范围从iPhone 4S到iphon8以及iPhone X都可以越狱,且苹果也无法通过iOS 更新等来对其进行修补。这可能将成为这么多年来iPhone的第一个不可修补是可越狱漏洞。

twitter原文如下

该漏洞不仅能够实现越狱还能够实现降级,一直持续关注消息的我一直在等着工具的到来,终于在12月份等来了降级工具,该降级工具共有两版,第一版是shell编写作者已经不维护了改用第二版,第二版是作者发布的python工具目前是作者主推的工具,更快,更效率,既然已经不维护shell工具了,那我们在这里只介绍第二版工具

付:shell工具连接:https://github.com/MatthewPierson/1033-OTA-Downgrader

付:python工具连接:https://github.com/MatthewPierson/Vieux

2019.12.18目前支持机型列表:

10.3.3
iPhone 5s, iPad Air, iPad Mini (Not iPad4,6)


8.4.1
iPhone 5, iPhone 4s, More 32 Bit device support is coming


6.1.3
iPhone 4s, More 32 Bit device support is coming



iphon5s 实战 环境&操作步骤

!!需要懂一点计算机知识.

环境:
1.MacOs操作系统 10.14.X以上 不建议黑苹果 步骤过于繁琐.
2.Homebrew 安装步骤见官网 https://brew.sh/
3.python3 python2(环境一般自带) 自行百度吧
4.git

步骤:
1.下载工具源码
git clone https://github.com/MatthewPierson/Vieux.git


2.进入目录
cd Vieux

3.安装依赖库
pip3 install -r requirements.txt

4.下载属于自己机型的ipsw包
推荐网址:
https://ipsw.me/
如果不知道自己机型去手机设置中查看型号 填写到这个网址中查看
https://ipsw.me/device-finder

5.安装libusb库
brew install libusb

6.将手机进入DUF模式
5s:将手机插上电脑,按住home+电源键,等待手机关机,黑屏持续4秒钟后松开电源键,直到itunes提示恢复模式
此时成功进入DUF模式,注意:此时手机是黑屏状态.

7.检验是否进入DUF模式
在Viuex工具目录内 运行./igetnonce

当显示为in DUF mode..时 才是成功进入DFU模式

8.开始降级
在Vieux根目录下运行 sudo python3 vieux --ipsw /xxx/xxx/xxx.ipsw 注意 /xxx/xxx/是 ipsw文件所在的绝对路径

过程中手机会绿屏幕、闪屏 此时不要动手机,以及电脑 耐心等待即可,绿屏结束后,会出现苹果标志,然后进行读条

成功的日志如下

成功!!

遇到的问题&处理方法

已知错误原因

1.usb.core.NoBackendError: No backend available

Traceback (most recent call last):
File "./vieux", line 48, in
ipsw.unzipIPSW(path)
File "/Users/user/Vieux/ipsw.py", line 110, in unzipIPSW
pwndfumode()
File "/Users/user/Vieux/restore.py", line 20, in pwndfumode
device = dfu.acquire_device()
File "/Users/hoangseidel/Vieux/resources/ipwndfu/dfu.py", line 16, in acquire_device
for device in usb.core.find(find_all=True, idVendor=0x5AC, idProduct=0x1227, backend=backend):
File "/usr/local/lib/python3.7/site-packages/usb/core.py", line 1263, in find
raise NoBackendError('No backend available')
usb.core.NoBackendError: No backend available

这个错误是没有libusb导致的,请自己检查是否有libusb库

  1. AssertionError
Given IPSW Path is /Users/jmmm/Desktop/project/Vieux/14G60.ipsw
Vieux - A tool for 32/64 Bit OTA downgrades
Still in BETA so expect issues/broken things
If you are using a 64 Bit device then connect it in DFU Mode
If you are using a 32 Bit device then just have it connected in normal mode
Starting IPSW unzipping
Continuing...
IPSW found at given path...
Cleaning up old files...
Files cleaned.
Unzipping..
Found: CPID:8960 CPRV:11 CPFM:03 SCEP:01 BDID:02 ECID:0000078F889FA908 IBFL:1C SRTG:[iBoot-1704.10]
Traceback (most recent call last):
  File "vieux", line 48, in <module>
    ipsw.unzipIPSW(path)
  File "/Users/jmmm/Desktop/project/Vieux/ipsw.py", line 123, in unzipIPSW
    pwndfumode()
  File "/Users/jmmm/Desktop/project/Vieux/restore.py", line 26, in pwndfumode
    runexploit = checkm8.exploit()
  File "/Users/jmmm/Desktop/project/Vieux/resources/ipwndfu/checkm8.py", line 532, in exploit
    libusb1_async_ctrl_transfer(device, 0x21, 1, 0, 0, b'A' * 0x800, 0.0001)
  File "/Users/jmmm/Desktop/project/Vieux/resources/ipwndfu/checkm8.py", line 45, in libusb1_async_ctrl_transfer
    assert usb.backend.libusb1._lib.libusb_cancel_transfer(transfer_ptr) == 0
AssertionError

libusb经常,连接过程中就不能用了,不知到什么问题
尝试更换,usb接口,usb线后,反复重试

总结:在这个过程中出现了很多不知道原因的错误,在安装了多遍libusb,以及更换Usb线,Usb接口,这之间去github 上https://github.com/MatthewPierson/Vieux 给作者提了很多问题,感谢作者的回复 在折腾了N遍之后 终于成功了!!

这个工具刚发行没几天,还不是特别完善,不是很着急尝试可以等更新版本更方便之后再尝试.

最后感谢MatthewPierson 提供的工具 和对我所出现的问题的回复!

最后编辑于: 2020 年 07 月 04 日
添加新评论

已有 3 条评论
  1. Yen Yen

    在查詢是否進入DFU時出現./igetnonce No such file or directory 這個是少了什麼東西嗎?

    1. @Yen./igetnonce 文件 移动到了/resources/bin 目录下 尝试 执行./resources/bin/igetnonce 试一下

  2. Devin Devin

    谢谢,有用的帖子,解决了我的问题。