Jailbreak (S5L8920+)

From The iPhone Wiki
Revision as of 10:41, 5 October 2009 by Semaphore (talk | contribs)
Jump to: navigation, search

Apple did not have the time to fix the 24kpwn hole in the iPhone 3GS Bootrom. Thus, in order to flash 24kPwned LLB and jailbreak the 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 exec via USB, (Pwnage 2.0-like)

ECID

Apple added a new tag to the img3 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.[1] Therefore, iBoot exploits won't be so useful for tethered JBs, because such exploits will be closed in new FWs. [2].

The issue with this is that, even with 24kpwn still in bootrom, an iBoot exploit is still needed to actually flash the 24kpwned 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. 3GS owners can save a file which contains the signature of an iBSS for 3.0GM containing their ECID, using http://purplera1n.com/ should Apple try to block this in the future. One can also save the shsh associated with an ECID by running the Umbrella application found at http://thefirmwareumbrella.blogspot.com. This application allows a user to input their device ECID and obtain a file that can be used with an included application, TinyTSS, which would allow the user to restore to whatever version is associated with that shsh file permanently. In other words, with that shsh file and TinyTSS the user can restore to a particular version of the firmware through iTunes even if Apple decides to stop signing the shsh for that version. This is based on the 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. These currently work only on firmware version 3.0 (12/7/09).