Search This Blog

Monday, February 18, 2008

对iPhone破解现状的综述和未来的展望

众所周知,iPhone的破解世界在十一月时因为苹果公司固件1.1.2的发布,一时间阴云密布,山雨欲来;又因为两周前George Hotz(网名Geohot)发布的1.1.2/1.1.3软件破解和Zibri的ZiPhone,晴空万里。那么iPhone破解的现状如何,将来的发 展形势又怎么样呢?我发现很多weiphone论坛里有的iPhone朋友有误解,我在这篇原创文章中说说我自己仔细研究后的观点,希望对准备将来购买 iPhone的朋友有所帮助。鉴于这篇文章是对大局的综述和展望,我就不详细解释破解的细节,这方面的细节很多其他weiphone论坛里的帖子都讨论过 了。

iPhone的破解分为三部分:激活(activate),越狱(jailbreak),和软件破解(software unlock)。激活是为了可以开始使用iPhone,越狱是为了可以安装第三方软件,软件破解是为了可以使用AT&T之外的移动运行商,比如国 内的中国移动,或者美国的T-mobile。这三部分中,软件破解是最难的,但也是最必要的。

为什么软件破解很难呢?iPhone破解需要考虑的软件分三部分。

Bootloader(也就是常说的BL)是开机后第一个运行的程序,一旦破坏就无法恢复,是很基本又修改风险最高的程序。修改Bootloader的风 险虽高,回报也非常高:如果能够改写bootloader,那么不但可以软件破解,而且可以使得该破解适用于将来任何的固件和基带(baseband)的 升级,不需要再重新破解。因为iPhone固件升级的速度很快,这种稳定的破解是很有价值的。现在iPhone在固件1.1.2之前的 Bootloader是3.9版,之后是4.6版。3.9版有一些漏洞,4.6版补上了3.9版的漏洞,但又有一个新的漏洞,Geohot正是利用这个漏 洞最近实现了对Baseband的降级和软件破解,也是利用了同一个漏洞实现了对Bootloader的降级。

Baseband(也就是常说的基带或BB)是用来控制手机通讯的程序,控制电话通讯,WiFi无线通讯,还有蓝牙通讯。修改Baseband是没有风险 的,因为可以在任何时候方便的进入DFU模式用iTunes来恢复最初的版本。但是官方的4.6版bootloader不允许修改baseband,只允 许升级,使得去年十一月后的破解世界阴云密布。两周前Geohot破天荒的在十二小时之内找到了4.6版bootloader的漏洞,成功把 Baseband从4.03_13_G版本降级至4.02_13_G版本,实现软件破解,使得最近的ZiPhone成为可能。在此之前,连Geohot本 人都发表了4.6版Bootloader没有希望软件破解的悲观论调,可见其中的难度。

Firmware(也就是常说的固件)包括苹果官方运行于iPhone之上的操作系统。它的版本也就是平常讨论时常说的1.1.2或1.1.3。激活和越 狱是对固件的修改,因为固件很复杂,也很难没有漏洞,激活和越狱就相对简单一些。但是因为苹果公司的OS X用的是BSD UNIX操作系统,几乎完美,即使这样相对简单的工作也会越来越难。时下最常用的ZiPhone,是利用一个固件的漏洞(叫做ramdisk exploit)来完成激活和越狱。这个漏洞是ZiPhone的作者Zibri自己和另一个人bgm共同发现的,是现在最好也是最快的激活越狱方法,因为 这个漏洞存在于所有的固件版本里,可以用同样方法成功对所有的iPhone进行激活越狱。

因为Geohot的软件破解和Zibri的激活越狱都集成在ZiPhone中,随着新版的发布,ZiPhone的用户界面不断更新成熟,使用的问题也不断 解决,我预计将来ZiPhone将是Bootloader 3.9版和4.6版iPhone的最好破解集成平台和最方便最权威的工具。

但是,ZiPhone中的一个选项是降级Bootloader,它是借用了Geohot发布的叫做gbootloader的源码,利用同样一个 Bootloader 4.6的漏洞对Bootloader本身成功改写。但是,Booloader改写的风险是高的,因为一旦改写错误,iPhone就无法修复了。即使降级 Bootloader成功(至3.9版),因为gbootloader只能从BL 4.6开始改bootloader的版本,一但降到3.9之后,就再也不能软件升级至4.6或任何其他版本了。唯一的升级办法是硬件升级。

为什么不推荐降级bootloader至3.9版呢?Geohot 正在改写BL 4.6 并加入对软件破解的支持(BL 4.6_GEOMOD),一旦出来将成为软件破解的里程碑。现在最好的策略是在BL 4.6等待BL 4.6_GEOMOD的发布。因为Bootloader的特殊和重要地位(开机第一个运行的汇编程序),这样在Bootloader的软件破解可以在不改 Baseband的情况下彻底破解iPhone任何将来的Baseband 和Firmware的升级版本。因为苹果公司已经意识到4.6版的漏洞,我预计在不久的将来,所有新生产的iPhone将会预装新版的 Bootloader,使得BL 4.6 的Geohot 破解程序在新版Bootloader失效。因为官方iTunes在升级时是绝对不会升级Bootloader的版本的,将来BL 4.6将成为iPhone 所有Bootloader版本中最有价值的版本,因为它不但可以用来修改Baseband,还可以用来修改Bootloader本身,这是BL 3.9所不具备的优势。

降级至3.9 BL的唯一意义是在固件1.1.3下可以升级04.03.13_G Baseband。 用4.6BL你只能升到最多Firmware 1.1.3 和 04.02.13_G Baseband(Geohot的unlock)。因为只有04.03.13_G版的Baseband 支持Google Map Locate Me的新功能,降至3.9 BL 才可使用这些功能。如果你对Google Map Locate Me不感兴趣的话,维持4.6 BL的好处是显而易见的。

因为未来的iPhone一定会升级Bootloader,我认为现在正在观望等待的用户可以考虑在升级前购买一部Bootloader为4.6版的 iPhone。因为Bootloader的漏洞十分难找,即使象Geohot这样的破解大师也会最终放弃。苹果公司的赢面很大,到时候4.6 BL的iPhone的价格将会因为市场的供需关系不平衡而水涨船高,就好象BL 3.9的iPhone价格在Geohot的破解发布之前在ebay上涨到700美元的原因。因为BL 4.6的对baseband和bootloader可以同时改写的特殊地位,它的价值只会更高。

这就象当天气再度阴云密布的时候,人们都会期盼晴空万里的心情一样。

Ulysses

No comments: