checkra1n

From The Apple Wiki
checkra1n
Original author(s)qwertyoruiop
Developer(s)
Initial release10 November 2019; 4 years ago
Preview release
0.12.4 beta / 11 June 2021; 2 years ago
Operating system
Available inEnglish
TypeJailbreaking
Websitecheckra.in

checkra1n is a semi-tethered jailbreak, developed primarily by Luca Todesco (qwertyoruiop). It's based on the checkm8 bootrom exploit released by axi0mX. checkra1n can jailbreak iOS 12.0 iOS 14.8.1, iPadOS 13.1 to iPadOS 14.8.1, and tvOS 12.0 to 14.7. Experimental support was added in 0.9.9 for the T2 processor. Partial support for HomePod was added in 0.12.1 beta.

checkra1n with support for booting pongoOS on every version supported by A7 and above, down to iOS 7, was added in the 0.1337.0 build - but this simply boots pongoOS and does not jailbreak the device. These builds can be found here and can be used to boot a custom ramdisk and overlay. It requires using the "iOS15" pongoOS branch from GitHub and is currently mainly utilised by palera1n and bakera1n.

The latest mainstream checkra1n build - 0.12.4 beta - does not jailbreak iOS 15.0 or later due to the new iBoot patches needed. As a result, there is no current checkra1n version that does so.

Release History

Version Date Changes
0.9 beta 10 November 2019
  • Initial release
0.9.1 beta
  • An issue where the loader app would crash when installing Cydia on iPads
  • A crash when the macOS language was set to anything other than English
  • An issue where iPad Minis would not work with the GUI
  • An issue with the scp binary not working as expected
0.9.2 beta 11 November 2019
  • Fixed an issue where the Apple Watch would not receive notifications while jailbroken
  • Improve reliability of entering DFU mode
  • Fixed an issue where checkra1n could not be used on macOS 10.10
0.9.3 beta 13 November 2019
  • Fixes an issue where biometrics did not work for some users
  • Fixes an issue where the touch screen became unresponsive for some users
  • Fixes an issue where the loader app may not have appeared on the homescreen
  • Fixes an issue where the iPad Smart Keyboard did not work
  • Fixes an issue where the fast charging functionality did not work on some devices
  • Fixes an issue where the taptic engine did not work on some devices
  • Fixes an issue where battery settings did not load for some users
  • Detect a case where the user may have an OTA update downloaded, which caused issues for some users
0.9.3.2 beta
  • Fixes an issue where biometrics did not work for some users
  • Fixes an issue where the touch screen became unresponsive for some users
  • Fixes an issue where the loader app may not have appeared on the homescreen
  • Fixes an issue where the iPad Smart Keyboard did not work
  • Fixes an issue where the fast charging functionality did not work on some devices
  • Fixes an issue where the taptic engine did not work on some devices
  • Detect a case where the user may have an OTA update downloaded, which caused issues for some users
0.9.5 beta 15 November 2019

Bug Fixes:

  • Fixes an issue where the user may be signed out of their Apple ID
  • Fixes an issue that caused MobileSubstrate initialization to be delayed
  • Detect a case where the user may have an OTA update downloaded, which caused issues for some users

The following issues are caused by incorrect DFU mode entry, please make sure to follow the instructions in the UI:

  • An issue where the taptic engine did not work on some devices
  • An issue where biometrics did not work for some users
  • An issue where the touch screen became unresponsive for some users

Other Changes:

  • This update includes a new fast DFU sequence. Entering DFU mode should now be safer and more reliable.
  • The loading mechanism for substrate has improved in this update, which improves the stability of the device.
0.9.6 beta 1 December 2019

Bug Fixes:

  • Fixes support for the iPad 6th Generation
  • Fixes an issue where A7 devices would report an error code on success
  • Fixes an issue where jailbreak app icons would show up on the boot after using loader’s “Restore System” functionality
  • Makes the loader app more resilient to errors occurring after a long uptime
  • Fixes an issue where Loader and Cydia would fail with a no internet connection message on Chinese iPhones
  • Fixes an issue where the the iPad Pro Smart Keyboard would disconnect
  • Fixes an issue where fast charging did not work

Other Changes:

  • Add support for jailbreaking Apple TVs from within the same app
  • Added support for the iPad 5th Generation, iPad Air 2nd Generation the iPad Pro 1st Generation
  • Added support for iOS 13.2.3
  • Re-engineered the command line interface from the ground up
  • Drastically improved loader’s speed
  • Restructured loaderd and friends into separate launch daemons to survive userland reboot and removed insult from daemon name
  • Export kernel base and other useful things for developers (see jbctl for details)
0.9.7 beta 14 December 2019

Bug Fixes:

  • Fixes an issue which prevented the GUI from detecting changes in device modes
  • Fixes an issue that caused the GUI to hang when jailbreaking some iPad models

Other Changes:

  • Add initial Apple TV 4K support
  • Purge OTA updates on boot
  • Add support for iOS 13.3
  • Remove libimobiledevice as a dependency
  • Properly handle situations where there’s no internet connection available while bootstrapping tvOS
  • Add a Control Center shortcut for the tvOS loader app

Known Issues:

  • The Apple TV 4K will produce a -20 error, even on a successful jailbreak
0.9.8 beta 5 February 2020

Bug Fixes:

  • This release squashes so many bugs we couldn’t keep track of them. Sorry bugs…

Other Changes:

  • Support for Linux has arrived! See below for more information.
  • Introduces webra1n (see below!).
  • Low-level patching is now handled by our all-new pongoOS, engineered from the ground up for flexibility. More news on this front soon!
  • Adds a whole new CLI, built around ncurses, which now supports FastDFU.
  • Adds a new --version flag to the CLI for debugging purposes.
  • Adds a new option in the GUI and CLI which allows for custom boot-args to be set.
  • Adds an option to skip version checking for new iOS and iPadOS versions which haven’t yet been officially tested.
  • Added support for iOS and iPadOS 13.3.1.
  • The checkra1n app no longer requires internet to open.

Known Issues:

  • The Apple TV 4K will produce a -20 error, even on a successful jailbreak
0.9.8.1 beta 4 March 2020

Other Changes:

  • Support Project Sandcastle

Known Issues:

  • The Apple TV 4K will produce a -20 error, even on a successful jailbreak
0.9.8.2 beta 8 March 2020

Other Changes:

  • Bumping maximum device tree size to 256KiB for Project Sandcastle.
  • Fix architecture mismatch for devhelper builds.

Known Issues:

  • The Apple TV 4K will produce a -20 error, even on a successful jailbreak
0.10.2 beta 26 May 2020

Bug Fixes:

  • Fixes support for A7 devices
  • Fixes an issue in 12.4 which caused the device to panic and reboot on attempted shutdown
  • Fixes an issue that caused the keychain to lose new passwords
  • Fixes an issue which caused the GUI/ncurses to crash when used more than once
  • Fixes an issue where a userspace reboot won’t restart dropbear

Other Changes:

  • Added 13.4 and 13.4.1 support
  • Introducing kernel patch finder v2 - rewritten from the ground up for sanic speed
  • You can now quit from the webra1n interface
0.11.0 beta 22 September 2020

Highlighted changes:

  • Official support for iOS 12.0 - 13.7
  • Official support for iOS/tvOS 14.0 (A8(X)-A9(X) running iOS and iPadOS; all tvOS devices are supported)
  • Official support for Apple TV 4K breakout boards (Standard and Advanced)

Bug Fixes:

  • Fix an issue with userland kernel patch finder that prevented checkra1n flags from being saved as well as exporting kernel information used by developers to tfp0, *affecting devices running iOS 13.6 and up.
  • App can now be launched from DMG on macOS
  • Demotion is now working on Linux
  • Fixes the -20 error for Apple TV 4K by enabling USB on v1.x standard breakouts

Other Changes:

  • Partial bridgeOS support (CLI only, see ‘Known issues’)
  • PongoOS was switched to Darwin ABI
  • Improved kernel patch finder patchsets
  • Improved boot strategy/hooking
  • NVRAM unlock patch (for root)
  • dyld patch
  • Removes Mach-o platform restrictions (iOS binaries can now run on tvOS/bridgeOS and vice versa)
  • Significantly reduces checkra1n build size
  • Removed macOS bug reporter
0.12.0 beta 8 November 2020

Highlighted changes:

  • Official support for iOS 14.1 and 14.2
  • Official support for A10/A10X devices on iOS 14.x
  • Limited support for A11 devices on iOS 14.x (Options > Skip A11 BPR check)
  • A “Quick Mode” option that makes the GUI/TUI run on a timer and require no button clicks

Bug Fixes:

  • Fixes a widespread issue that could cause crashes or hangs at various stages of booting across all devices and iOS versions
  • Fixes a kernel patch that made many kexts think the device was in restore mode
  • Fixes an issue where the tvOS loader would crash on tvOS 13.x
  • Fixes a GUI/TUI issue that would cause failure with A7 devices
  • Fixes a GUI/TUI issue where failure to jailbreak could cause memory corruption
  • Fixes an issue where the T2 overlay was not being sent in the Linux version
  • Ships a vastly updated PongoOS, including:
    • Working USB on all SoCs
    • A hardware AES driver for all SoCs, providing access to GID keys and more
    • Booting with -p works once again

Other Changes:

  • Users who used a modified checkra1n build will get a warning popup
0.12.1 beta 20 November 2020

Highlighted changes:

  • Adds an on-device alert to indicate checkra1n’s Safe Mode is active
  • Adds support for iBridge SSH from the same host
  • Partial support for the original HomePod (CLI only, tested to work with audioOS 13 and 14)

Bug Fixes:

  • Fixes an issue that would often cause Safe Mode to be entered on iOS 14.2 regardless of whether the user requested it or not
  • Safe Mode no longer loads 3rd-party LaunchDaemons
  • NVRAM is now unlocked on iOS 14.2 as well
  • Fixes an issue where jailbreaking an AppleTV fail on fresh tvOS installations
  • The bundled dd binary now has the entitlement required to access block devices
  • Fixes multiple memory leaks in early-boot binaries
  • Changes some GUI internals that should reduce the chance of exploit failure and GUI hiccups
0.12.2 beta 31 December 2020

Highlighted changes:

  • Enables USB on AppleTV 4k during normal system operation

Bug Fixes:

  • Fixes A10 and A10X devices crashing when trying to jailbreak on iOS 14.3 or higher
  • Fixes an issue where some LaunchDaemons were loaded on platforms where they should not have been
0.12.3 beta 29 April 2021

Highlighted changes:

  • Support for iOS 14.5
  • Preliminary support for M1 Macs - read the announcement
  • New --force-revert command line option to force rootFS reverting without access to the loader app
  • The included binpack has been updated and thinned

Bug Fixes:

  • Fixes an issue that caused the loader app to crash on tvOS 12
  • Fixes checkra1n crashing on macOS if using a recent MobileDevice framework
  • Fixes an issue that could cause the “terminal UI” to crash on Linux
  • Fixes an issue where the “terminal UI” could leave the terminal in an unusable state on exit
  • The “devhelper” process on Linux is now properly cleaned up on exit
0.12.4 beta 11 June 2021

Bug Fixes:

  • Hotfix for A9X devices, which could not boot on 14.5 at all with 0.12.3
  • Fix package dependency issues on the deb repo
0.1337.0 1 January 2023

Changes:

  • Fix iBoot patches for iOS 15 and 16
  • Fix A7 on Linux hosts
  • Fix M1 USB-C requiring replug
  • Add -r, -o and -K flags for custom ramdisk, overlay and KPF
  • Add -P flag to enter Pongo shell with default initialisation
  • Refactor PongoOS to live in SRAM
  • Refactor download mode to use ROM USB stack
  • Keep ROM accessible indefinitely
  • Keep fuse array unlocked beyond ROM
  • PongoOS: "fuse" driver / command
0.1337.1 15 January 2023

Changes:

  • Remove MobileDevice.framework dependency for CLI builds
  • Enable auto-DFU feature for advanced ATV4k breakout board
  • Fix iBoot patches for iOS 9
  • Fix some error logging args not being evaluated
  • Defend against unsuitable binaries to -k and -K flags
  • PongoOS: Fix Pongo USB stack crashing on iOS 7
  • PongoOS: Fix kpf_flags/checkra1n_flags being swapped
  • PongoOS: Fix iBoot APCIe/NVMe timeout on A9/A9X
  • PongoOS: Fix KPF for iOS 16.1/16.2
  • PongoOS: Fix syscall reentrancy (used to break errno on context switch)
  • PongoOS: Fix Linux booting
0.1337.2 6 June 2023

Changes:

  • Fix iBoot patches for iPadOS 17.0 beta
  • Fix ATV4k breakout board support code causing high CPU usage
  • PongoOS: Force-enable developer mode
  • PongoOS: Fix mach port patches that prevented tfp0 from working
  • PongoOS: KPF support for up to 16.4.1 (16.5 and 16.6 unknown as of yet, 17.0 not supported)
  • PongoOS: Refactor DeviceTree support, "dt" command is now a lot more featureful