一、越狱的起因
据说Cydia之父Jay Freeman,曾经也是给iPhone写程序的,后来他写了一个视频拍摄软件而苹果没允许上架,他一气之下就开了Cydia软件商店,专门收留不被苹果通过的软件。
iOS越狱(英语:iOS Jailbreaking)是获取iOS设备的Root权限的技术手段。iOS设备的Root权限一般是不开放的。由于获得了Root权限,在越狱之前无法查看的iOS的文件系统也可查看。通常,越狱的设备在越狱后会安装一款名为Cydia的软件。Cydia的安装也被视为已越狱设备的象征。
二、越狱类型
虽然多年来人们能对他们的各种iOS版本的iPhone进行越狱,这些越狱都有不同的特性。主要是因为越狱的质量在很大部分依赖于发现的安全漏洞,这些漏洞被用来解除设备的强制约束。一旦一个越狱的漏洞被知晓,苹果公司自然会尽快在下一版本的iOS中进行修补。所以几乎每个新版本的iOS都需要一套新的漏洞来进行越狱。 有时漏洞是驻留在硬件层面的,苹果公司不能进行简单的软件升级来修补它,这需要一套新的硬件,需要发布下一版本的iPhone或iPad,将花费苹果公司更长的时间来修补。
越狱的保持(Jailbreak Persistence)
依赖越狱使用的漏洞,越狱的效果可能长期的,也可能在设备关机再开启后消失。为了描述两种不同的越狱,越狱社区把这两种方式叫做 完美越狱(tethered jailbreak)和非完美越狱(untethered jailbreak)。
1、非完美越狱(Tethered Jailbreaks)
非完美越狱是设备重启后就消失的越狱。越狱后的设备每次重启后需要某种方式的重新越狱。通常意味着每次关机再重新开机时需要重新连接到电脑上。由于这个过程中需要USB线缆连接,这就是tethered的意思。这个词tethered也用于不需要USB连接,但需要访问特定网站或执行特定应用程序的重新越狱,
如果漏洞是某些提权代码,一个非完美越狱能只由单个漏洞组成。一个例子是limera1n的bootrom漏洞,被目前的大部分iOS4和iOS5越狱使用。另一个例子是iOS的USB内核驱动程序的漏洞。然而,目前没有类似的公开漏洞。
如果没有类似的漏洞可用,进入设备的初始入口可以通过一个应用程序的漏洞来获得很少的权限,如MobileSafari浏览器。然而,单独的这样一个漏洞不能认为是越狱,因为没有附加的内核漏洞,不能禁止所有的安全特性。 所以一个非完美越狱由一个提权代码漏洞组成,或一个非提权代码漏洞结合其他权限提升漏洞。
2、完美越狱(Untethered Jailbreaks)
完美越狱是利用一个设备重启后不会消失的持久漏洞来完成的,完美(untethered)因为设备每次重新启动后不需要重新越狱,所以它是更好的越狱方式。
由于完美越狱需要启动环节的非常特殊地方的漏洞,自然更难完成。过去由于在设备硬件里发现了非常强有力的漏洞,允许在设备的启动环节的早期进行破解,使完美越狱可能实现。 但这些漏洞现在已经消失了,而同样品质的漏洞没有出现。
由于以上原因,完美越狱通常由某种非完美越狱结合附加的允许在设备上保持的漏洞组成。利用开始的非完美越狱来在设备的根目录文件系统上安装附加漏洞。由于首先专有未签名代码必须执行,其次权限要提升以便能对内核打补丁,所以至少需要2个附加的漏洞。
三、漏洞类型(Exploit Type)
漏洞的存在位置影响你对设备的存取级别。一些允许低级别的硬件存取。另一些受限于沙盒内的许可权限。
1、Bootrom级别
从越狱者的角度看,Bootrom级别的漏洞是最有力的。bootrom在iPhone的硬件内部,它的漏洞不能通过软件更新推送来修复。相反,只能在下一代的硬件版本里修复。在存在limera1n漏洞的情况下,苹果没有发布iPad1或iPhone4的新产品,直到A5处理器的设备,iPad2和iPhone4S发布前,这个漏洞长期存在并为人所知。
Bootrom级别的漏洞不能修复,并且允许对整个启动环节的每个部分进行替换或打补丁(包括内核的启动参数),是最有力的漏洞。由于漏洞在启动环节发生的很早,而且漏洞Payload拥有对硬件的全部读取权限。 如它可以利用AES硬件引擎的GID密码来解密IMG3文件,而IMG3文件允许解密新的iOS更新。
2、iBoot级别
当iBoot里的漏洞达到能提供的特性时,几乎和bootrom里的漏洞一样有力。这些漏洞效果下降是由于iBoot没有固化入硬件,能通过简单的软件升级来修复。
除了这点,iBoot漏洞在启动环节任然很早,能提供给内核启动参数,对内核打补丁,或对硬件直接进行GID密码的AES操作。
3、Userland级别
用户层面级别的越狱是完全基于用户层面进程的漏洞的,像JBME3(http://jailbreakme.com)。这些进程如果是系统进程,就拥有超级用户root权限,如果是用户应用程序,就拥有稍低级别的如mobile用户的权限。不管哪种情况,越狱设备至少需要2个漏洞。第一个漏洞用来完成专有代码执行,第二个漏洞用来使内核的安全措施失效,进行权限提升。
在以前的iOS版本里,只要破解的进程以root超级用户权限运行,代码签名功能就会失效。现在,内核内存崩溃或执行内核代码需要禁止强制代码签名。
和bootrom、iBoot级别漏洞相比,用户层面的漏洞更弱一些。因为即使内核代码执行已经可能了,如GID密码的AES引擎的硬件特性依然不能读取。所以苹果公司对用户层面的漏洞更容易修补;并由于远程用户层面的漏洞能用于iPhone恶意软件的注入,所以苹果公司对这些漏洞经常很快进行修补。
四、用途
使用第三方软件:越狱的主要原因之一是可以扩展苹果App Store的有限的应用程序。苹果会检查即将发布在App Store中的应用程序是否匹配iOS开发者许可协议,然后再将其发布在App Store上。越狱后可以下载并安装苹果不允许出现在App Store上的应用程序。Cydia上的应用程序并不需要完全按照App Store上的指导方针和要求,其中不少是适用于iOS或其他应用程序的扩展和定制。用户安装这些应用程序,更多被称作“插件”(Tweaks) 。这些插件可以达到个性化的目的,定制用户界面和字体,为iOS设备添加新功能等(苹果公司近几年的iOS系统更新所添加的新功能有很多都是从越狱插件中借鉴的)。并且可以访问文件系统和安装命令行工具,使得在iOS设备上的开发工作更加容易。在允许第三方输入法的iOS8发布之前,很多中国的iOS用户也因为安装第三方的中文输入法而越狱iOS设备,因为它们比原生输入法更容易使用。在中国大陆,通过越狱获取的root权限被某些软件用于安装盗版软件,并造成了部分人存在越狱等于盗版的误解。
解除限制:越狱也可以非正式地解开运营商对iPhone的锁定,使得能够使用其它运营商提供的服务。基于软件的解锁,每一个不同的基带版本都对应了一个不同的解锁工具。
修复漏洞:2011年7月15日,越狱工具JailbreakMe 3.0利用了一个Safari浏览器在显示PDF文档时达到越狱的目的。这也就意味着iOS用户可能在不知不觉中丢失自己的个人信息或者被安装恶意软件。在苹果发布4.3.4更新修补该漏洞之前,越狱开发者comex就已经先行修补了这个漏洞。
其他:游戏本地内购、虚拟定位、修改设备id、快速替换铃声等等
五、安全问题
第一个被称作iKee的iPhone蠕虫出现在2009年11月初,是一个21岁的澳大利亚学生编出的;他告诉媒体说,他编写出的蠕虫病毒,旨在提升人们对安全问题的重视:越狱后允许用户使用SSH服务,这样会让用户离开默认的不安全状态 ;同一个月,F-Secure报告了新的蠕虫病毒在危害荷兰越狱的手机,同样,受影响的设备都已经安装了SSH,且都没有更改默认密码。
2011年7月15日,苹果封锁了一个被JailbreakMe 3.0利用的漏洞,德国的联邦信息安全办公室称,发现的JailbreakMe 3.0利用的PDF显示方面的漏洞也可以使得iOS用户的信息不知不觉中被盗或被下载恶意软件。
部分黑客可能会远程越狱iPhone,以安装恶意软件,以进行控制iPhone、iPad、iPod Touch,意大利网络安全公司Hacking Team向执法机构出售黑客软件并建议警方应当将iPhone越狱,以便在其上安装跟踪软件。
六、越狱比例
2012年9月,越狱比例高达42.4%;14年1月国内越狱比例从13年的30%下降至12.7%,主要是因为iOS 7出了9宫格输入法;还有就是”太极助手”风波,太极越狱强行给用户安装了太极助手。
当前越狱比例数据暂无,但是根据越狱qq群活跃度,雷锋源活跃度,威锋网论坛越狱板块文章发布总数,加上苹果开放越来越的接口(来电显示,第三方输入法),控制中心更高的自定义度,目前的越狱比例是相当低了
IOS8.4越狱的PP助手和太极越狱的撕逼大战!!!
七、支持越狱的系统版本
基本上都可以越狱,但是阿里潘多拉实验室未公布11.2越狱工具【阿里巴巴潘多拉,不放工具扯机8】
八、其他
对iOS漏洞感兴趣的同学可以在github上学习相关的资料:https://github.com/zhengmin1989/GreatiOSJailbreakMaterial