公司

更多

iOS9.0什么时候可以越狱?iOS越狱原理分析

关键词:

发表于2016-10-06 18:38:16 0 0
目前还要等iOS9正式版发布后,国内外的越狱团队小组检查过完整版固件才能最终确定是否可以被越狱或者越狱大致需要多久时间。
            

  相信由于目前iOS8.4的验证已经关闭,不少用户都在iOS8.4.1或者iOS9的Beta版本中等待iOS9正式版的发布。关于iOS9越狱的信息也开始浮出水面。首先,我们可以确定的是,iOS9的越狱难度将会大过以往的任何一个iOS版本,而iOS9越狱或者说iOS9.X版本的越狱时间,目前还要等iOS9正式版发布后,国内外的越狱团队小组检查过完整版固件才能最终确定是否可以被越狱或者越狱大致需要多久时间。


  下面我们来看看,一款iOS系统在越狱时,通常都是怎样进行的。


  首先,越狱分为非完美越狱和完美越狱:


  非完美越狱(TetheredJailbreaks)


  非完美越狱是设备重启后就消失的越狱。越狱后的设备每次重启后需要某种方式的重新越狱。通常意味着每次关机再重新开机时需要重新连接到电脑上。由于这个过程中需要USB线缆连接,这就是tethered的意思。这个词tethered也用于不需要USB连接,但需要访问特定网站或执行特定应用程序的重新越狱,


  如果漏洞是某些提权代码,一个非完美越狱能只由单个漏洞组成。一个例子是limera1n的bootrom漏洞,被目前的大部分iOS4和iOS5越狱使用。另一个例子是iOS的USB内核驱动程序的漏洞。然而,目前没有类似的公开漏洞。


  如果没有类似的漏洞可用,进入设备的初始入口可以通过一个应用程序的漏洞来获得很少的权限,如MobileSafari浏览器。然而,单独的这样一个漏洞不能认为是越狱,因为没有附加的内核漏洞,不能禁止所有的安全特性。所以一个非完美越狱由一个提权代码漏洞组成,或一个非提权代码漏洞结合其他权限提升漏洞。


  完美越狱(UntetheredJailbreaks)


  完美越狱是利用一个设备重启后不会消失的持久漏洞来完成的,完美(untethered)因为设备每次重新启动后不需要重新越狱,所以它是更好的越狱方式。


  由于完美越狱需要启动环节的非常特殊地方的漏洞,自然更难完成。过去由于在设备硬件里发现了非常强有力的漏洞,允许在设备的启动环节的早期进行破解,使完美越狱可能实现。但这些漏洞现在已经消失了,而同样品质的漏洞没有出现。


  由于以上原因,完美越狱通常由某种非完美越狱结合附加的允许在设备上保持的漏洞组成。利用开始的非完美越狱来在设备的根目录文件系统上安装附加漏洞。由于首先专有未签名代码必须执行,其次权限要提升以便能对内核打补丁,所以至少需要2个附加的漏洞。


  在开始越狱之前,我们还需要确定此次越狱利用的漏洞类型:


  漏洞的存在位置影响你对设备的存取级别。一些允许低级别的硬件存取。另一些受限于沙盒内的许可权限。


  Bootrom级别


  从越狱者的角度看,Bootrom级别的漏洞是最有力的。bootrom在iPhone的硬件内部,它的漏洞不能通过软件更新推送来修复。相反,只能在下一代的硬件版本里修复。在存在limera1n漏洞的情况下,苹果没有发布iPad1或iPhone4的新产品,直到A5处理器的设备,iPad2和iPhone4S发布前,这个漏洞长期存在并为人所知。


  Bootrom级别的漏洞不能修复,并且允许对整个启动环节的每个部分进行替换或打补丁(包括内核的启动参数),是最有力的漏洞。由于漏洞在启动环节发生的很早,而且漏洞Payload拥有对硬件的全部读取权限。如它可以利用AES硬件引擎的GID密码来解密IMG3文件,而IMG3文件允许解密新的iOS更新。


  iBoot级别


  当iBoot里的漏洞达到能提供的特性时,几乎和bootrom里的漏洞一样有力。这些漏洞效果下降是由于iBoot没有固化入硬件,能通过简单的软件升级来修复。


  除了这点,iBoot漏洞在启动环节任然很早,能提供给内核启动参数,对内核打补丁,或对硬件直接进行GID密码的AES操作。


  Userland级别


  用户层面级别的越狱是完全基于用户层面进程的漏洞的,像JBME3(http://jailbreakme.com)。这些进程如果是系统进程,就拥有超级用户root权限,如果是用户应用程序,就拥有稍低级别的如mobile用户的权限。不管哪种情况,越狱设备至少需要2个漏洞。第一个漏洞用来完成专有代码执行,第二个漏洞用来使内核的安全措施失效,进行权限提升。


  在以前的iOS版本里,只要破解的进程以root超级用户权限运行,代码签名功能就会失效。现在,内核内存崩溃或执行内核代码需要禁止强制代码签名。


  和bootrom、iBoot级别漏洞相比,用户层面的漏洞更弱一些。因为即使内核代码执行已经可能了,如GID密码的AES引擎的硬件特性依然不能读取。所以苹果公司对用户层面的漏洞更容易修补;并由于远程用户层面的漏洞能用于iPhone恶意软件的注入,所以苹果公司对这些漏洞经常很快进行修补。


  当进行到这里时候,真正的越狱就开始了,一般情况下,越狱工作者按照下列的顺序开始一步一步完成越狱,当你初步了解了越狱的整个过程后,你将会对每个发布完美越狱的越狱工作者致以敬意:


  破解Bootrom(ExploitingtheBootrom)


  启动Ramdisk(BootingtheRamdisk)


  越狱文件系统(JailbreakingtheFilesystem)


  安装完美越狱破解(InstallingtheUntetheringExploit)


  安装AFC2服务(InstallingtheAFC2 Service)


  安装基本程序库(InstallingBaseUtilities)


  应用程序隐藏(ApplicationStashing)


  安装程序包(BundleInstallation)


  安装后过程(Post-InstallationProcess)


  执行内核Payloads并修改内核(ExecutingKernelPayloadsand Patches)


  修复内核状态(KernelStateReparation)


  权限提升(PrivilegeEscalation)


  修改内核(KernelPatching)


  修改沙盒(SandboxPatches)


  清空缓存(ClearingtheCaches)


  清理并返回(CleanReturn)


  由于工作本身以及越狱文献相对枯燥,以上仅展现整个越狱过程的大体步骤给大家,有兴趣的用户也可以自行查阅一些相关文献。


  好了,在知道iOS越狱是如何工作和原理后,我相信大哥除了更期待iOS9越狱外,还对神秘的越狱工作者产生了一定的兴趣和敬意。如果问我iOS9是否会越狱,我会说那是一定的。而时间?相信不会让各位等太久。


0条评论发表评论

热门文章

京ICP备11027698号 CopyRight 2010-2015 All Rights Reserved 

公司旗下网站:www.sendto.cn(公司网站)www.jiuye.net(就业数字图书馆)

合作单位:北京交通大学出版社