Jailbreak (S5L8920+)

From The iPhone Wiki
Revision as of 03:32, 6 October 2009 by Dialexio (talk | contribs) (Revamp-ish.)
Jump to: navigation, search

Apple did not have the time to fix the the 0x24000 Segment Overflow in the S5L8920. However, in order to flash an exploited LLB and jailbreak the iPhone 3GS, one of the following needs to be done:

  • Find a new iBoot exploit every time a new firmware is out.
  • Find a way to bypass the ECID checks.
  • Find another bootrom exploit that allows unsigned code executing via USB (Pwnage 2.0-like)

This also applies to the iPod touch 3G and later devices, except a bootrom exploit is needed.

ECID

Apple added a new tag to the IMG3 File Format called ECID. The ECID is unique to each phone, and is being sigchecked. So Apple could block downgrades once newer firmware becomes available, unless you have a dump of your unique old firmware's IMG3 or signed certificate. Therefore, iBoot exploits won't be so useful for tethered jailbreaks, because such exploits will be closed in new FWs. [1].

The issue with this is that, even with 24kpwn still in bootrom, an iBoot exploit is still needed to actually flash the exploited LLB. If Apple uses this ECID stuff to block downgrades, then a new iBoot exploit will be needed whenever they fix the last, so that 24kpwn can be applied. This is because Apple could choose to not let you upload an older / exploitable iBEC / iBoot / iBSS to the device.

There are methods to help keep your downgrading ability, though.

  • If it was cached prior to 3.1's release, 3GS owners can save a file which contains the signature of the 3.0 iBSS containing their ECID, using [2].
  • Saurik's servers are actively caching the necessary files. Instructions to use the servers are included.
  • The SHSH associated with an ECID can be also saved by running Umbrella. An included application, TinyTSS, would allow the user to restore to whatever version is associated with that SHSH file permanently. This is based on the aforementioned service Saurik provides remotely from his server(s). The only difference is that Umbrella and TinyTSS are local applications.


Jailbreak tools

There are two possible methods to jailbreak which use the same iBoot exploit discovered independently by Geohot and the iPhone Dev Team. In order to jailbreak, you can use redsn0w by the iPhone Dev Team or purplera1n by Geohot. Both work on 3.0, but only redsn0w works on 3.0.1. Neither work for 3.1.