The iPhone Wiki is no longer updated. Visit this article on The Apple Wiki for current information. |
Difference between revisions of "Jailbreak"
m |
|||
Line 1: | Line 1: | ||
+ | {{float toc}} |
||
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. |
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. |
||
Line 10: | Line 11: | ||
=== 1.1.1 === |
=== 1.1.1 === |
||
* [[Symlinks]] (an upgrade jailbreak) |
* [[Symlinks]] (an upgrade jailbreak) |
||
− | * [[LibTiff |
+ | * [[LibTiff|libtiff exploit]] (Adapted from the PSP scene, used by [[JailbreakMe]]) |
=== 1.1.2 === |
=== 1.1.2 === |
||
* [[Mknod]] (an upgrade jailbreak) |
* [[Mknod]] (an upgrade jailbreak) |
||
Line 18: | Line 19: | ||
== Exploits which are used in order to jailbreak 2.x == |
== Exploits which are used in order to jailbreak 2.x == |
||
− | === 2.0 / 2.0.1 / 2.0.2 === |
+ | === 2.0 / 2.0.1 / 2.0.2 / 2.1 === |
* [[Pwnage]] + [[Pwnage 2.0]] |
* [[Pwnage]] + [[Pwnage 2.0]] |
||
− | |||
− | === 2.1 === |
||
− | * [[Pwnage]] + [[Pwnage 2.0]] |
||
− | |||
=== 2.1.1 === |
=== 2.1.1 === |
||
* [[ARM7 Go]] ([[tethered jailbreak]]) |
* [[ARM7 Go]] ([[tethered jailbreak]]) |
||
− | |||
=== 2.2 === |
=== 2.2 === |
||
* [[Pwnage]] + [[Pwnage 2.0]] ([[m68ap|iPhone]], [[n45ap|iPod touch]], and [[n82ap|iPhone 3G]]) |
* [[Pwnage]] + [[Pwnage 2.0]] ([[m68ap|iPhone]], [[n45ap|iPod touch]], and [[n82ap|iPhone 3G]]) |
||
− | |||
=== 2.2.1 === |
=== 2.2.1 === |
||
* [[Pwnage]] + [[Pwnage 2.0]] ([[m68ap|iPhone]], [[n45ap|iPod touch]], and [[n82ap|iPhone 3G]]) |
* [[Pwnage]] + [[Pwnage 2.0]] ([[m68ap|iPhone]], [[n45ap|iPod touch]], and [[n82ap|iPhone 3G]]) |
||
Line 40: | Line 35: | ||
* [[Pwnage]] + [[iBoot Environment Variable Overflow]] ([[m68ap|iPhone]], [[n45ap|iPod touch]], and [[n82ap|iPhone 3G]]) |
* [[Pwnage]] + [[iBoot Environment Variable Overflow]] ([[m68ap|iPhone]], [[n45ap|iPod touch]], and [[n82ap|iPhone 3G]]) |
||
* [[0x24000 Segment Overflow]] + [[iBoot Environment Variable Overflow]] ([[n72ap|iPod touch 2G]] and [[n88ap|iPhone 3GS]]) |
* [[0x24000 Segment Overflow]] + [[iBoot Environment Variable Overflow]] ([[n72ap|iPod touch 2G]] and [[n88ap|iPhone 3GS]]) |
||
− | |||
=== 3.1 / 3.1.1 === |
=== 3.1 / 3.1.1 === |
||
* [[Pwnage]] + [[Pwnage 2.0]] (together for [[untethered jailbreak]] on [[m68ap|iPhone]], [[n45ap|iPod touch]], and [[n82ap|iPhone 3G]]) |
* [[Pwnage]] + [[Pwnage 2.0]] (together for [[untethered jailbreak]] on [[m68ap|iPhone]], [[n45ap|iPod touch]], and [[n82ap|iPhone 3G]]) |
||
* [[usb_control_msg(0x21, 2) Exploit]] ([[tethered jailbreak]] on [[n72ap|iPod touch 2G]] [[iBoot-240.5.1|new bootrom]], [[n88ap|iPhone 3GS]] [[iBoot-359.3.2|new bootrom]], and [[n18ap|iPod touch 3G]]) |
* [[usb_control_msg(0x21, 2) Exploit]] ([[tethered jailbreak]] on [[n72ap|iPod touch 2G]] [[iBoot-240.5.1|new bootrom]], [[n88ap|iPhone 3GS]] [[iBoot-359.3.2|new bootrom]], and [[n18ap|iPod touch 3G]]) |
||
* [[0x24000 Segment Overflow]] + [[usb_control_msg(0x21, 2) Exploit]] ([[n72ap|iPod touch 2G]] [[iBoot-240.4|old bootrom]] and [[n88ap|iPhone 3GS]] [[iBoot-359.3|old bootrom]]) |
* [[0x24000 Segment Overflow]] + [[usb_control_msg(0x21, 2) Exploit]] ([[n72ap|iPod touch 2G]] [[iBoot-240.4|old bootrom]] and [[n88ap|iPhone 3GS]] [[iBoot-359.3|old bootrom]]) |
||
− | |||
=== 3.1.2 === |
=== 3.1.2 === |
||
* [[Pwnage]] + [[Pwnage 2.0]] (together for [[untethered jailbreak]] on [[m68ap|iPhone]], [[n45ap|iPod touch]], and [[n82ap|iPhone 3G]]) |
* [[Pwnage]] + [[Pwnage 2.0]] (together for [[untethered jailbreak]] on [[m68ap|iPhone]], [[n45ap|iPod touch]], and [[n82ap|iPhone 3G]]) |
||
Line 52: | Line 45: | ||
* [[MobileBackup Copy Exploit]] + [[Incomplete Codesign Exploit]] + [[BPF_STX Kernel Write Exploit]] (all devices, used in [[Spirit]]) |
* [[MobileBackup Copy Exploit]] + [[Incomplete Codesign Exploit]] + [[BPF_STX Kernel Write Exploit]] (all devices, used in [[Spirit]]) |
||
* [[Malformed CFF Vulnerability]] + [[Incomplete Codesign Exploit]] + [[IOSurface Kernel Exploit]] (all devices, used in [[Star]]) |
* [[Malformed CFF Vulnerability]] + [[Incomplete Codesign Exploit]] + [[IOSurface Kernel Exploit]] (all devices, used in [[Star]]) |
||
− | |||
=== 3.1.3 === |
=== 3.1.3 === |
||
* [[Pwnage]] + [[Pwnage 2.0]] (together for [[untethered jailbreak]] on [[m68ap|iPhone]], [[n45ap|iPod touch]], and [[n82ap|iPhone 3G]]) |
* [[Pwnage]] + [[Pwnage 2.0]] (together for [[untethered jailbreak]] on [[m68ap|iPhone]], [[n45ap|iPod touch]], and [[n82ap|iPhone 3G]]) |
||
Line 58: | Line 50: | ||
* [[MobileBackup Copy Exploit]] + [[Incomplete Codesign Exploit]] + [[BPF_STX Kernel Write Exploit]] (all devices, used in [[Spirit]]) |
* [[MobileBackup Copy Exploit]] + [[Incomplete Codesign Exploit]] + [[BPF_STX Kernel Write Exploit]] (all devices, used in [[Spirit]]) |
||
* [[Malformed CFF Vulnerability]] + [[Incomplete Codesign Exploit]] + [[IOSurface Kernel Exploit]] (all devices, used in [[Star]]) |
* [[Malformed CFF Vulnerability]] + [[Incomplete Codesign Exploit]] + [[IOSurface Kernel Exploit]] (all devices, used in [[Star]]) |
||
− | |||
=== 3.2 === |
=== 3.2 === |
||
* [[MobileBackup Copy Exploit]] + [[Incomplete Codesign Exploit]] + [[BPF_STX Kernel Write Exploit]] (all devices, used in [[Spirit]]) |
* [[MobileBackup Copy Exploit]] + [[Incomplete Codesign Exploit]] + [[BPF_STX Kernel Write Exploit]] (all devices, used in [[Spirit]]) |
||
* [[Malformed CFF Vulnerability]] + [[Incomplete Codesign Exploit]] + [[IOSurface Kernel Exploit]] ([[k48ap|iPad]], used in [[Star]]) |
* [[Malformed CFF Vulnerability]] + [[Incomplete Codesign Exploit]] + [[IOSurface Kernel Exploit]] ([[k48ap|iPad]], used in [[Star]]) |
||
− | |||
=== 3.2.1 === |
=== 3.2.1 === |
||
* [[Malformed CFF Vulnerability]] + [[Incomplete Codesign Exploit]] + [[IOSurface Kernel Exploit]] ([[k48ap|iPad]], used in [[Star]]) |
* [[Malformed CFF Vulnerability]] + [[Incomplete Codesign Exploit]] + [[IOSurface Kernel Exploit]] ([[k48ap|iPad]], used in [[Star]]) |
||
− | |||
=== 3.2.2 === |
=== 3.2.2 === |
||
* [[limera1n]]'s bootrom exploit + [[Packet Filter Kernel Exploit]] ([[k48ap|iPad]]) |
* [[limera1n]]'s bootrom exploit + [[Packet Filter Kernel Exploit]] ([[k48ap|iPad]]) |
||
Line 74: | Line 63: | ||
* [[0x24000 Segment Overflow]] ([[n72ap|iPod touch 2G]] and [[n88ap|iPhone 3GS]] devices with older bootroms) |
* [[0x24000 Segment Overflow]] ([[n72ap|iPod touch 2G]] and [[n88ap|iPhone 3GS]] devices with older bootroms) |
||
* [[Malformed CFF Vulnerability]] + [[Incomplete Codesign Exploit]] + [[IOSurface Kernel Exploit]] (all devices, used in [[Star]]) |
* [[Malformed CFF Vulnerability]] + [[Incomplete Codesign Exploit]] + [[IOSurface Kernel Exploit]] (all devices, used in [[Star]]) |
||
− | |||
=== 4.0.2 === |
=== 4.0.2 === |
||
* [[Pwnage]] + [[Pwnage 2.0]] ([[n82ap|iPhone 3G]]) |
* [[Pwnage]] + [[Pwnage 2.0]] ([[n82ap|iPhone 3G]]) |
||
Line 80: | Line 68: | ||
* [[0x24000 Segment Overflow]] ([[n88ap|iPhone 3GS]]) |
* [[0x24000 Segment Overflow]] ([[n88ap|iPhone 3GS]]) |
||
* [[limera1n]]'s bootrom exploit + [[Packet Filter Kernel Exploit]] ([[n88ap|iPhone 3GS]] [[iBoot-359.3.2|new bootrom]], [[n18ap|iPod touch 3G]], [[n90ap|iPhone 4 GSM model]], and [[n81ap|iPod touch 4G]]) |
* [[limera1n]]'s bootrom exploit + [[Packet Filter Kernel Exploit]] ([[n88ap|iPhone 3GS]] [[iBoot-359.3.2|new bootrom]], [[n18ap|iPod touch 3G]], [[n90ap|iPhone 4 GSM model]], and [[n81ap|iPod touch 4G]]) |
||
− | |||
=== 4.1 === |
=== 4.1 === |
||
* [[Pwnage]] + [[Pwnage 2.0]] (together to jailbreak the [[n82ap|iPhone 3G]]) |
* [[Pwnage]] + [[Pwnage 2.0]] (together to jailbreak the [[n82ap|iPhone 3G]]) |
||
Line 87: | Line 74: | ||
* [[limera1n]]'s bootrom exploit + [[Packet Filter Kernel Exploit]] (together for [[untethered jailbreak]] on [[n88ap|iPhone 3GS]] [[iBoot-359.3.2|new bootrom]], [[n18ap|iPod touch 3G]], [[n90ap|iPhone 4 GSM model]], [[n81ap|iPod touch 4G]], and [[k66ap|Apple TV 2G]])) |
* [[limera1n]]'s bootrom exploit + [[Packet Filter Kernel Exploit]] (together for [[untethered jailbreak]] on [[n88ap|iPhone 3GS]] [[iBoot-359.3.2|new bootrom]], [[n18ap|iPod touch 3G]], [[n90ap|iPhone 4 GSM model]], [[n81ap|iPod touch 4G]], and [[k66ap|Apple TV 2G]])) |
||
* [[usb_control_msg(0xA1, 1) Exploit]] + [[Packet Filter Kernel Exploit]] (together for [[untethered jailbreak]] on [[n72ap|iPod touch 2G]]) |
* [[usb_control_msg(0xA1, 1) Exploit]] + [[Packet Filter Kernel Exploit]] (together for [[untethered jailbreak]] on [[n72ap|iPod touch 2G]]) |
||
− | |||
=== 4.2.1 === |
=== 4.2.1 === |
||
* [[Pwnage]] + [[Pwnage 2.0]] (together to jailbreak the [[n82ap|iPhone 3G]]) |
* [[Pwnage]] + [[Pwnage 2.0]] (together to jailbreak the [[n82ap|iPhone 3G]]) |
||
Line 94: | Line 80: | ||
* [[limera1n]]'s bootrom exploit + [[HFS Legacy Volume Name Stack Buffer Overflow]] (together for [[untethered jailbreak]] on [[n88ap|iPhone 3GS]] [[iBoot-359.3.2|new bootrom]], [[n18ap|iPod touch 3G]], [[k48ap|iPad]], [[n90ap|iPhone 4 GSM model]], [[n81ap|iPod touch 4G]], and [[k66ap|Apple TV 2G]]) |
* [[limera1n]]'s bootrom exploit + [[HFS Legacy Volume Name Stack Buffer Overflow]] (together for [[untethered jailbreak]] on [[n88ap|iPhone 3GS]] [[iBoot-359.3.2|new bootrom]], [[n18ap|iPod touch 3G]], [[k48ap|iPad]], [[n90ap|iPhone 4 GSM model]], [[n81ap|iPod touch 4G]], and [[k66ap|Apple TV 2G]]) |
||
* [[usb_control_msg(0xA1, 1) Exploit]] + [[HFS Legacy Volume Name Stack Buffer Overflow]] (together for [[untethered jailbreak]] on [[n72ap|iPod touch 2G]]) |
* [[usb_control_msg(0xA1, 1) Exploit]] + [[HFS Legacy Volume Name Stack Buffer Overflow]] (together for [[untethered jailbreak]] on [[n72ap|iPod touch 2G]]) |
||
− | |||
=== 4.2.6 / 4.2.7 / 4.2.8 === |
=== 4.2.6 / 4.2.7 / 4.2.8 === |
||
* [[limera1n]]'s bootrom exploit + [[HFS Legacy Volume Name Stack Buffer Overflow]] (together for [[untethered jailbreak]] on [[n92ap|iPhone 4 CDMA model]]) |
* [[limera1n]]'s bootrom exploit + [[HFS Legacy Volume Name Stack Buffer Overflow]] (together for [[untethered jailbreak]] on [[n92ap|iPhone 4 CDMA model]]) |
||
* [[T1 Font Integer Overflow]] (used for [[Saffron]]) |
* [[T1 Font Integer Overflow]] (used for [[Saffron]]) |
||
− | |||
=== 4.3 === |
=== 4.3 === |
||
* [[limera1n]]'s bootrom exploit + [[0x24000 Segment Overflow]] (together for [[untethered jailbreak]] on [[n88ap|iPhone 3GS]] [[iBoot-359.3|old bootrom]]) |
* [[limera1n]]'s bootrom exploit + [[0x24000 Segment Overflow]] (together for [[untethered jailbreak]] on [[n88ap|iPhone 3GS]] [[iBoot-359.3|old bootrom]]) |
||
* [[limera1n]]'s bootrom exploit ([[tethered jailbreak]] on [[n88ap|iPhone 3GS]] [[iBoot-359.3.2|new bootrom]], [[n18ap|iPod touch 3G]], [[k48ap|iPad]], [[n90ap|iPhone 4 GSM model]], [[n81ap|iPod touch 4G]], and [[k66ap|Apple TV 2G]]) |
* [[limera1n]]'s bootrom exploit ([[tethered jailbreak]] on [[n88ap|iPhone 3GS]] [[iBoot-359.3.2|new bootrom]], [[n18ap|iPod touch 3G]], [[k48ap|iPad]], [[n90ap|iPhone 4 GSM model]], [[n81ap|iPod touch 4G]], and [[k66ap|Apple TV 2G]]) |
||
* [[T1 Font Integer Overflow]] (used for [[Saffron]]) |
* [[T1 Font Integer Overflow]] (used for [[Saffron]]) |
||
− | |||
=== 4.3.1 / 4.3.2 / 4.3.3 === |
=== 4.3.1 / 4.3.2 / 4.3.3 === |
||
* [[limera1n]]'s bootrom exploit + [[0x24000 Segment Overflow]] (together for [[untethered jailbreak]] on [[n88ap|iPhone 3GS]] [[iBoot-359.3|old bootrom]]) |
* [[limera1n]]'s bootrom exploit + [[0x24000 Segment Overflow]] (together for [[untethered jailbreak]] on [[n88ap|iPhone 3GS]] [[iBoot-359.3|old bootrom]]) |
||
Line 110: | Line 93: | ||
=== 4.3.4 / 4.3.5 === |
=== 4.3.4 / 4.3.5 === |
||
* [[limera1n]]'s bootrom exploit + [[0x24000 Segment Overflow]] (together for [[untethered jailbreak]] on [[n88ap|iPhone 3GS]] with [[iBoot-359.3|old bootrom]]) |
* [[limera1n]]'s bootrom exploit + [[0x24000 Segment Overflow]] (together for [[untethered jailbreak]] on [[n88ap|iPhone 3GS]] with [[iBoot-359.3|old bootrom]]) |
||
− | *[[limera1n]]'s bootrom exploit (Tethered jailbreak) on [[n88ap|iPhone 3GS]] with [[iBoot-359.3.2|new bootrom]], [[n18ap|iPod touch 3G]], [[k48ap|iPad]], [[n90ap|iPhone 4 GSM model]], and [[n81ap|iPod touch 4G]]) |
+ | * [[limera1n]]'s bootrom exploit (Tethered jailbreak) on [[n88ap|iPhone 3GS]] with [[iBoot-359.3.2|new bootrom]], [[n18ap|iPod touch 3G]], [[k48ap|iPad]], [[n90ap|iPhone 4 GSM model]], and [[n81ap|iPod touch 4G]]) |
== Exploits which are used in order to jailbreak 5.x == |
== Exploits which are used in order to jailbreak 5.x == |
||
=== 5.0 / 5.0.1 === |
=== 5.0 / 5.0.1 === |
||
* [[limera1n]]'s bootrom exploit + [[0x24000 Segment Overflow]] (together for [[untethered jailbreak]] on [[n88ap|iPhone 3GS]] with [[iBoot-359.3|old bootrom]]) |
* [[limera1n]]'s bootrom exploit + [[0x24000 Segment Overflow]] (together for [[untethered jailbreak]] on [[n88ap|iPhone 3GS]] with [[iBoot-359.3|old bootrom]]) |
||
− | *[[limera1n]]'s bootrom exploit (Tethered jailbreak) on [[n88ap|iPhone 3GS]] with [[iBoot-359.3.2|new bootrom]], [[n18ap|iPod touch 3G]], [[k48ap|iPad]], [[n90ap|iPhone 4 GSM model]], and [[n81ap|iPod touch 4G]]) |
+ | * [[limera1n]]'s bootrom exploit (Tethered jailbreak) on [[n88ap|iPhone 3GS]] with [[iBoot-359.3.2|new bootrom]], [[n18ap|iPod touch 3G]], [[k48ap|iPad]], [[n90ap|iPhone 4 GSM model]], and [[n81ap|iPod touch 4G]]) |
+ | * What about teh untether? |
||
== Jailbreak Tools == |
== Jailbreak Tools == |
Revision as of 02:03, 29 December 2011
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 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 (AFC2) that allows access to the full filesystem.
Modern jailbreaks also include patching the kernel to get around code signing and other restrictions.
Exploits which were used in order to jailbreak 1.x
1.0.2
- Restore Mode (iBoot had a command named cp, which had access to the whole filesystem)
1.1.1
- Symlinks (an upgrade jailbreak)
- 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
Exploits which are used in order to jailbreak 2.x
2.0 / 2.0.1 / 2.0.2 / 2.1
2.1.1
2.2
- Pwnage + Pwnage 2.0 (iPhone, iPod touch, and iPhone 3G)
2.2.1
- Pwnage + Pwnage 2.0 (iPhone, iPod touch, and iPhone 3G)
- 0x24000 Segment Overflow + ARM7 Go (from iOS 2.1.1) (iPod touch 2G)
Exploits which are used in order to jailbreak 3.x
3.0 / 3.0.1
- Pwnage + Pwnage 2.0 (iPhone, iPod touch, and iPhone 3G)
- ARM7 Go (from iOS 2.1.1) + 0x24000 Segment Overflow ( iPod touch 2G)
- Pwnage + iBoot Environment Variable Overflow (iPhone, iPod touch, and iPhone 3G)
- 0x24000 Segment Overflow + iBoot Environment Variable Overflow (iPod touch 2G and iPhone 3GS)
3.1 / 3.1.1
- Pwnage + Pwnage 2.0 (together for untethered jailbreak on iPhone, iPod touch, and iPhone 3G)
- usb_control_msg(0x21, 2) Exploit (tethered jailbreak on iPod touch 2G new bootrom, iPhone 3GS new bootrom, and iPod touch 3G)
- 0x24000 Segment Overflow + usb_control_msg(0x21, 2) Exploit (iPod touch 2G old bootrom and iPhone 3GS old bootrom)
3.1.2
- Pwnage + Pwnage 2.0 (together for untethered jailbreak on iPhone, iPod touch, and iPhone 3G)
- usb_control_msg(0x21, 2) Exploit (tethered jailbreak on iPod touch 2G new bootrom, iPhone 3GS new bootrom, and iPod touch 3G)
- 0x24000 Segment Overflow + usb_control_msg(0x21, 2) Exploit (iPod touch 2G old bootrom and iPhone 3GS old bootrom)
- MobileBackup Copy Exploit + Incomplete Codesign Exploit + BPF_STX Kernel Write Exploit (all devices, used in Spirit)
- Malformed CFF Vulnerability + Incomplete Codesign Exploit + IOSurface Kernel Exploit (all devices, used in Star)
3.1.3
- Pwnage + Pwnage 2.0 (together for untethered jailbreak on iPhone, iPod touch, and iPhone 3G)
- 0x24000 Segment Overflow (for iPod touch 2G and iPhone 3GS devices with older bootroms)
- MobileBackup Copy Exploit + Incomplete Codesign Exploit + BPF_STX Kernel Write Exploit (all devices, used in Spirit)
- Malformed CFF Vulnerability + Incomplete Codesign Exploit + IOSurface Kernel Exploit (all devices, used in Star)
3.2
- MobileBackup Copy Exploit + Incomplete Codesign Exploit + BPF_STX Kernel Write Exploit (all devices, used in Spirit)
- Malformed CFF Vulnerability + Incomplete Codesign Exploit + IOSurface Kernel Exploit (iPad, used in Star)
3.2.1
- Malformed CFF Vulnerability + Incomplete Codesign Exploit + IOSurface Kernel Exploit (iPad, used in Star)
3.2.2
- limera1n's bootrom exploit + Packet Filter Kernel Exploit (iPad)
Exploits which are used in order to jailbreak 4.x
4.0 / 4.0.1
- Pwnage + Pwnage 2.0 (iPhone 3G)
- 0x24000 Segment Overflow (iPod touch 2G and iPhone 3GS devices with older bootroms)
- Malformed CFF Vulnerability + Incomplete Codesign Exploit + IOSurface Kernel Exploit (all devices, used in Star)
4.0.2
- Pwnage + Pwnage 2.0 (iPhone 3G)
- ARM7 Go (from iOS 2.1.1) + 0x24000 Segment Overflow (iPod touch 2G)
- 0x24000 Segment Overflow (iPhone 3GS)
- limera1n's bootrom exploit + Packet Filter Kernel Exploit (iPhone 3GS new bootrom, iPod touch 3G, iPhone 4 GSM model, and iPod touch 4G)
4.1
- Pwnage + Pwnage 2.0 (together to jailbreak the iPhone 3G)
- ARM7 Go (from iOS 2.1.1) + 0x24000 Segment Overflow (together for untethered jailbreak on iPod touch 2G old bootrom)
- limera1n's bootrom exploit + 0x24000 Segment Overflow (together for untethered jailbreak on iPhone 3GS old bootrom)
- limera1n's bootrom exploit + Packet Filter Kernel Exploit (together for untethered jailbreak on iPhone 3GS new bootrom, iPod touch 3G, iPhone 4 GSM model, iPod touch 4G, and Apple TV 2G))
- usb_control_msg(0xA1, 1) Exploit + Packet Filter Kernel Exploit (together for untethered jailbreak on iPod touch 2G)
4.2.1
- Pwnage + Pwnage 2.0 (together to jailbreak the iPhone 3G)
- ARM7 Go (from iOS 2.1.1) + 0x24000 Segment Overflow (together for untethered jailbreak on iPod touch 2G old bootrom)
- limera1n's bootrom exploit + 0x24000 Segment Overflow (together for untethered jailbreak on iPhone 3GS old bootrom)
- limera1n's bootrom exploit + HFS Legacy Volume Name Stack Buffer Overflow (together for untethered jailbreak on iPhone 3GS new bootrom, iPod touch 3G, iPad, iPhone 4 GSM model, iPod touch 4G, and Apple TV 2G)
- usb_control_msg(0xA1, 1) Exploit + HFS Legacy Volume Name Stack Buffer Overflow (together for untethered jailbreak on iPod touch 2G)
4.2.6 / 4.2.7 / 4.2.8
- limera1n's bootrom exploit + HFS Legacy Volume Name Stack Buffer Overflow (together for untethered jailbreak on iPhone 4 CDMA model)
- T1 Font Integer Overflow (used for Saffron)
4.3
- limera1n's bootrom exploit + 0x24000 Segment Overflow (together for untethered jailbreak on iPhone 3GS old bootrom)
- limera1n's bootrom exploit (tethered jailbreak on iPhone 3GS new bootrom, iPod touch 3G, iPad, iPhone 4 GSM model, iPod touch 4G, and Apple TV 2G)
- T1 Font Integer Overflow (used for Saffron)
4.3.1 / 4.3.2 / 4.3.3
- limera1n's bootrom exploit + 0x24000 Segment Overflow (together for untethered jailbreak on iPhone 3GS old bootrom)
- limera1n's bootrom exploit + ndrv_setspec() Integer Overflow (together for untethered jailbreak on iPhone 3GS new bootrom, iPod touch 3G, iPad, iPhone 4 GSM model, and iPod touch 4G)
- T1 Font Integer Overflow (used for Saffron)
4.3.4 / 4.3.5
- limera1n's bootrom exploit + 0x24000 Segment Overflow (together for untethered jailbreak on iPhone 3GS with old bootrom)
- limera1n's bootrom exploit (Tethered jailbreak) on iPhone 3GS with new bootrom, iPod touch 3G, iPad, iPhone 4 GSM model, and iPod touch 4G)
Exploits which are used in order to jailbreak 5.x
5.0 / 5.0.1
- limera1n's bootrom exploit + 0x24000 Segment Overflow (together for untethered jailbreak on iPhone 3GS with old bootrom)
- limera1n's bootrom exploit (Tethered jailbreak) on iPhone 3GS with new bootrom, iPod touch 3G, iPad, iPhone 4 GSM model, and iPod touch 4G)
- What about teh untether?