An all-in-one tool to restore/downgrade, save SHSH blobs, and jailbreak legacy iOS devices
Go to file
2020-10-19 12:59:45 +08:00
resources macOS idevicerestore again 2020-10-08 16:00:18 +08:00
.gitattributes Initial commit 2019-11-19 19:53:00 +08:00
.gitignore More fixes and remove stuff not needed 2020-09-17 11:04:34 +08:00
README.md Untested 16.04 support 2020-10-19 12:17:49 +08:00
restore.sh Update restore.sh 2020-10-19 12:59:45 +08:00

iOS-OTA-Downgrader

(formerly 32bit-OTA-Downgrader)

Downgrade/restore and jailbreak iOS devices to signed OTA firmwares

  • This downgrade script/tool supports both Linux and macOS
  • iOS 8.4.1 and 6.1.3 downgrades have the option to jailbreak
  • You do NOT need blobs to use this, the script will get them for you
  • Please see the "Other notes" section below to serve as answers/solutions for frequent questions and issues

Supported devices:

  • You can identify your device here
  • iOS 10.3.3 - A7 devices:
    • iPhone 5S
    • iPad Air 1
    • iPad mini 2 except iPad4,6
    • iPad mini 3 is NOT supported
  • iOS 8.4.1 - 32-bit devices:
    • iPhone 4S, iPhone 5
    • iPad 2, iPad 3, iPad 4, iPad mini 1
    • iPod 5th gen
    • iPhone 5C is NOT Supported
  • iOS 6.1.3:
    • iPhone 4S
    • iPad 2 except iPad2,4

Requirements:

  • A supported device in any iOS version:
    • A 32-bit iOS device (jailbreak needed)
    • An A7 device (jailbreak not needed)
  • An IPSW for the version you want to downgrade to
  • A 64-bit Linux install/live USB or a supported macOS version
    • See supported OS versions and Linux distros below
    • A Linux live USB can be easily created with tools like balenaEtcher or Rufus
  • All 32-bit users must install OpenSSH
For Pangu 32-bit users:
  • For 32-bit users using Pangu, install the latest untether for your iOS version here

How to use:

  1. Download iOS-OTA-Downgrader here and extract the zip archive
  2. Plug in your iOS device
  3. Open a Terminal window
  4. cd to where the zip archive is extracted, and run ./restore.sh
    • You can also drag restore.sh to the Terminal window and press ENTER
  5. Select option to be used
  6. Follow instructions

Supported OS versions/distros:

Other notes:

  • If something in the process does not work for you, try switching USB ports and/or cables (using a USB 2.0 port is recommended)
  • This script will verify the IPSW SHA1sum before restoring
  • For users having issues related to missing libraries or tools, re-install dependencies with ./restore.sh Install
  • For A7 devices:
    • Do not use USB-C to lightning cables as this can prevent a successful restore
    • checkm8 ipwndfu is unfortunately pretty unreliable, you may have to try multiple times (for Linux users I recommend trying in a live USB)
    • If the script can't find your device in pwnREC mode or gets stuck, you may have to start over
    • Other than the above there's not much else I can help regarding entering pwnDFU mode...
  • For 32-bit devices:
    • To devices with baseband, this script will restore your device with the latest baseband (except when jailbreak is enabled)
    • This script has a workaround for the activation error on devices downgrading from iOS 10
    • This script can also be used to just enter kDFU mode for all supported devices
    • This script can also restore your device to other iOS versions with provided SHSH blobs
    • As alternatives to kloader/kDFU, checkm8 A5 or ipwndfu can also be used in DFU advanced menu
      • To enter DFU advanced menu, put your iOS device in DFU mode before running the script
    • This script can work on virtual machines, but I won't provide support for them
  • For jailbreak option:
    • On iOS 8 downgrades, stashing is already enabled and nosuid is removed from fstab, so no need to install the "Stashing for #etasonJB" package
    • If you have problems with Cydia, remove the ultrasn0w repo and force-close Cydia, then try opening Cydia again
    • If you can't find Cydia in your home screen, try accessing Cydia through Safari with cydia://
    • Warning: If your device bootloops with EtasonJB, it may not work with the jailbreak option as well! (I think this applies to 8942/8945 users) If this happens, bootloop protection will trigger and you won't be able to open Cydia

Tools and other stuff used by this script: