Difference between revisions of "Jailbreak"

From The iPhone Wiki
Jump to: navigation, search
m (iPhone 4 (CDMA model): Oopsie.)
m (Versions: add 16.x)
 
(788 intermediate revisions by 33 users not shown)
Line 1: Line 1:
  +
{{float toc|right}}
This is the process by which full execute and write access is obtained on all the partitions of the iPhone. It is done by patching [[:/etc/fstab]] to mount the System partition as read-write. This is entirely different from an [[unlock]]. Jailbreaking is the first action that must be taken before things like unofficial [[activation]] (hacktivation), and unofficial unlocking can be applied.
 
  +
The term "'''jailbreak'''" is the process by which full execute and write access is obtained on all the partitions of iOS, iPadOS, tvOS and watchOS. It used to be done by patching [[/private/etc/fstab]] to mount the System partition as 'read-write'. This is entirely different from an [[unlock]]. Jailbreaking is the first action that must be taken before things like unofficial [[activation]] (hacktivation), and unofficial [[unlock]]ing can be applied.
   
The original jailbreak also included modifying the [[AFC]] service (used by [[iTunes]] to access the filesystem) to give full filesystem access from root. This was later updated to create a new service ([[AFC]]2) that allows access to the full filesystem.
+
Older jailbreaks also included modifying the [[AFC]] service (used by [[iTunes]] to access the filesystem) to give full filesystem access from root. This was later updated to create a new service ([[AFC]]2) that allows access to the full filesystem.
   
Modern jailbreaks also include patching the kernel to get around code signing and other restrictions.
+
Modern jailbreaks now include patching the kernel to get around code signing and other restrictions. These are called [[Kernel Patches]].
   
  +
'''Note''': The legality of jailbreaking your device varies with each country/region. [[wikipedia:iOS jailbreaking#Legality|Wikipedia has a summary of legality for some countries]].
== Exploits which were used in order to jailbreak 1.x ==
 
=== 1.0.2 ===
 
* [[Restore Mode]] ([[iBoot (Bootloader)|iBoot]] had a command named cp, which had access to the whole filesystem)
 
=== 1.1.1 ===
 
* [[Symlinks]] (an upgrade jailbreak)
 
* [[LibTiff | libtiff exploit]] (Adapted from the PSP scene, used by [[JailbreakMe]])
 
=== 1.1.2 ===
 
* [[Mknod]] (an upgrade jailbreak)
 
=== 1.1.3 / 1.1.4 / 1.1.5 ===
 
* [[Soft Upgrade]] (an upgrade jailbreak)
 
* [[Ramdisk Hack]]
 
   
  +
== Types of Jailbreaks ==
== Exploits which are used in order to jailbreak 2.0+ ==
 
  +
When a device is booting, it loads Apple's own [[kernel]] initially, so a jailbroken device must be exploited and have the kernel patched each time it is booted up.
=== [[Userland]] (used for all devices) ===
 
* [[MobileBackup Copy Exploit]] + [[Incomplete Codesign Exploit]] + [[BPF_STX Kernel Write Exploit]] (together for [[Spirit]])
 
* [[Malformed CFF Vulnerability]] + [[Incomplete Codesign Exploit]] + [[IOSurface Kernel Exploit]] (together for [[Star]])
 
* [[Packet Filter Kernel Exploit]] (together with [[limera1n]]'s bootrom exploit or the [[usb_control_msg(0xA1, 1) Exploit]], for [[untethered jailbreak]])
 
* [[HFS Legacy Volume Name Stack Buffer Overflow]] (together with [[limera1n]]'s bootrom exploit or the [[usb_control_msg(0xA1, 1) Exploit]], for [[untethered jailbreak]])
 
* [[ndrv_setspec() Integer Overflow]] (together with [[limera1n]]'s bootrom exploit for [[untethered jailbreak]])
 
   
  +
An [[untethered jailbreak|'''untethered''' jailbreak]] uses exploits that are powerful enough to allow the user to turn their device off and back on at will, with the device starting up completely, and the kernel will be patched without the help of a computer – in other words, it will be jailbroken even after each reboot.
=== [[m68ap|iPhone]] / [[n82ap|iPhone 3G]] / [[n45ap|iPod touch]] ===
 
* [[Pwnage]] and [[Pwnage 2.0]] (together)
 
   
  +
However, some jailbreaks are [[tethered jailbreak|'''tethered''']]. A tethered jailbreak is only able to temporarily jailbreak the device during a single boot. If the user turns the device off and then boots it back up without the help of a jailbreak tool, the device will no longer be running a patched kernel, and it may get stuck in a partially started state, such as [[Recovery Mode]]. In order for the device to start completely and with a patched kernel, it must be "re-jailbroken" with a computer (using the "boot tethered" feature of a tool) each time it is turned on. All changes to the files on the device (such as installed package files or edited system files) will persist between reboots, including changes that can only function if the device is jailbroken (such as installed package files).
=== [[n72ap|iPod touch 2G]] ===
 
* [[ARM7 Go]] (used for some [[tethered jailbreak]]s)
 
* [[0x24000 Segment Overflow]] (used on "MB" models for an [[untethered jailbreak]])
 
* [[usb_control_msg(0x21, 2) Exploit]] ([[tethered jailbreak|tethered]] for units with the [[iBoot-240.5.1|new bootrom]])
 
* [[usb_control_msg(0xA1, 1) Exploit]] ([[tethered jailbreak|tethered]] on its own, [[untethered jailbreak|untethered]] with an additional exploit)
 
   
  +
In more recent years, two other solutions have been created - '''semi-tethered''' and '''semi-''un''tethered'''.
=== [[n88ap|iPhone 3GS]] ===
 
* [[0x24000 Segment Overflow]] (used on older devices for an [[untethered jailbreak]])
 
* [[iBoot Environment Variable Overflow]]
 
* [[usb_control_msg(0x21, 2) Exploit]] ([[tethered jailbreak|tethered]] for newer devices)
 
* [[limera1n]] ([[tethered jailbreak|tethered]] on its own, [[untethered jailbreak|untethered]] with an additional exploit)
 
   
  +
A [[semi-tethered jailbreak|'''semi-tethered''']] solution is one where the device is able to start up on its own, but it will no longer have a patched kernel, and therefore will not be able to run modified code. It will, however, still be usable for normal functions, just like stock iOS. To start with a patched kernel, the user must start the device with the help of the jailbreak tool.
=== [[n18ap|iPod touch 3G]] ===
 
* [[usb_control_msg(0x21, 2) Exploit]] ([[tethered jailbreak|tethered]] only)
 
* [[limera1n]] ([[tethered jailbreak|tethered]] on its own, [[untethered jailbreak|untethered]] with an additional exploit)
 
   
  +
A [[semi-untethered jailbreak|'''semi-''un''tethered''']] jailbreak gives the ability to start the device on it's own. On first boot, the device will not be running a patched kernel. However, rather than having to run a tool from a computer to apply the kernel patches, the user is able to re-jailbreak their device with the help of an app (usually sideloaded using [[Cydia Impactor]]) running on their device. In the case of the iOS 9.2-9.3.3 jailbreak, a Safari-based exploit was available, thereby meaning a website could be used to rejailbreak.
=== [[k66ap|Apple TV 2G]] / [[k48ap|iPad]] / [[iPhone 4]] ([[n90ap|GSM]] and [[n92ap|CDMA]] models) / [[n81ap|iPod touch 4G]] ===
 
* [[limera1n]]'s bootrom exploit ([[tethered jailbreak|tethered]] on its own, [[untethered jailbreak|untethered]] with an additional exploit)
 
   
  +
In more detail: Each iOS device has a [[bootchain]] that tries to make sure only trusted/signed code is loaded. A device with a tethered jailbreak is able to boot up with the help of a jailbreaking tool because the tool executes exploits via USB that bypass parts of that "chain of trust", bootstrapping to a [[pwned]] (no [[Signature Check Patch|signature check]]) [[iBSS]], [[iBEC]], or [[iBoot (Bootloader)|iBoot]] to finish the boot process.
==Jailbreak Tools ==
 
===[[K66ap |Apple TV 2G]]===
 
'''NOTE:''' The version in parentheses is what the Apple TV reports on TV.
 
{| class="wikitable" style="font-size: smaller; text-align: center; table-layout: fixed; border-collapse: collapse;" border="1"
 
|-
 
! rowspan="2" | [[Jailbreak]] Tool
 
! colspan="6" | Works with [[firmware]]...
 
|-
 
| style="width:100px;" | [[Mojave 8M89 (Apple TV 2G)|4.1/4.0]]
 
| style="width:100px;" | [[Jasper 8C150 (Apple TV 2G)|4.2/4.1]]
 
| style="width:100px;" | [[Jasper 8C154 (Apple TV 2G)|4.2.1/4.1.1]]
 
| style="width:100px;" | [[Durango 8F191m (Apple TV 2G)|4.3/4.2]]
 
| style="width:100px;" | [[Durango 8F202 (Apple TV 2G)|4.3/4.2.1]]
 
| style="width:100px;" | [[Durango 8F305 (Apple TV 2G)|4.3/4.2.2]]
 
|-
 
| [[limera1n]]
 
| {{partial|no package management GUI}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[sn0wbreeze]]
 
| {{partial|no package management GUI}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes|2.5-2.7.1}}
 
| {{no}}
 
|-
 
| [[Greenpois0n (jailbreak)|greenpois0n]]
 
| {{partial|no package management GUI}}
 
| {{no}}
 
| {{yes|RC6-RC6.1}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[PwnageTool]]
 
| {{partial|no package management GUI}}
 
| {{partial|Restore from a custom firmware with unofficial bundle<sup>1</sup>}}
 
| {{yes|4.2}}
 
| {{no}}
 
| {{yes|4.3-4.3.3.1}}
 
| {{yes|4.3-4.3.3.1<sup>2</sup>}}
 
|-
 
| [[Seas0nPass]]
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{no}}
 
| {{yes|0.7.4 (Mac)<br />
 
0.3.7 (Windows)}}
 
| {{no}}
 
|-
 
| [[redsn0w]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes|0.9.6rc16}}
 
| {{no}}
 
|-
 
|}
 
<sup>1</sup> [[Tethered jailbreak]].<br />
 
<sup>2</sup> User needs to manually add PwnageTool firmware bundle into application.
 
   
  +
== Jailbreak Tools ==
===[[K48ap|iPad]]===
 
  +
Untethered or semi-untethered jailbreaks are shown with a green 'yes'. Tethered or semi-tethered jailbreaks will be stated in a yellow box. [[Beta Firmware]]s are not listed.
{| class="wikitable" style="font-size: smaller; text-align: center; table-layout: fixed; border-collapse: collapse;" border="1"
 
|-
 
! rowspan="2" | [[Jailbreak]] Tool
 
! colspan="8" | Works with [[firmware]]...
 
|-
 
| style="width:100px;" | [[Wildcat 7B367 (iPad)|3.2]]
 
| style="width:100px;" | [[Wildcat 7B405 (iPad)|3.2.1]]
 
| style="width:100px;" | [[Wildcat 7B500 (iPad)|3.2.2]]
 
| style="width:150px;" | [[Jasper 8C148 (iPad)|4.2.1]]
 
| style="width:100px;" | [[Durango 8F190 (iPad)|4.3]]
 
| style="width:100px;" | [[Durango 8G4 (iPad)|4.3.1]]
 
| style="width:100px;" | [[Durango 8H7 (iPad)|4.3.2]]
 
| style="width:100px;" | [[Durango 8J3 (iPad)|4.3.3]]
 
|-
 
| [[Spirit]]
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[Star]]
 
| {{yes}}
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[limera1n]]
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[Greenpois0n (jailbreak)|greenpois0n]]
 
| {{no}}
 
| {{no}}
 
| {{yes|RC4}}
 
| {{yes|RC5-RC6.1}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[redsn0w]]
 
| {{no}}
 
| {{no}}
 
| {{yes|0.9.6b2-0.9.6rc16}}
 
| {{yes|0.9.6b4<sup>1</sup>-0.9.6rc16
 
or 0.9.7b6<sup>1 2</sup>}}
 
| {{yes|0.9.6rc9<sup>1</sup>-0.9.6rc16<sup>1</sup>}}
 
| {{yes|0.9.6rc9<sup>1</sup>-0.9.6rc16}}
 
| {{yes|0.9.6rc13<sup>1</sup>-0.9.6rc16}}
 
| {{yes|0.9.6rc16}}
 
|-
 
| [[PwnageTool]]
 
| {{no}}
 
| {{no}}
 
| {{yes|4.1-4.1.3}}
 
| {{yes|4.2}}
 
| {{no}}
 
| {{yes|4.3}}
 
| {{yes|4.3.2}}
 
| {{yes|4.3.3-4.3.3.1}}
 
|-
 
| [[sn0wbreeze]]
 
| {{no}}
 
| {{no}}
 
| {{yes|2.1}}
 
| {{yes|2.2}}
 
| {{yes|2.3b4<sup>1</sup>}}
 
| {{yes|2.5}}
 
| {{yes|2.6-2.6.1}}
 
| {{yes|2.7-2.7.1}}
 
|-
 
| [[Saffron]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
|}
 
<sup>1</sup> [[Tethered jailbreak]].<br />
 
<sup>2</sup> If [[SHSH]]s were saved for iOS 4.2b3 and if you have a developer access to its IPSW, [[Jailbreak Monte]] can be used.
 
   
=== [[iPad 2]] ===
+
===Versions===
  +
* [[Jailbreak/1.x|1.x]]
{| class="wikitable" style="font-size: smaller; text-align: center; table-layout: fixed; border-collapse: collapse;" border="1"
 
  +
* [[Jailbreak/2.x|2.x]]
|-
 
  +
* [[Jailbreak/4.x|4.x]]
! colspan="4" | Works with [[firmware]]...
 
  +
* [[Jailbreak/5.x|5.x]]
|-
 
  +
* [[Jailbreak/6.x|6.x]]
| style="width:90px;" | 4.3
 
  +
* [[Jailbreak/7.x|7.x]]
| style="width:90px;" | 4.3.1
 
  +
* [[Jailbreak/8.x|8.x]]
| style="width:90px;" | 4.3.2
 
  +
* [[Jailbreak/9.x|9.x]]
| style="width:90px;" | 4.3.3
 
  +
* [[Jailbreak/10.x|10.x]]
|-
 
  +
* [[Jailbreak/11.x|11.x]]
| [[Saffron]]
 
  +
* [[Jailbreak/12.x|12.x]]
| {{yes}}
 
  +
* [[Jailbreak/13.x|13.x]]
| {{no}}
 
  +
* [[Jailbreak/14.x|14.x]]
| {{no}}
 
  +
* [[Jailbreak/15.x|15.x]]
| {{yes}}
 
  +
* [[Jailbreak/16.x|16.x]]
|}
 
! rowspan="2" | [[Jailbreak]] Tool
+
* [[Jailbreak/3.x|3.x]]
   
  +
==See Also==
===[[M68ap|iPhone]]===
 
  +
* [[Failbreak]]
{| class="wikitable" style="font-size: smaller; text-align: center; table-layout: fixed; border-collapse: collapse;" border="1"
 
  +
* [[Jailbreak Exploits]]
|-
 
  +
* [[Kernel Patches]]
! rowspan="2" | [[Jailbreak]] Tool
 
! colspan="18" | Works with [[firmware]]...
 
|-
 
| style="width:90px;" | [[Heavenly 1A543a (iPhone)|1.0.0]]
 
| style="width:90px;" | [[Heavenly 1C25 (iPhone)|1.0.1]]
 
| style="width:90px;" | [[Heavenly 1C28 (iPhone)|1.0.2]]
 
| style="width:90px;" | [[Snowbird 3A109a (iPhone)|1.1.1]]
 
| style="width:90px;" | [[Oktoberfest 3B48b (iPhone)|1.1.2]]
 
| style="width:90px;" | [[Little Bear 4A93 (iPhone)|1.1.3]]
 
| style="width:90px;" | [[Little Bear 4A102 (iPhone)|1.1.4]]
 
| style="width:90px;" | [[Big Bear 5A347 (iPhone)|2.0]]
 
| style="width:90px;" | [[Big Bear 5B108 (iPhone)|2.0.1]]
 
| style="width:90px;" | [[Big Bear 5C1 (iPhone)|2.0.2]]
 
| style="width:90px;" | [[Sugar Bowl 5F136 (iPhone)|2.1]]
 
| style="width:90px;" | [[Timberline 5G77 (iPhone)|2.2]]
 
| style="width:90px;" | [[SUTimberline 5H11 (iPhone)|2.2.1]]
 
| style="width:90px;" | [[Kirkwood 7A341 (iPhone)|3.0]]
 
| style="width:90px;" | [[Kirkwood 7A400 (iPhone)|3.0.1]]
 
| style="width:90px;" | [[Northstar 7C144 (iPhone)|3.1]]
 
| style="width:90px;" | [[Northstar 7D11 (iPhone)|3.1.2]]
 
| style="width:90px;" | [[SUNorthstarTwo 7E18 (iPhone)|3.1.3]]
 
|-
 
| [[iBrickr]]
 
| {{yes|0.5-0.91}}
 
| {{yes|0.5-0.91}}
 
| {{yes|0.6-0.91}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[AppTapp Installer]]
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[JailbreakMe#First Incarnation (AppSnapp)|AppSnapp]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[OktoPrep]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{partial|Update from jailbroken 1.1.1}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[Soft Upgrade]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{partial|Update from jailbroken 1.1.2}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[ZiPhone]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[iLiberty / iLiberty+]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[QuickPwn]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[PwnageTool]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes|1.1.4}}
 
| {{yes|2.0/2.0.3}}
 
| {{yes|2.0.1/2.0.3}}
 
| {{yes|2.0.2/2.0.3}}
 
| {{yes|2.1}}
 
| {{yes|2.2}}
 
| {{yes|2.2.5}}
 
| {{yes|3.0}}
 
| {{no}}
 
| {{yes|3.1/3.1.3}}
 
| {{yes|3.1.4}}
 
| {{yes|3.1.5}}
 
|-
 
| [[redsn0w]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes|0.9.3}}
 
| {{yes|0.9.3}}
 
| {{yes|0.9.3}}
 
| {{yes|0.9.3}}
 
| {{yes|0.9.4}}
 
|-
 
| [[Star]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{yes}}
 
|-
 
| [[blackra1n]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{yes}}
 
| {{no}}
 
|-
 
| [[purplera1n]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
|}
 
   
  +
[[Category:Jailbreaking]]
===[[N82ap|iPhone 3G]]===
 
{| class="wikitable" style="font-size: smaller; text-align: center; table-layout: fixed; border-collapse: collapse;" border="1"
 
|-
 
! rowspan="2" | [[Jailbreak]] Tool
 
! colspan="16" | Works with [[firmware]]...
 
|-
 
| style="width:90px;" | 2.0
 
| style="width:90px;" | 2.0.1
 
| style="width:90px;" | 2.0.2
 
| style="width:90px;" | 2.1
 
| style="width:90px;" | 2.2
 
| style="width:90px;" | 2.2.1
 
| style="width:90px;" | 3.0
 
| style="width:90px;" | 3.0.1
 
| style="width:90px;" | 3.1
 
| style="width:90px;" | 3.1.2
 
| style="width:90px;" | 3.1.3
 
| style="width:90px;" | 4.0
 
| style="width:90px;" | 4.0.1
 
| style="width:90px;" | 4.0.2
 
| style="width:90px;" | 4.1
 
| style="width:90px;" | 4.2.1
 
|-
 
|}
 
This table needs to be completed.
 
 
===[[N88ap|iPhone 3GS]]===
 
{| class="wikitable" style="font-size: smaller; text-align: center; table-layout: fixed; border-collapse: collapse;" border="1"
 
|-
 
! rowspan="2" | [[Jailbreak]] Tool
 
! colspan="14" | Works with [[firmware]]...
 
|-
 
| style="width:90px;" | 3.0
 
| style="width:90px;" | 3.0.1
 
| style="width:90px;" | 3.1
 
| style="width:90px;" | 3.1.2
 
| style="width:90px;" | 3.1.3
 
| style="width:90px;" | 4.0
 
| style="width:90px;" | 4.0.1
 
| style="width:90px;" | 4.0.2
 
| style="width:90px;" | 4.1
 
| style="width:90px;" | 4.2.1
 
| style="width:90px;" | 4.3
 
| style="width:90px;" | 4.3.1
 
| style="width:90px;" | 4.3.2
 
| style="width:90px;" | 4.3.3
 
|-
 
| [[purplera1n]]
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[redsn0w]]
 
| {{yes|0.8}}
 
| {{yes|0.8}}
 
| {{yes|0.9.2<sup>1</sup> or 0.9.3<sup>1</sup>}}
 
| {{yes|0.9.2<sup>1</sup> or 0.9.3<sup>1</sup>}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes|0.9.6b2-0.9.6rc16}}
 
| {{yes|0.9.6b4<sup>1</sup>-0.9.6rc16}}
 
| {{yes|0.9.6rc9<sup>1</sup>-0.9.6rc16<sup>1</sup>}}
 
| {{yes|0.9.6rc9<sup>1</sup>-0.9.6rc16}}
 
| {{yes|0.9.6rc13<sup>1</sup>-0.9.6rc16}}
 
| {{yes|0.9.6rc16}}
 
|-
 
| [[blackra1n]]
 
| {{no}}
 
| {{no}}
 
| {{yes|Yes<sup>1</sup>}}
 
| {{yes|Yes<sup>1</sup>}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[Spirit]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[Star]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[PwnageTool]]
 
| {{no}}
 
| {{no}}
 
| {{partial|Restore from a custom firmware<sup>2</sup>}}
 
| {{yes|3.1.4<sup>2</sup>}}
 
|colspan="2" {{partial|Restore from a custom firmware<sup>2</sup>}}
 
|colspan="2" {{partial|Restore from a custom firmware with unofficial firmware bundle<sup>2</sup>}}
 
| {{yes|4.1-4.1.3}}
 
| {{yes|4.2}}
 
| {{yes|4.2<sup>1 3</sup>}}
 
| {{yes|4.3}}
 
| {{yes|4.3.2}}
 
| {{yes|4.3.3-4.3.3.1}}
 
|-
 
| [[sn0wbreeze]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes|2.0.2<sup>1 2</sup>}}
 
| {{yes|2.0.2<sup>1 2</sup>}}
 
| {{yes|2.0.2<sup>1 2</sup>}}
 
|colspan="2" {{yes|2.0.2<sup>1 2</sup>}}
 
| {{yes|2.1}}
 
| {{yes|2.2}}
 
| {{yes|2.3b4<sup>1</sup>}}
 
| {{yes|2.5}}
 
| {{yes|2.6-2.6.1}}
 
| {{yes|2.7-2.7.1}}
 
|-
 
| [[limera1n]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[Greenpois0n (jailbreak)|greenpois0n]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes|RC4}}
 
| {{yes|RC6.1}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[Saffron]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
|}
 
<sup>1</sup> [[Tethered jailbreak]] on devices with the [[iBoot-359.3.2|new bootrom]].<br />
 
<sup>2</sup> Only applicable for devices with the [[iBoot-359.3|old bootrom]]. Requires the device to have signature checks disabled (pwned).<br />
 
<sup>3</sup> Requires an unofficial firmware bundle.
 
 
===[[N90ap|iPhone 4 (GSM model)]]===
 
{| class="wikitable" style="font-size: smaller; text-align: center; table-layout: fixed; border-collapse: collapse;" border="1"
 
|-
 
!rowspan="2"| [[Jailbreak]] Tool
 
!colspan="9"| Works with [[firmware]]...
 
|-
 
|style="width:100px;"| 4.0
 
|style="width:100px;"| 4.0.1
 
|style="width:100px;"| 4.0.2
 
|style="width:100px;"| 4.1
 
|style="width:100px;"| 4.2.1
 
|style="width:100px;"| 4.3
 
|style="width:100px;"| 4.3.1
 
|style="width:100px;"| 4.3.2
 
|style="width:100px;"| 4.3.3
 
|-
 
| [[Star]]
 
| {{yes}}
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[limera1n]]
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[Greenpois0n (jailbreak)|greenpois0n]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes|RC4}}
 
| {{yes|RC5-RC6.1}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[redsn0w]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes|0.9.6b2-0.9.6rc16}}
 
| {{yes|0.9.6b4<sup>1</sup>-0.9.6rc16
 
or 0.9.7b6<sup>1 2</sup>}}
 
| {{yes|0.9.6rc9<sup>1</sup>-0.9.6rc16<sup>1</sup>}}
 
| {{yes|0.9.6rc9<sup>1</sup>-0.9.6rc16}}
 
| {{yes|0.9.6rc13<sup>1</sup>-0.9.6rc16}}
 
| {{yes|0.9.6rc16}}
 
|-
 
| [[PwnageTool]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes|4.1-4.1.3}}
 
| {{yes|4.2}}
 
| {{yes|4.2<sup>1 3</sup>}}
 
| {{yes|4.3}}
 
| {{yes|4.3.2}}
 
| {{yes|4.3.3-4.3.3.1}}
 
|-
 
| [[sn0wbreeze]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes|2.1}}
 
| {{yes|2.2}}
 
