奖牌厂家
免费服务热线

Free service

hotline

010-00000000
奖牌厂家
热门搜索:
行业资讯
当前位置:首页 > 行业资讯

iOS61完美越狱幕后团队解密越狱全过程

发布时间:2020-01-14 21:41:11 阅读: 来源:奖牌厂家

iOS6.1完美越狱工具Evasi0n的下载量已经至少突破了80万次(保守估计),iOS6.1完美越狱官网访问量记录达到 170 万次,iOS6.1完美越狱工具发布前的几小时,其官网已经挂出了由Google 广告联盟提供投放的广告,iOS6.1完美越狱工具除了赚足眼球还赚了真金白银。那到底,iOS6.1完美越狱工具的幕后制作团队“evad3rs”是怎样完成这次的iOS6.1完美越狱的呢?

iOS6.1完美越狱工具:evasi0n

evad3rs由红雪团队的肌肉男(MuscleNerd)、绿毒团队(Chronic-Dev)的pimskeks、Planetbeing以及pod2g组成(以上皆为黑客在Twitter博客上的网名),被誉为是越狱梦之队。

这四人,就是iOS6.1完美越狱梦之队

关于iOS6.1完美越狱的难度,evad3rs 四人越狱团队之一的 David Wang 表示,整个越狱过程至少利用了 iOS 系统里的 5 个不同的、新的漏洞才完成。

iOS6.1完美越狱幕后四人团队

David Wang 向 Forbes 讲解了 Evasi0n 的整个越狱过程,整理如下:

Evasi0n 首先会运行 libimobiledevice,该程序使用了和苹果 iTunes 相同的协议,能代替 iTunes 与 iOS 通信。Evasi0n 利用了 iOS 移动备份系统里的一个漏洞,获得了几项原来无法被访问的设置的访问权限(设置设备时区的一个文件)。

Evasi0n 会在该时区文件中插入一个文件软链接(Symbolic Link),可以将操作系统里的访问请求转移到其他指定位置。这样,那条链接就转到了某个特定 socket不同程序间的限制的通信渠道,David Wang 把它比喻成 “ 直达莫斯科的热线 ”。Evasi0n 把各个程序与 Launch Daemon 通信的 socket 做了修改(Launch Daemon 缩写成 launchd,是 iOS 设备启动时首先加载的主程序,它可以启动需要 “root” 权限的其它应用。)这就是说,每当 iPhone 或 iPad 的移动备份系统启动,所有的程序都能获得该时区文件的访问权限,再加上 Symbolic Link,这些程序就能通过 launchd 打开了。

为了防止程序访问 launchd,iOS 还有一道防线:代码签名(Code-signing)。这一限制要求所有在 iOS 设备上运行的代码都得被苹果审核通过,并且附有对应的签名。相应的,Evasi0n 准备了一个貌似没有代码的新应用,当用户打开该应用的时候,它就会利用 Unix 的 “shebang” 把戏,调用另一个已签名的应用的代码。然后再调用前面提到的 launchd,再用 launchd 运行一条 “remount” 命令,该命令会把原来只读的根文件系统(root file system, RFS)变成可写。

RFS 可写以后,Evasi0n 接着修改 nf 文件修改了 launchd 的配置文件以后,Evasi0n 前面做的工作就可以保留下来了,这时越狱才是 “ 一劳永逸 ” 的,之后,哪怕设备重启了,用户也不用重新再越狱了。

不过,尽管经过了这么复杂的步骤,设备的限制在 “ 内核(kernel)” 层被解除之前,越狱都是未完成的。苹果 iOS 系统的内核层里还有一个 AMFID(Apple Mobile File Integrity Daemon,苹果移动文件完整性守护进程),AMFID 会检验代码签名,防止未经允许的程序运行。每当有程序运行的时候,Evasi0n 就会利用 launchd 为 AMFID 加载一个函数库,替换 AMFID 原来检查代码签名的函数,之后每回程序启动就会返回 “approved” 的结果了。David Wang 在此不愿透露解决 AMFID 的更具体的信息,“ 苹果他们自己能整明白的。”

为了防止黑客在系统内核层面篡改内存,iOS 还有一道防线:地址空间布局随机化(Address Space Layout Randomization, ASLR)。 当一个应用程序加载时,ASLR 就会将其基址随机设定,防止黑客篡改该段代码。但是 Evasi0n 还是通过 ARM 异常向量(ARM exception vector)成功定位了基址。当出现程序崩溃时,ARM 异常向量会报告崩溃究竟发生在内存的哪个位置,于是,Evasi0n 就模拟了一次崩溃,检查 ARM 异常向量给出的崩溃报告和崩溃位置,拿到足够的信息就可以把设备内存里的内核的其它部分了找出来了。

摆平 ASLR 以后,Evasi0n 就会利用 iOS 连接 USB 时的最后一个漏洞,把内核内存里的某个地址交给一个程序,“ 等着用户再把它返回 ”。Evasi0n 接着就可以改写内核的任意部分了。首先改写的是对内核代码修改的限制,“ 进入内核以后就再无安全可言了。”David Wang 表示,“ 我们就赢了。”

太平洋电脑网iOS6.1完美越狱教程

欢迎进入年度软件评选投票赢精美奖品

怎样网上预约挂号

海外就医公司

网上预约挂号收取服务费

海外就医费用

相关阅读