25c3: Hacking the iPhone
rj, den 27. Dezember 2008Jailbreak, Unlock – wer mit seinem iPhone mehr machen will als Apple oder der Netzbetreiber erlaubt, ist recht schnell auf die Arbeit des Dev-teams angewiesen. Einige Vertreter der iPhone-Hacker stellen heute ihre Arbeit auf dem CCC-Congress vor. Und noch einiges, was andere Leute tun – Apple-Mitarbeiter, beispielsweise.
Ehrgeizig sind sie: innerhalb von zwei Tagen sollen die Patches für Quickpwn und Pwnage auf etwaige Updates Apples folgen, die bisherige iPhone-Befreiungen rückgängig machen. Das Devteam ist ein internationales Team, das aus diesem Grund in der letzten Zeit ziemlich viel Traffic auf den Servern verzeichnen konnte.
Der wird interessanterweise auch aus Cupertino generiert: in den Logs beobachtet das Devteam regelmäßig um die 180 User aus Apples IP-Range, die ihr Pwnage bzw. QuickPWN regelmäßig updaten – womit sie sich in guter Gesellschaft befinden, bekanntlich ist auch Steve Wozniak bekennender Jailbreaker.
Um ein iPhone zu unlocken, muss es möglich sein, beliebigen Code auf dem iPhone auszuführen. Auch die Unlocker müssen zuerst lauffähig gemacht werden, weshalb der Hackprozess bei den Applikationen ansetzt. Dafür muss der Kernel modifiziert werden.
Die mehrfachen Sicherungen Apples können natürlich sukzessive umgangen werden – nur ist der Prozess inzwischen alles andere als trivial. Immerhin kann an jedem Punkt der Installation bzw. des eigentlichen iPhone-Hackings der Prozess abgebrochen und neu gestartet werden. Es ist beim bisherigen Stand der Dinge offenbar unmöglich, ein iPhone per Jailbreak komplett zu „bricken“, es irreversibel in einen unbenutzbaren Zustand zu bringen.
Das Devteam greift ganz am Anfang der Schutzkette an – beim Bootrom. Dort wird der Signaturcheck mit einem Buffer Overflow umgangen, woraufhin unsignierter Code zum Boot benutzt werden kann. Zum Schluss wird iTunes verwendet, um die Firmware aufzuspielen – nur eben eine modifizierte Variante.
Apple hat den Angriff recht einfach gemacht: die Sicherheitsbeschränkungen des iPhone waren in frühen Firmwareversionen viel einfacher zu umgehen. So konnte sukzessive gelernt werden bzw. waren Informationen verfügbar, die in späteren Versionen verschlüsselt waren.
Um beliebige Simkarten zu verwenden, folgt nun der Unlock, bei dem das iPhone im Gegensatz zum Jailbreak auch gebrickt werden kann.
Die Firmware wird als signiertes, RSA-signiertes Paket über den Bootloader eingespielt. Enthalten sind Daten zur iPhone-IMEI, Chip-ID, Sim-Unlock-Code, diese sind wiederum RSA-signiert. Man müsste RSA hacken, um die Sicherung zu umgehen, denn ein nicht erfolgreicher Signaturcheck verhindert selbstredend das Update des Basebands.
Alte Firmware-Versionen führten keinen Signaturcheck beim Bootloaders durch das Bootrom duch, die neueren tun das. Die Prozedur ist jedoch bis heute auf verschiedene Weisen angreifbar. (Persönliche Anmerkung: diese Angriffsmethoden habe ich nicht verstanden, es beruhigt mich wiederum, dass jemand, der sie versteht, gelegentlich an den Hürden einer Präsentationssoftware scheitert.)
Bislang ist ein Umgehen der Sicherungsmaßnahmen möglich, wie der kurz vor Weihnachten demonstrierte Hack zeigte. In der anschließenden Fragerunde bekräftigte musclenerd nochmals, dass die Deaktivierung von Pwnage beim letzten Mac OS X-Upgrade seiner Ansicht nach ein Bug war. Befragt nach den simlockfreien iPhones aus beispielsweise Italien gab er an, dass die ungelockten Phones nicht zur Basis für einen Hack dienten, da in der Firmware ja IMEI etc. gespeichert sei, die an die Hardware gebunden ist. Man kann daher nicht einfach ein image der Software eines simlockfreien iPhones auf ein gelocktes Gerät einspielen.
Es kam, wie zum Schluss bemerkt, niemals zur Kommunikation mit Apple. Das Devteam betrachtet das bislang als Zeichen, dass man ihnen nicht allzu böse gesonnen ist – Bugs werden bei Apple zwar gefixt, die Arbeit des Devteams aufmerksam verfolgt, aber es wurden beispielsweise keine (rechtlichen) Drohungen ausgesprochen. Ihre Software wird daher nach wie vor frei angeboten. Und die lakonische Antwort auf die Frage, ob nach all der Hackerei nun nicht langsam die Motivation ausgehe: „Oh no, not really.“
Aufzeichnungen aller Sessions und Vorträge werden live vom CCC-Congress gestreamt, Direkt-Downloads sollen schnell folgen.