zurück zum Artikel

Jailbreak beim iPhone mit redsn0w, PwnageTool oder limera1n

Dusan Zivadinovic

Das Entsperren von iPhone & Co. hat seinen Charme: Als Herr im eigenen Smartphone bestimmt man selbst, welche Software an Bord kommt.

Apple hat die iOS-Geräte mit diversen Sperren versehen, die es verhindern, dass man Anwendungen aus anderen Quellen als dem App Store bezieht. Weil Apple die Anwendungen vor der Freigabe prüft, sinkt die Wahrscheinlichkeit, sich Malware einzufangen, stark. Aber dieselbe Technik schottet auch Apple gegen mögliche Mitbewerber ab und teils rigorose Zulassungsrichtlinien verhindern die eine oder andere Anwendung im App-Store.

Mit Programmen wie limera1n, redsn0w oder PwnageTool lassen sich diese Sperren vom Mac aus entfernen. Diesen Vorgang nennt man Jailbreak. Die Tools nutzen dafür Sicherheitslücken in den iOS-Geräten aus. Apple wiederum schließt solche Lücken mit iOS-Updates und liefert sich so mit den Jailbreak-Entwicklern ein Katz- und Mausspiel.

Das U.S. Copyright Office hat im Juli 2010 befunden [1], dass in den USA ein Jailbreaking legal ist und sogar das Aufheben des SIM-Locks keinen Verstoß gegen den Digital Millenium Copyright Act darstellt (DMCA). Möglicherweise deshalb hat sich Apple bisher auch nicht gerührt, Jailbreak-Fälle zu verfolgen. Der iOS-Hersteller versagt lediglich einem geknackten Gerät die Garantieleistung. Allerdings lässt sich der Jailbreak-Eingriff in aller Regel auch rückstandslos entfernen.

Hat man ein iPhone oder ein iPad erst mal geknackt, tun sich eine Menge neuer Möglichkeiten auf. Die vier wichtigsten sind:

Unter diesem Stichwort lassen sich die meisten Punkte zusammenfassen: Der freie Cydia-Store bietet eine Vielzahl von Tools, die das iPhone im Werkszustand nicht nutzen kann. Als eine kleine Auswahl seien genannt: der AFP-Daemon für den Filesystemzugriff per Mac unter Einsatz des Apple Filing Protocol, eine erweiterte AirPlay-Funktion für mehr Gegenstellen, Facetime im Mobilfunkmodus, eine native SMS-Funktion für das iPad, ein VNC-Server, über den sich etwa ein iPad oder iPhone aus der Ferne warten lässt, das kostenlose und verbreitete OpenVPN und der OpenSSH-Server für den uneingeschränkten Zugriff auf die Kommandozeilentools das Dateisystem. Eine komplette Liste würde den Umfang dieses Beitrags sprengen.

Bisher nur im Cydia-Store erhältlich: Eine SMS-Software fürs iPad, die Kurznachrichten per Mobilfunk sendet und empfängt.

Von diesem Programmfundus geht durchaus ein Druck auf Apple aus: Manche Funktionen finden später auch Eingang im iOS. Ein Beispiel dafür ist die ursprünglich nur über Cydia erhältliche MMS-Funktion – die hat Apple auf Druck der Anwender seit iOS 3.0 nun ebenfalls an Bord.

Aus Nutzersicht verriegeln zurzeit zwei Sperren das iPhone: Es muss über iTunes aktiviert werden und es lässt sich nur mit Programmen aus dem App Store nachrüsten. Die dritte Sperre, der ausschließliche Betrieb mit SIM-Karten von Providern, die Apple bestimmt, ist für Neugeräte im Herbst 2010 in Deutschland weggefallen (SIM-Lock).

Frei organisierte Entwicklerteams veröffentlichen immer wieder Werkzeuge zur Umgehung dieser Sperren (zum Beispiel unter blog.iphone-dev.org [3]). Meist genügen dann wenige Mausklicks, um vollen Zugriff auf das Dateisystem zu erhalten und beliebige Apps installieren zu können – zum Beispiel Themes und Spiele, aber auch ernsthafte Anwendungen wie Tethering-Tools. Ob und wie der Jailbreak gelingt, hängt von den Versionen der Hardware und des Betriebssystems ab. Man unterscheidet generell zwei Jailbreak-Modi: Einen mit fest im Gerät verankerter Entsperrung und einen, bei dem das Gerät bei jedem Neustart erneut entsperrt werden muss. Dieser zweite Modus wird im Jargon "Tethered Boot" genannt (angebundener Gerätestart), weil dabei das iOS-Gerät via USB vom PC aus entsperrt wird. Für den bisher üblichen, fest verankerten Jailbreak etabliert sich inzwischen der Begriff "Untethered Boot".

In beiden Fällen wird die Signaturprüfung umgangen. Sie gewährleistet im Werksbetrieb, dass nur von Apple zugelassene Programme auf dem Gerät laufen. Im Anschluss lässt sich der freie Paket-Manager Cydia einrichten, über den sich beliebige Software aus dem Cydia-Store installieren lässt. Die Programme aus dem Cydia-Store starten nur, wenn die Signatur-Prüfung ausgehebelt ist. Andernfalls zucken die Icons nach dem Antippen nur kurz auf, aber der Aufbau des Bedienfelds scheitert kommentarlos.

Auf der Startseite des Paketmanagers Cydia sind auch Tipps für die Dateiübertragung zu finden.

Ein fest verankerter Jailbreak klappt derzeit für einen Großteil der Geräte bis einschließlich iOS 4.1. Beispielsweise kann man dafür das PwnageTool 4.1.2 [4] einsetzen. Das iPad lässt sich derzeit mit dem PwnageTool nur knacken, wenn darauf das ältere iOS 3.22 läuft.

Für das aktuelle iOS 4.2.1 lässt sich bei den aktuellen Geräten der Jailbreak bisher nicht verankern, sodass man sie bei jedem Neustart erneut entsperren muss. Das gilt für das iPhone 4, iPad, Apple TV sowie für ältere iPhone-3GS-Exemplare bis zur iBoot-Version 359.3. Diese iBoot-Version wird auch als "old Boot-Rom" bezeichnet. Jüngere iPhone-3GS-Exemplare erkennt man daran, dass in deren Seriennummer an der vierten und fünften Stelle eine größere Zahl als 45 steht (ca. ab November 2009).

Um die aktuellen Geräte einschließlich iPhone 3GS ab iBoot 359.3 zu knacken, setzen die Jailbreaker den limera1n-Exploit ein, der eine Sicherheitslücke in der USB-Kommunikation nutzt. Ein verbreitetes Werkzeug, das diesen Exploit für den Tethered Boot nutzt, ist redsn0w [5], das wir in der aktuellen Version 0.9.6.rc8 ausprobiert haben. Es wird kontinuierlich weiterentwickelt und soll bald auch einen Untethered Boot beherrschen.

Die Hacker-Gemeinde äußert sich zwar nur spärlich zum Stand der Dinge, aber es gibt Indizien dafür, dass eine dauerhafte Entsperrung auch unter iOS 4.2.1 möglich ist. Bis eine solche verfügbar ist, stellen wir hier die Verfahren für den Tethered Boot vor. Sollten die Jailbreaker Fortschritte erzielen und auch einen Untethered Boot bewerkstellingen, halten wir Sie auf dem Laufenden.

Wie man ein iOS-Gerät mittels redsn0w jailbreakt, beschreiben wir im weiteren anhand des aktuellen iPhone 4 mit iOS 4.2.1. Der Vorgang ist bei anderen Geräten gleich, also beispielsweise auch für das iPad mit iOS 4.2.1 anwendbar. Die Technik setzt voraus, dass iOS 4.2.1 bereits auf dem Gerät eingerichtet ist. Warten Sie damit aber, wenn Sie bei einem iPhone unter 4.2.1 den SIM-Lock entfernen wollen: Das geht derzeit nicht und dürfte allenfalls klappen, wenn die bei älteren iOS-Versionen enthaltene Modem-Firmware beim Update erhalten bleibt. Für diesen letzten Schritt gibt es derzeit noch kein empfehlenswertes Verfahren. Vom ersatzweisen Einspielen einer iPad-Modem-Firmware in ein iPhone, wie es das Dev-Team unter Einsatz des PwnageTool 4.1.3 beschreibt, raten wir ab. Es ist bisher offen, ob sich ein so manipuliertes Gerät auf kommende iOS-Versionen updaten lassen wird.

Wenn sichergestellt ist, dass Ihr iPhone 4 mit iOS 4.2.1 läuft, laden Sie das Firmwarearchiv für iOS 4.2.1 [6] und redsn0w 0.9.6rc8 [7]. Welche iOS-Version auf dem iPhone läuft, steht unter Einstellungen, Allgemein, Info, Version.

Schalten Sie das iPhone aus, schließen Sie es an den Mac an und beenden Sie iTunes. Starten Sie redsn0w, klicken Sie auf "Browse" und wählen Sie das soeben heruntergeladene iOS-Archiv aus. Wenn redsn0w meldet "IPSW successfully identified", klicken Sie auf Next.

Im daraufhin erscheinenden Dialog namens "Please select your options" lassen Sie die Voreinstellung stehen, also "Install Cydia". Klicken Sie auf Next.

Nehmen Sie das iPhone in die Hand und bereiten Sie sich darauf vor, nach Aufforderung eine bestimmte Tastenkombination zu drücken, um den DFU-Modus des iPhones zu einzuschalten. Erst in diesen lässt es sich entsperren (falls Sie den DFU-Modus nicht auf Anhieb aktivieren können, wiederholen Sie den Vorgang ab dem redsn0w-Start). Wenn Sie bereit sind, klicken Sie auf Next.

Drücken Sie nach Aufforderung zunächst die Einschalttaste und halten Sie sie gedrückt. Nach drei Sekunden drücken Sie zusätzlich die Home-Taste für zehn Sekunden. Lassen Sie dann nur die Einschalttaste los und halten Sie die Home-Taste weiterhin gedrückt. Wenn Sie die Prozedur eingehalten haben, gibt redsn0w nun einige Meldungen aus (Jailbreaking, Expoiting with Limera1n, Uploading first Stage, Waiting for Reboot...). Wenn es am Ende "Done!" meldet, ist der Vorgang abgeschlossen. Ein Klick auf "Finish" beendet das Programm.

Unterdessen gibt das iPhone beim Boot-Vorgang eine Reihe von Meldungen aus und blendet dann ein Ananas-Symbol ein – die Anwendungen werden neu sortiert ("moving Applications"). Schließlich erfolgt ein automatischer Neustart. Danach läuft das iPhone aber nur im Normalbetrieb, also noch nicht entsperrt. Der Paketmanager Cydia und auch Programme aus der Jailbreak-Welt können so nicht starten.

Schalten Sie daher das iPhone noch einmal aus und führen Sie einen Tethered Boot aus. Im Einzelnen gehen Sie so vor:

Starten Sie redsn0w, klicken Sie auf "Browse" und wählen Sie das iOS-Archiv 4.2.1 aus. Wenn redsn0w meldet "IPSW successfully identified", klicken Sie auf Next.

Im daraufhin erscheinenden Dialog namens "Please select your options" setzen Sie das Häkchen bei "Just boot tethered right now". Klicken Sie erneut auf Next.

Redsn0w lässt sich auch von der Kommandozeile starten. Der Jailbreak-Vorgang läuft dann etwas schneller ab.

Versetzen Sie das iPhone wieder mit der oben beschriebenen Tastenkombination in den DFU-Modus, damit redsn0w es entsperren kann. Der Boot-Vorgang im Jailbreak-Mode ist anhand eines kleinen Ananas-Symbols zu erkennen.

Nun lässt sich der Paketmanager Cydia starten, über den man kommerziell erhältliche und kostenlose Programme aus dem Cydia-Store installieren kann. Cydia finden Sie üblicherweise auf der letzten Bildschirmseite, möglicherweise zunächst nur als weißes Icon; das gibt sich spätestens, wenn die Bedienfläche Springboard neu gestartet wird, wie es für diverse Cydia-Anwendungen ohnehin erforderlich ist.

Das Tool redsn0w lässt sich auch über die Kommandozeile mit Kommandozeilenparametern starten – das erspart einige Mausklicks und verkürzt die Prozedur für den Tethered Boot. Dazu kann man das dem redsn0w-Archiv beigefügte Shell-Skript verwenden. Wenn Sie das Programm und das iOS-Archiv auf dem Desktop abgelegt haben, müssen Sie das Skript nicht ändern.

Für den Start genügt dann ein Doppelklick auf das Icon des Shell-Skripts. Für den Neustart im Jailbreak-Mode muss man aber immer noch mindestens einmal die Maus klicken und natürlich das iPhone in den DFU-Modus versetzen.

Mini-Fileserver: Auf ein iPhone kann man von einem Mac aus auch per Maus zugreifen.

Die frei erhältlichen Programme installiert man über den Paketmanager Cydia. Starten Sie das Programm und legen Sie die Vorauswahl für das Programmangebot fest (User, Hacker, Developer). Empfehlenswert ist die Einstellung "Hacker", weil dabei zusätzliche Kommandozeilentools zur Auswahl stehen. Diese Einstellung lässt sich unter Manage, Settings jederzeit ändern.

Auf der Startseite bietet Cydia Links zu diversen Programmen und Funktionen. Eine der empfehlenswerten heißt "make my Life easier". Damit hält man sich die Option frei, bei Bedarf ein älteres iOS auf dem Gerät einzurichten (Downgrade). Den Rückschritt auf ältere iOS-Versionen hält Apple nämlich kurz. Will man beispielsweise iOS 4.01 auf einem iPhone einrichten, meldet iTunes, dass das iPhone dafür nicht zugelassen sei und verweigert den Dienst. Klickt man auf More Information [8], liefert Apple eine Web-Seite, auf der jedoch nicht ein hilfreicher Tipp, geschweige denn die wirkliche Erklärung für das Scheitern steht.

Apple reißt nämlich nach und nach hinter sich die Brücken ab, über die das iPhone zum aktuellen Entwicklungsstand gekommen ist und zwar so: Vor der Einrichtung von Systemarchiven müssen diese seit einer Weile signiert werden. Die Signaturen sind für jedes iPhone individuell und bisher liefert sie einzig ein Apple-Server – und wenn Apple befindet, dass eine iOS-Version "zu alt" ist, verweigert die Firma in der Folge das Signieren der älteren Versionen. Das heißt auch: Software, die nur auf älteren iOS-Versionen läuft, kann man trotz rechtmäßigen Erwerbs nicht mehr nutzen. Mit der Cydia-Funktion "make my Life easier" kann man die Signaturen (im Jargon SHSH-Blobs genannt) anfordern und für den späteren Bedarf auf dem Cydia-Server hinterlegen.

Im Anschluss empfiehlt es sich auf "Änderungen" beziehungsweise "Changes" zu tippen, um die essentiellen Cydia-Updates einzuspielen; eine Auswahl bietet der Paketmanager nach Befragung des Cydia-Servers selbstständig an.

Nach dem nächsten Neustart (einfacherweise über das Shell-Skript) kann man die Liste der Cydia-Paketauswahl über Sections, Edit bearbeiten – also zum Beispiel das Auflisten von Themes oder auch der zahlreichen Wallpaper abschalten.

Um kommerzielle Apps aus dem Cydia-Store zu kaufen, braucht man zunächst ein Facebook- oder Google-Konto.

So kann man die vielen Einträge des Cydia-Stores leicht auf die Gruppen einschränken, die von Interesse sind. Ein erster Rundgang empfiehlt sich über den Bereich "Kategorien". Wenn Sie schon den Namen einer Software kennen, die Sie interessiert, finden Sie sie über die Suchfunktion – also beispielsweise das Programm "Firewall IP", mit dem sich ausgehende IP-Verbindungen steuern lassen. Firewall IP kostet 3 US-Dollar und setzt zur Cydia-Authentifizierung ein Konto bei Facebook oder Google voraus; abgerechnet wird wahlweise über Amazon Payments oder PayPal.

Zum Schluss sicherheitshalber noch der Hinweis: Wenn Sie die Entsperrung nicht nur kurz ausprobieren möchten, sondern auf Dauer behalten wollen, sollten Sie Ihr iOS-Gerät nur dann per iTunes auf das nächste iOS updaten, wenn die Tools der Jailbreak-Gemeinde dieses Verfahren ausdrücklich vorsehen. Wie im Einzelnen zu verfahren ist, kann man in groben Zügen den zugehörigen Web-Seiten entnehmen – oder Mac & i [9].

Bei einem iOS-Update gehen alle Cydia-Programme verloren. Sie werden nicht über iTunes archiviert und können daher auch nicht auf diesem Wege nach einem Update via iTunes eingespielt werden. Über das Programm AptBackup lässt sich der Aufwand der Neuinstallations von Cydia-Programmen aber drastisch minimieren. Mehr dazu finden Sie im Artikel "Rückkehr mit Hindernissen – Wie man ein entsperrtes iPad wiederherstellt" (c't 1/2011, Seite 154 [10]).

iOS-Gerät iOS-Version Jailbreak-Mode
iPhone 2G 3.1.3 untethered
iPhone 3G 4.2.1 unterthered
iPhone 3G 4.2.1 untethered
iPhone 3GS 4.1 unterthered
iPhone 3GS 4.2.1 untethered, mit old boot-rom
iPhone 4 4.1 untethered
iPhone 4 4.2.1 tethered
iPad 3.22 untethered
iPad 4.2.1 tethered

(dz [11])


URL dieses Artikels:
https://www.heise.de/-1176447

Links in diesem Artikel:
[1] https://www.heise.de/news/Copyright-Office-legt-weitere-Ausnahmen-vom-DRM-Umgehungsverbot-fest-1045744.html
[2] https://www.heise.de/news/IPv6-Smartphones-gefaehrden-Privatsphaere-1168416.html
[3] http://blog.iphone-dev.org/
[4] http://blog.iphone-dev.org/post/1359246784/20102010-event
[5] https://sites.google.com/a/iphone-dev.com/files/home/redsn0w_mac_0.9.6rc8.zip?attredirects=0&d=1
[6] http://appldnld.apple.com/iPhone4/061-9858.20101122.Er456/iPhone3%2C1_4.2.1_8C148_Restore.ipsw
[7] https://sites.google.com/a/iphone-dev.com/files/home/redsn0w_mac_0.9.6rc8.zip?attredirects=0&d=1
[8] http://support.apple.com/kb/TS1275
[9] http://www.mac-and-i.de
[10] http://www.heise.de/artikel-archiv/ct/2011/1/154_kiosk
[11] mailto:dz@ct.de