| {{yes|2.3b4<sup>1</sup>}}
 
| {{yes|2.5}}
 
| {{yes|2.6-2.6.1}}
 
| {{yes|2.7-2.7.1}}
 
|-
 
| [[Saffron]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
|}
 
<sup>1</sup> [[Tethered jailbreak]].
 
 
<sup>2</sup> If [[SHSH]]s were saved for iOS 4.2b3 and if you have a developer access to its IPSW, [[Jailbreak Monte]] can be used.
 
 
<sup>3</sup> Requires an unofficial firmware bundle
 
 
===[[N92ap|iPhone 4 (CDMA model)]]===
 
{| class="wikitable" style="font-size: smaller; text-align: center; table-layout: fixed; border-collapse: collapse;" border="1"
 
|-
 
!rowspan="2"| [[Jailbreak]] Tool
 
!colspan="4"| Works with [[firmware]]...
 
|-
 
|style="width:100px;"| 4.2.5
 
|style="width:100px;"| 4.2.6
 
|style="width:100px;"| 4.2.7
 
|style="width:100px;"| 4.2.8
 
|-
 
| [[Greenpois0n (jailbreak)|greenpois0n]]
 
| {{no}}
 
| {{yes|RC6.1}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[PwnageTool]]
 
| {{no}}
 
| {{yes|4.2}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[redsn0w]]
 
| {{no}}
 
| {{yes|0.9.6rc9-0.9.6rc16}}
 
| {{no}}
 
| {{yes|0.9.6rc18}}
 
|-
 
| [[sn0wbreeze]]
 
| {{no}}
 
| {{yes|2.2}}
 
| {{yes|2.6-2.6.1}}
 
| {{yes|2.7-2.7.1}}
 
|-
 
| [[Saffron]]
 
| {{no}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
|}
 
 
===[[N45ap|iPod touch]]===
 
{| class="wikitable" style="font-size: smaller; text-align: center; table-layout: fixed; border-collapse: collapse;" border="1"
 
|-
 
!rowspan="2"| [[Jailbreak]] Tool
 
!colspan="16"| Works with [[firmware]]...
 
|-
 
|style="width:90px;"| 1.1
 
|style="width:90px;"| 1.1.1
 
|style="width:90px;"| 1.1.2
 
|style="width:90px;"| 1.1.3
 
|style="width:90px;"| 1.1.4
 
|style="width:90px;"| 1.1.5
 
|style="width:90px;"| 2.0
 
|style="width:90px;"| 2.0.1
 
|style="width:90px;"| 2.0.2
 
|style="width:90px;"| 2.1
 
|style="width:90px;"| 2.2
 
|style="width:90px;"| 2.2.1
 
|style="width:90px;"| 3.0
 
|style="width:90px;"| 3.1
 
|style="width:90px;"| 3.1.2
 
|style="width:90px;"| 3.1.3
 
|-
 
|[[JailbreakMe#First Incarnation (AppSnapp)|AppSnapp]]
 
| {{no}}
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
|[[OktoPrep]]
 
| {{no}}
 
| {{no}}
 
| {{partial|Update from jailbroken 1.1.1}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
|[[Soft Upgrade]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{partial|Update from jailbroken 1.1.2}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
|[[ZiPhone]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
|[[iLiberty / iLiberty+]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
|[[QuickPwn]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
|[[PwnageTool]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes|1.1.4}}
 
| {{no}}
 
| {{yes|2.0/2.0.3}}
 
| {{yes|2.0.1/2.0.3}}
 
| {{yes|2.0.2/2.0.3}}
 
| {{yes|2.1}}
 
| {{yes|2.2}}
 
| {{yes|2.2.5}}
 
| {{yes|3.0}}
 
| {{yes|3.1/3.1.3}}
 
| {{yes|3.1.4}}
 
| {{yes|3.1.5}}
 
|-
 
|[[redsn0w]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes|0.9.3}}
 
| {{yes|0.9.3}}
 
| {{yes|0.9.3}}
 
| {{yes|0.9.3}}
 
| {{yes|0.9.4}}
 
|-
 
|[[Star]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{yes}}
 
|-
 
|[[blackra1n]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{yes}}
 
| {{no}}
 
|-
 
|[[purplera1n]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|}
 
 
===[[N72ap|iPod touch 2G]]===
 
This table needs improvement. (Particularly, information for redsn0w and anything notable for 2.x.)
 
{| class="wikitable" style="font-size: smaller; text-align: center; table-layout: fixed; border-collapse: collapse;" border="1"
 
|-
 
!rowspan="2"| [[Jailbreak]] Tool
 
!colspan="11"| Works with [[firmware]]...
 
|-
 
|style="width:90px;"| 2.1.1
 
|style="width:90px;"| 2.2
 
|style="width:90px;"| 2.2.1
 
|style="width:90px;"| 3.0
 
|style="width:90px;"| 3.1.1
 
|style="width:90px;"| 3.1.2
 
|style="width:90px;"| 3.1.3
 
|style="width:90px;"| 4.0
 
|style="width:90px;"| 4.0.2
 
|style="width:90px;"| 4.1
 
|style="width:90px;"| 4.2.1
 
|-
 
|[[purplera1n]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes|Yes<sup>1</sup>}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
|[[blackra1n]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes|Yes<sup>3</sup>}}
 
| {{yes|Yes<sup>3</sup>}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
|[[PwnageTool]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes|3.1.3<sup>2</sup>}}
 
| {{yes|3.1.4<sup>1</sup>}}
 
| {{yes|3.1.5<sup>1</sup>}}
 
| {{yes|4.0<sup>1</sup>/4.01<sup>1</sup>}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
|[[redsn0w]]
 
| {{partial|Tethered<sup>1</sup>}}
 
| {{no}}
 
| {{no}}
 
| {{yes|0.9.2<sup>1</sup>/0.9.3<sup>1</sup>}}
 
| {{yes|0.9.2<sup>1</sup>/0.9.3<sup>1</sup>}}
 
| {{yes|0.9.2<sup>1</sup>/0.9.3<sup>1</sup>}}
 
| {{yes|0.9.4<sup>1</sup>}}
 
| {{yes|0.9.5b3/0.9.6b3<sup>1</sup>}}
 
| {{yes|0.9.5b3/0.9.6b3<sup>1</sup>}}
 
| {{yes|0.9.6b1<sup>3</sup>/0.9.6rc18<sup>1</sup>}}
 
| {{yes|0.9.6b4<sup>1</sup>/0.9.6rc18<sup>1</sup>}}
 
|-
 
|[[Star]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[Greenpois0n (jailbreak)|greenpois0n]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes|RC4}}
 
| {{yes|RC5/RC6.1}}
 
|}
 
<sup>1</sup> Only applicable for devices with the [[iBoot-240.4|old bootrom]].
 
 
<sup>2</sup> Only applicable for devices with the [[iBoot-240.4|old bootrom]]. Requires the device to have signature checks disabled (pwned).
 
 
<sup>3</sup> [[Tethered jailbreak]] on devices with the [[iBoot-240.5.1|new bootrom]].
 
 
===[[N18ap|iPod touch 3G]]===
 
{| class="wikitable" style="font-size: smaller; text-align: center; table-layout: fixed; border-collapse: collapse;" border="1"
 
|-
 
!rowspan="2"| [[Jailbreak]] Tool
 
!colspan="11"| Works with [[firmware]]...
 
|-
 
|style="width:100px;"| 3.1.1
 
|style="width:100px;"| 3.1.2
 
|style="width:100px;"| 3.1.3
 
|style="width:100px;"| 4.0
 
|style="width:100px;"| 4.0.2
 
|style="width:100px;"| 4.1
 
|style="width:100px;"| 4.2.1
 
|style="width:100px;"| 4.3
 
|style="width:100px;"| 4.3.1
 
|style="width:100px;"| 4.3.2
 
|style="width:100px;"| 4.3.3
 
|-
 
| [[blackra1n]]
 
| {{yes|Yes<sup>1</sup>}}
 
| {{yes|Yes<sup>1</sup>}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[redsn0w]]
 
| {{yes|0.9.3<sup>1</sup>}}
 
| {{yes|0.9.3<sup>1</sup>}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes|0.9.6b2-0.9.6rc16}}
 
| {{yes|0.9.6b4<sup>1</sup>-0.9.6rc16}}
 
| {{yes|0.9.6rc9<sup>1</sup>-0.9.6rc16<sup>1</sup>}}
 
| {{yes|0.9.6rc9<sup>1</sup>-0.9.6rc16}}
 
| {{yes|0.9.6rc13<sup>1</sup>-0.9.6rc16}}
 
| {{yes|0.9.6rc16}}
 
|-
 
| [[Spirit]]
 
| {{no}}
 
| {{yes}}
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[Star]]
 
| {{no}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[sn0wbreeze]]
 
| {{no}}
 
| {{yes|2.0.2<sup>1</sup>}}
 
| {{yes|2.0.2<sup>1</sup>}}
 
| {{yes|2.0.2<sup>1</sup>}}
 
| {{yes|2.0.2<sup>1</sup>}}
 
| {{yes|2.1}}
 
| {{yes|2.2}}
 
| {{yes|2.3b4<sup>1</sup>}}
 
| {{yes|2.5}}
 
| {{yes|2.6-2.6.1}}
 
| {{yes|2.7-2.7.1}}
 
|-
 
| [[limera1n]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[Greenpois0n (jailbreak)|greenpois0n]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes|RC4}}
 
| {{yes|RC5-RC6.1}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[PwnageTool]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes|4.1-4.1.3}}
 
| {{yes|4.2}}
 
| {{no}}
 
| {{yes|4.3}}
 
| {{yes|4.3.2}}
 
| {{yes|4.3.3-4.3.3.1}}
 
|-
 
| [[Saffron]]
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{no}}
 
| {{yes}}
 
| {{yes}}
 
|}
 
<sup>1</sup> [[Tethered jailbreak]].
 
 
===[[N81ap |iPod touch 4G]]===
 
{| class="wikitable" style="font-size: smaller; text-align: center; table-layout: fixed; border-collapse: collapse;" border="1"
 
|-
 
!rowspan="2"| [[Jailbreak]] Tool
 
!colspan="6"| Works with [[firmware]]...
 
|-
 
|style="width:100px;"| 4.1 (both builds)
 
|style="width:100px;"| 4.2.1
 
|style="width:100px;"| 4.3
 
|style="width:100px;"| 4.3.1
 
|style="width:100px;"| 4.3.2
 
|style="width:100px;"| 4.3.3
 
|-
 
| [[limera1n]]
 
| {{yes}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[Greenpois0n (jailbreak)|greenpois0n]]
 
| {{yes|RC4}}
 
| {{yes|RC5/RC6.1}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
| {{no}}
 
|-
 
| [[PwnageTool]]
 
| {{yes|4.1/4.1.3}}
 
| {{yes|4.2}}
 
| {{no}}
 
| {{yes|4.3}}
 
| {{yes|4.3.2}}
 
| {{yes|4.3.3/4.3.3.1}}
 
|-
 
| [[sn0wbreeze]]
 
| {{yes|2.1}}
 
| {{yes|2.2}}
 
| {{yes|2.3b4<sup>1</sup>}}
 
| {{yes|2.5}}
 
| {{yes|2.6/2.6.1}}
 
| {{yes|2.7/2.7.1}}
 
|-
 
| [[redsn0w]]
 
| {{yes|0.9.6b2/0.9.6rc18}}
 
| {{yes|0.9.6b4<sup>1</sup>/0.9.6rc18
 
or 0.9.7b6<sup>1 2</sup>}}
 
| {{yes|0.9.6rc9<sup>1</sup>/0.9.6rc18}}
 
| {{yes|0.9.6rc9<sup>1</sup>/0.9.6rc18}}
 
| {{yes|0.9.6rc13<sup>1</sup>/0.9.6rc18}}
 
| {{yes|0.9.6rc15/0.9.6rc18}}
 
|-
 
| [[Saffron]]
 
| {{no}}
 
| {{no}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
| {{yes}}
 
|}
 
<sup>1</sup> [[Tethered jailbreak]].
 
 
<sup>2</sup> If [[SHSH]]s were saved for iOS 4.2b3 and if you have a developer access to its IPSW, [[Jailbreak Monte]] can be used.
 

Latest revision as of 10:55, 13 February 2023

The term "jailbreak" is the process by which full execute and write access is obtained on all the partitions of iOS, iPadOS, tvOS and watchOS. It used to be done by patching /private/etc/fstab to mount the System partition as 'read-write'. This is entirely different from an unlock. Jailbreaking is the first action that must be taken before things like unofficial activation (hacktivation), and unofficial unlocking can be applied.

Older jailbreaks also included modifying the AFC service (used by iTunes to access the filesystem) to give full filesystem access from root. This was later updated to create a new service (AFC2) that allows access to the full filesystem.

Modern jailbreaks now include patching the kernel to get around code signing and other restrictions. These are called Kernel Patches.

Note: The legality of jailbreaking your device varies with each country/region. Wikipedia has a summary of legality for some countries.

Types of Jailbreaks

When a device is booting, it loads Apple's own kernel initially, so a jailbroken device must be exploited and have the kernel patched each time it is booted up.

An untethered jailbreak uses exploits that are powerful enough to allow the user to turn their device off and back on at will, with the device starting up completely, and the kernel will be patched without the help of a computer – in other words, it will be jailbroken even after each reboot.

However, some jailbreaks are tethered. A tethered jailbreak is only able to temporarily jailbreak the device during a single boot. If the user turns the device off and then boots it back up without the help of a jailbreak tool, the device will no longer be running a patched kernel, and it may get stuck in a partially started state, such as Recovery Mode. In order for the device to start completely and with a patched kernel, it must be "re-jailbroken" with a computer (using the "boot tethered" feature of a tool) each time it is turned on. All changes to the files on the device (such as installed package files or edited system files) will persist between reboots, including changes that can only function if the device is jailbroken (such as installed package files).

In more recent years, two other solutions have been created - semi-tethered and semi-untethered.

A semi-tethered solution is one where the device is able to start up on its own, but it will no longer have a patched kernel, and therefore will not be able to run modified code. It will, however, still be usable for normal functions, just like stock iOS. To start with a patched kernel, the user must start the device with the help of the jailbreak tool.

A semi-untethered jailbreak gives the ability to start the device on it's own. On first boot, the device will not be running a patched kernel. However, rather than having to run a tool from a computer to apply the kernel patches, the user is able to re-jailbreak their device with the help of an app (usually sideloaded using Cydia Impactor) running on their device. In the case of the iOS 9.2-9.3.3 jailbreak, a Safari-based exploit was available, thereby meaning a website could be used to rejailbreak.

In more detail: Each iOS device has a bootchain that tries to make sure only trusted/signed code is loaded. A device with a tethered jailbreak is able to boot up with the help of a jailbreaking tool because the tool executes exploits via USB that bypass parts of that "chain of trust", bootstrapping to a pwned (no signature check) iBSS, iBEC, or iBoot to finish the boot process.

Jailbreak Tools

Untethered or semi-untethered jailbreaks are shown with a green 'yes'. Tethered or semi-tethered jailbreaks will be stated in a yellow box. Beta Firmwares are not listed.

Versions

See Also