美国科技博客网站TechCrunch近日撰文,披露了一个因苹果iPhone兴盛而壮大起来的神秘群体——越狱社区。文章指出,经过数年发展,越狱社区的运行模式和氛围与以前相比发生了很大变化,越狱者之间更加注重技术分享,同时分工更明确。他们就好像是魔术师,大家明明知道他们的“戏法”只是哗众取宠,但仍然趋之若鹜。
成功越狱iPhone 5
从技术上讲,iPhone 5已经被成功越狱,只是相关越狱工具尚未公开,大家没有掌握而已。这是因为,黑客们之所以能实现此次功能性越狱,他们发现的一个bug功不可没,在找到另一个替代bug之前,当然不想将其公诸于众,以免苹果了解到这种情况,及时发布补丁修复相关漏洞。此外,iOS 6.1也即将发布,黑客们肯定不希望在此之前公开这个秘密。
共有六位黑客参与实施了此次越狱,戴维·王(David Wang)就是其中之一。他近日在社交新闻网站Reddit上宣布了成功越狱iPhone 5的消息:“事实就是,我已在iPhone 5上面实现了对iOS 6.0.2的越狱。”
他写道,“这个漏洞对我们来说简直就是天赐良机,让我们明白正在发生什么情况。我们必须能够找到我们试图修改的代码,然后实施破解。否则,我们基本上就是两眼一抹黑,什么也不知道。”
最糟糕的情况则是,为了让所有人掌握越狱技巧,黑客们不得不“烧掉”他们发现的那个漏洞——他们现在还不希望这样做。此外,在戴维·王宣布越狱 iPhone 5的消息时,又有四个bug被发现了。这也给越狱者发现更多的bug带来了希望。到目前为止,这个领域的进展一切顺利。
那么,用户有一天会拥有iPhone 5越狱工具吗?对此,戴维·王给出了肯定的回答,并且希望在今年能够实现这个目标——最起码在下一代iPhone发布以前。寻找漏洞不同于开发应用或建设网站,不见得每天都会有新的进展。相反,这个过程更像是“淘金”,虽然付出了巨大努力,最终仍有可能一无所获。
奇特的社区氛围
首先,让我们来了解一下越狱。这种活动最初之所以会流行起来,是因为它让用户可以添加苹果不允许安装的应用和功能。用户可以将他们的手机变成 WiFi热点,安装定制主题,令其设置更容易访问和控制,让苹果的默认限制派不上用场,等等。部分用户甚至可以解锁iPhone,从而运行于未经许可的运营商网络上。
过去,越狱者之间的竞争更加激烈,他们组成了不同的“团队”,如“iPhone开发者团队”(iPhone Dev Team)和Chronic团队。还有一些开发者甚至单枪匹马行动。他们之间相互竞争,希望让自己的“杰作”高出对方一筹,给越狱用户带来惊喜。
现如今,越狱者社区的氛围似乎与以前大不相同。只要时机合适,曾经喜欢单枪匹马的开发者也会携手合作,共享技术。越狱者相互之间的竞争越来越少,每个人都各司其职,互不干涉。所有人都会在GitHub(全球最大的社交编程及代码托管网站)上面公开他们的成果,在那个平台上,代码随后会被变成面向用户的越狱工具。
据戴维·王介绍,若是以前,同一批开发者会专注于攻克某种设备,现在则不然,一切取决于哪位开发者有时间和精力,“随着时间的推移,团队开始逐步瓦解。团队构架的确不灵光了,因为它宣扬对立、竞争,让你不能与自己欣赏的人合作。现在的构架则更好——我们可以相互合作并分享技术,同时又分工明确。我们不会与整个团队分享技术,而是与我们认为有需要的个人。”
或许,我们应该称之为一种更加友好、更加绅士的黑客氛围。这一次,对iPhone 5的越狱就稍晚于预期,但这不仅是因为iOS 6操作系统的安全性得到增强,而且还因为越狱者的时间有限,比如他们白天都有自己的工作。戴维·王有着一份与越狱毫不相关的全职工作,而另一位越狱 iPhone 5的黑客“@Pod2g”则一直忙着开发自己的iOS应用。
逐一攻破系统漏洞
另外,在寻找漏洞和发布越狱工具的过程中,还有其他一些事情也会令越狱团队的工作迟迟得不到进展。例如,找到不同设备间的代码区别,测试越狱流程等。一旦开始进行越狱,还有一项工作颇具挑战性,那就是找到技术水平足够高,同时嘴又很严的测试者。戴维·王说:“成功越狱有时候需要几周,有时候则几天就搞定了。”
以前,越狱并不需要这么辛苦。越狱者可以在bootrom(iPhone上的第一个重要代码)中找到一个漏洞,然后逐一攻破。只要iPhone不被更换,无论它们运行的iOS版本高低,用户都可以全面控制。但如今,越狱者甚至都无法进入bootrom。
戴维·王说:“这些bootrom越来越小,我们甚至已经没办法从中提取dump文件。即便我们破译了代码,完全控制了iPhone,仍然无法看到bootrom。如果不能获取dump文件,我们就不能轻松找到代码并发现错误。”
原因就是,在iPhone 5完全启动时,bootrom就会被自动隐藏起来。这还要从iPhone 4的完美越狱工具“Limera1n”说起,这个工具利用了iPhone 4上一个未被发现的bootrom漏洞,实现了完美越狱,但随后苹果便修复了这个bootrom漏洞。
苹果修复bootrom漏洞仅仅是为了防止越狱吗?戴维·王回答说,“应该是这样,因为如果不是为了越狱,谁会去关注bootrom呢?用户真的不会因读取bootrom而使手机感染了病毒。”
由于没有可用的bootrom漏洞,黑客现在需要找到更多的漏洞,才能向用户提供完整的越狱解决方案。黑客们需要代码植入型bug(将代码植入操作系统中),以及能提升代码优先级别的bug,才能对手机操作系统的设置做出修改。这两个bug有时甚至是一样的。
接着,他们还需要一个内核植入型bug,从而可以不受限制地访问操作系统,命令内核停止检查代码签名。最近,由于iOS 6的安全性得到增强,黑客还需要找到另外一个漏洞,以绕过内核ASLR(地址空间布局随机化)的限制。ASLR会将内核分散到内存中。
戴维·王说,苹果不让越狱者看到内核在内存中的位置,正是为了防止他们修改代码。因此,他们还需要找到一个bug,能够突破内核ASLR设置的障碍,而这个bug可能与提升代码优先级别或内核植入型bug相同。
最后,黑客们还需要一个完美越狱的bug,让iPhone无论在何时何地启动时,都能实施越狱。越狱的确需要找到很多bug。
越狱简史
为了全面认识iPhone越狱这些年来为何变得越来越难,我们就需要对越狱的历史有所了解。只有这样,我们才能明白现在的情况。
在苹果发布iPhone 3G之后,一款名为“Pwnage Tool”的越狱工具出现了。它是基于一个bootrom漏洞开发,让黑客可以更改iPhone上的操作系统。这基本上就像是在修改电脑上的软件。你的电脑本来运行的操作系统是Windows,但你却给它安装了Linux。就越狱 iPhone 而言,这是非常强大的访问策略。
后来,在iPhone 3GS上市时,黑客此前越狱中用到的关键bug仍然没有得到修复。过了很长时间以后,苹果才决定暂时停止生产iPhone 3GS,以彻底解决这个问题。恢复生产后,恢复了生产,新一批iPhone 3GS植入了新的bootrom,之前那个被越狱者利用的关键bug不见了。
“Cydia之父”杰伊·弗里曼(Jay Freeman)说:“苹果的动机其实很好理解,iPhone存在一个bug,他们希望将它修复。至于苹果为何认为那个bug,比其他未被修复的bug重要,那我就不清楚了。但我们再没找到过比那个更好的bug了。”所谓Cydia,其实就是越狱“应用商店”,让用户可以在iPhone越狱以后安装到上面。
越狱,就像一场与苹果的“猫捉老鼠”游戏
道高一尺魔高一丈
但是,苹果的努力并未阻止黑客继续寻找其他破解iPhone代码的方法。在苹果修复了那个bootrom漏洞之后,越狱者很快就发现了其他的 bootrom漏洞,但这些漏洞只能让他们对系统做出暂时的修改。我们再次用上面提到的例子,这就好像是你必须要依靠光盘或U盘来启动Windows,而不能将Windows安装到电脑。
在iPhone上面,这意味着越狱者只能暂时用一个新的内核启动手机,而这个内核又不保护iPhone的系统,同时还需要激活硬盘,更改iPhone的系统来做不同的事情。也就是说,运行所有可以更改iPhone行为的越狱应用。
但在这种情况下,内核仍然受到保护,因为bootrom未被修改或破坏。这就意味着,在iPhone下一次启动时,此前的越狱就无效了。这种方式被称为“非完美越狱”,即每次重启iPhone,用户都必须再重新越狱一次。等到iPhone 4发布时,越狱者只好从手机内置的程序中寻找漏洞,以便可以找到内核中的bug,只要找到了这个bug,他们就可以用来修改内核,进而更改手机上的其他软件。
这方面最典型的案例就是JailbreakMe网站,这个网站由一个名为“@comex”的越狱者创立。JailbreakMe利用了网页浏览器的一个bug,使浏览器陷入瘫痪并进行控制,以便向内核植入任意代码。弗里曼说,“Comex令人太不可思议了。他发现了那么多漏洞。”
Comex后来被苹果招至麾下,但听说他在苹果的工作与越狱毫无关系。戴维·王表示,等待越狱的用户不必对苹果从越狱社区挖角过虑。
接下来,就是让此次越狱变得“完美”——即无论何时重启iPhone,都能直接进入越狱状态。这需要越狱者在系统中植入某种代码,当 iPhone重启时修改系统,解除它的安全防护。没有了bootrom漏洞,比如在iPhone 3G或3GS上面发现的漏洞,那么这便成了实现完美越狱的最好办法。
越狱大神Comex后来被苹果招至麾下,但听说他在苹果的工作与越狱毫无关系。
“猫捉老鼠”游戏
苹果每次发布新一代iPhone时,越狱者寻找漏洞的努力都要重新开始。iPhone 4的越狱就是一个典型的例子。
2010年10月10日,一个值得纪念的日子。那一天,越狱社区的几位成员正准备发布一款名为SHAtter的工具,一个名为“Geohot” 的黑客却半路杀出,抢先发布了针对iPhone 4和iPad的越狱工具“Limera1n”。随后,@Pod2G、@Comex和@i0n1c等黑客也加入了进来,试图实现对iPhone 4的完美越狱。
Limera1n之所以很重要,是因为跟JailbreakMe网站式越狱不同,前者利用的bootrom漏洞在整个设备的使用寿命期间都是有效的,而后者只是利用了浏览器的漏洞,苹果可以很容易发布补丁进行修复。
弗里曼解释说:“想要修复bootrom的漏洞,你必须扔掉旧手机,换一部新的。因此,苹果总是拿Limera1n没办法。Limera1n会存在于每一部出厂时就带有那个漏洞的设备中。”当然也有例外,那就是暂时停止产品生产,以修复漏洞,就像苹果以前对付iPhone 3GS越狱那样。
在iPhone 4S发布时,苹果与越狱社区之间的“猫捉老鼠”游戏仍在继续上演。由于Limera1n利用的bootrom漏洞在iPhone 4S中被修复,黑客们只好重新寻找基于“userland”的漏洞——软件上存在的漏洞,例如JailbreakMe利用的浏览器漏洞。
这种漏洞在被黑客发现并用来开发越狱工具时,它们可能会在苹果下一次固件升级中得到修复,如iOS 4、iOS 5、iOS 6和一些较小的固件升级。黑客们将这个过程称为是“烧掉”漏洞,因为苹果总是能够推出补丁修复,所以它们用过一次就失去了效用。
“Corona”是一个userland漏洞的名称,用来越狱搭载iOS 5.0和5.0.1的iPhone 4S。苹果发布iOS 5.1后,这个Corona漏洞也不见了。但越狱社区并没有因此一蹶不振,而是又开发出了另一款越狱工具“absinthe”,成功越狱了iOS 5.1和5.1.1。在苹果发布iOS 6时,再一次修复了这个漏洞。
戴维·王说:“iOS 6在安全方面有了显著提升。iOS 6.1的安全性甚至优于前一个版本。初始注入(initial injection)是我们在越狱iPhone 5时遇到的最大难题之一。”
乘隙而入
现在,iPhone 4则不会受到所有这些iOS系统更新的影响,因为Limera1n利用的是一个尚未被修复的bootrom漏洞,不管设备运行哪个版本的iOS,都不影响越狱。当然,人们或许会提出这样的疑问:既然bootrom漏洞的作用如此之大,黑客为何不继续寻找来越狱iPhone 5呢?
这个问题的答案并不是如此简单。弗里曼说:“寻找bootrom漏洞更加困难,仅仅是因为相关软件太少了,我们将这种手段称为是‘攻击地面’”。他将这种漏洞比作是一支身披盔甲的军队,可能某个位置存在缺陷,让敌人可以乘隙而入,而规模更小的队伍却更有可能做到全面防御。bootrom所做的唯一一件事情就是验证其他软件,它通过USB与系统进行沟通,本身代码并不多。
大多数bootrom漏洞都存在于USB设置代码中,而此类漏洞大多已经修复。不过,在iPhone 5中,苹果采用了Lightning接口,因此黑客又有了机会,可以在新的bootrom中发现bug。当然,前提是他们能找到查看bootrom的方法,但他们目前对此还无能无力。
迄今为止,越狱者的工作主要围绕寻找非bootrom漏洞展开,而这一任务近来越来越艰巨。iPhone 4和iPod 4现在均未实现完美越狱,同时也没有越狱iPhone 4S或iPhone 5所采用的iOS 6的有效方法。
越狱者像魔术师
通常情况下,我们很难走进越狱社区这个略显神秘的群体。当越狱者和其他黑客在Twitter上炫耀他们的成果时,偶尔只是公开所谓的userland漏洞。或许,他们是在展示运行于其设备上的Cydia——弗里曼为整个越狱社区打造的“应用商店”。
弗里曼澄清说,这些成果往往只是部分越狱——即便安装了Cydia,我们渴望拥有的应用未必能使用。有时,越狱者使用的是苹果自己的开发者工具,让该公司付费开发者可以在iPhone上安装他们自己的代码。换句话说,看到一款设备运行Cydia,并不代表针对用户的越狱准备就绪。
有时,这些成果只是暗示了越狱工作的最新进展。弗里曼说:“有点像是跟魔术师打交道。你可能知道他们的戏法究竟是怎么一回事,但仍然会趋之若鹜。这与黑客社区存在很大的相似之处。有人已经掌握了哗众取宠的门道。”他补充说,魔术师蛊惑的是我们的大脑,而越狱者入侵的则是我们的手机。
弗里曼还举例说,两名黑客“@chpwn”和“@phoenixdev”最近展示的越狱方法是完全合法的,但他们没有获得内核补丁,因此即便越狱,也是“不完整”的,不能实现越狱后的大多数好处,“这些充其量只是‘半越狱’。”
随着苹果的改进,越狱用户已越来越少
谁又值得信赖?
对于我们来说,重要的是,要知道哪些越狱者值得信赖。尽管仍然存在像Comex之类的越狱者突然半路杀出的可能性,但那些多年来一直坚持越狱苹果设备的开发者,最终脱颖而出的几率更大,也更值得我们信赖。
但在iPhone 5被成功越狱以后,这也带来了一个更大的疑问,即这种越狱手段是否会像过去几年那样,再次吸引大量用户的追捧。弗里曼称,根据过去两个月的数据,目前共有 2千多万台设备正在运行Cydia。当然,这一数字不仅仅包括iPhone,还计入了iPad和iPod touch的数据。值得注意的是,仍然有大量用户还在使用iPhone 4和4S。
弗里曼表示,在两款越狱工具发布间隙,Cydia安装量往往都会开始下滑,但当下一个热门越狱工具发布时,Cydia安装量总会创造一个新的记录。他说:“每次我们发布越狱工具时,用户关注度会重新飙升,在此期间他们会进行升级、越狱、浏览套件并购买产品。他们都是极其活跃的用户;由于用户数量激增,最后会导致它开始下滑,滑坡速度甚至超过用户有机增长速度。所以,越狱工具的整体使用情况总是呈现下滑趋势。”
黄金时代一去不返
在这些沉寂时期内,有人会对是否仍有人希望越狱提出质疑。毕竟,苹果已经解决了越狱者寻求破解的一些难题:例如,iPhone如今拥有下拉式通知窗口,让用户可以在锁定屏幕中添加壁纸。AT&T版iPhone中的Facetime功能如今也支持3G和4G网络。
T-Mobile也开始经销iPhone,所以用户以后就不需要越狱,直接通过解锁工具就能让iPhone与T-Mobile网络兼容。用户甚至还可以购买解锁版iPhone。相比越狱并安装WiFi热点应用,直接付费购买运营商提供的WiFi热点功能其实更便捷。
盗版应用社区Hacklous近日已经关闭,理由是用户对它不再感兴趣,按照其创始人的说法就是,“我们的社区已经变得死气沉沉。”
弗里曼认为,缺乏iPhone 5越狱工具,并不是近期用户对越狱失去兴趣的主要原因。他说:“以iOS 6为例,目前我们没有看到太理想的越狱工具,特别针对iPhone 4或iPod 4搭载的iOS 6开发出来。至于苹果最新设备上的iOS 6,我们同样没有针对性越狱工具,包括去年发布的iPhone 4S。”
但是,戴维·王指出,“我们全都认为,越狱受欢迎程度之所以下降,是因为苹果做出的改进,但其实越狱仍然相当流行。”实际上,他在Reddit上面发表的那篇帖子非常受欢迎,这充分说明外界对越狱社区的动向仍然相当关注。
与用户存在误解
戴维·王坦言,现在,越狱者与用户之间的沟通可能没有以前那么频繁,“我或许没有做出应有的努力去与用户交流,因为在一定程度上讲,总觉得未来没有什么希望。总有人不看你写了什么东西,或者会主观地曲解你说的意思。你很难不让别人曲解你的意思,所以有时你干脆什么也不说了。”
但戴维·王并没有放弃努力。例如,前不久他和另一位越狱者“@Pod2G”在Twitter上表示,他们在寻找新的漏洞方面取得了一些积极进展,并希望能让公众深入了解越狱社区。
无论如何,iPhone 5的越狱或许能给越狱社区注入新的活力。这个社区的规模日益庞大,甚至还制定了自己的规章制度。此外,它还有助于解答一个问题,即数百万越狱用户是否仍然对这种事情感兴趣,会继续对iPhone进行越狱,或者说他们是否安于现状,即便近几个月来没有实现完美越狱,他们仍然不在乎。
当然,戴维·王与其他黑客一样,似乎已经离不开越狱了。他说:“我的iPhone总是处于越狱状态。”或许,不久的将来,你的iPhone也可以再一次越狱。