Voor het eerst sinds de introductie van de iPhone en de iPod touch heeft Apple een zogenaamde bootrom-update uitgevoerd voor een bestaand product, namelijk voor de iPhone 3GS. Tot nu toe werd een vernieuwde bootrom altijd gekoppeld aan een nieuw product. In de nieuwe bootrom (iBoot-359.3.2) voor de iPhone 3GS is het lek gedicht waar de 24kpwn-exploit gebruik van maakte. De toekomst van een untethered-jailbreak is daarom voor nieuwe iPhones 3GS onzeker.
De 24kpwn-exploit is tot stand gekomen door een hybride team van het iPhone Dev Team en het Chronic Dev Team. Het gat dat ze vonden in de bootrom had ervoor kunnen zorgen dat de iPhone 3GS altijd gejailbreakt had kunnen worden, net zoals de iPhone 3G daarvoor… ware het niet dat Nitrokey eerder dit jaar de exploit lekte voor financieel gewin. Het was in eerste instantie te laat voor Apple om het gat voor de iPhone 3GS te dichten, maar door het vroege lek hebben ze er met nieuwe beveiligingsmechanismes voor kunnen zorgen dat er voor elke nieuwe firmware een nieuwe exploit in iBoot gevonden moet worden.
Momenteel is het iPhone Dev Team waarschijnlijk druk bezig om uit te zoeken of de 24kpwn-exploit op een andere plaats nog in de nieuwe bootrom te gebruiken is, maar gezien de tijd die Apple heeft gehad om het lek te dichten valt dit te betwijfelen. Mocht het werk van het iPhone Dev Team een geheel nieuw lek opleveren, dan zullen ze deze waarschijnlijk proberen te bewaren totdat er een nieuwe iPhone of iPod touch uit wordt gebracht.
Voorlopig lijkt het er in ieder geval op dat een untethered-jailbreak voor nieuwe iPhones 3GS er niet in zit. Een tethered-jailbreak houdt in dat er telkens nadat de iPhone of iPod opnieuw is opgestart, een jailbreak uitgevoerd zou moeten worden. Met name voor de iPhone is dit problematisch, omdat je geen gebruik meer zou kunnen maken van je telefoon als je batterij leeg is gegaan, totdat je deze weer met de computer zou verbinden om opnieuw te jailbreaken. Wil je weten welke bootrom-versie op jouw nieuwe iPhone 3GS staat, dan kun je dat met behulp van dit artikel van Apple op een Mac achterhalen.
Een lichtpuntje voor jailbreakers is er ook; de jailbreak-scene krijgt nu al een kijkje in de keuken van de bootrom die ook op de volgende iPhone en iPod touch zou kunnen staan. Zo stond bijvoorbeeld op de iPhone 3GS (die in juli 2009 gelanceerd werd) tot nu toe een bootrom die dateerde van augustus 2008.
Verklarende woordenlijst:
- Bootrom: de bootrom is de eerste code die er na het aanzetten van de iPhone of iPod touch wordt gedraaid en is vergelijkbaar met de BIOS van een computer. De bootrom is read-only en de eerste schakel in de chain of trust van de iPhone en iPod touch. In de DFU-modus wordt eerst de bootrom geïnitialiseerd en kan je vervolgens met een (gesigneerde) firmware herstellen. Als de iPhone in de normale modus wordt gestart, controleert de bootrom de LLB en start deze vervolgens.
- LLB: de Low Level Bootloader is de volgende stap in het opstartproces van een iPhone en iPod touch. De LLB heeft een aan de bootrom vergelijkbare functie en overschijft de bootrom in het RAM geheugen, waardoor het reverse engineeren van de bootrom wordt bemoeilijkt. Vervolgens controleert en start de LLB de volgende stap in het opstartproces: iBoot.
- iBoot: is de laatste en meest gecompliceerde stap in het opstartproces. iBoot biedt de mogelijkheid voor recovery mode, laadt de kernel van iPhone OS en ook de device tree. iBoot controleert daarnaast de communicatie via de recovery modus en naar de kernel.
Taalfout gezien of andere suggestie hoe we dit artikel kunnen verbeteren? Laat het ons weten!
Reacties: 129 reacties