ios越狱经典任务(读者来信iOS越狱是一个geek)
ios越狱经典任务(读者来信iOS越狱是一个geek)关于太极越狱的提权问题,我想应该是无心之过。在 Reddit 里研究了一下,简单来说就是苹果在 8.4 修改了权限系统,以至于旧版的越狱插件(Tweak)要以最高权限(root)运行时会出现问题,比如说 Cydia(按这样来说文件管理器 iFile 一类的应该也会出问题)。太极的人也许是为了赶工,写了一个非常糟糕的权限系统补丁,能让应用(App)也可以获得 root 的权限。Cydia 的作者 Saurik 一开始是想给太极重写一个补丁的,后来干脆就让太极的人把这补丁删掉,Cydia 的运行权限从 root 降到 mobile,就这样把这个问题解决了。太极的代码经过了 i0n1c 等人的初步分析,其实还没什么大问题,用新版来越狱最多就是不装那个 3K 助手就 OK 了。自 evasi0n 之后外国人放弃研发越狱,转国内后都捆绑盗版助手赚钱,的确从意义上就变成了一个「产品」了。国内两个助手忙
编者注:本文是一篇「读者来信」。一位没有署名的读者在「当信息不安全的时候应该更折腾还是不折腾?」一文评论区留下了自己越狱的故事和对当下越狱环境的看法,其中还包含对太极越狱工具后门事件的解读。我觉得他的角度看这个问题更加「完全极客养成」,所以整理出来分享给大家。
我是从 4 越狱开始的人了,一开始就是小白一只,对越狱这种东西的安全性表示非常的怀疑。
当年我做了很多工作,在国外的各种越狱论坛(mainly Reddit)和 Saurik 提供的越狱开发者资料和其他社区大佬们的开源 code 中刨了一堆东西(geek hobby...),发现 Apple 越狱界做的还是挺良心的。所有用来越狱的漏洞越狱后会自动打回补丁以防该漏洞被其他东西利用;越狱工具对苹果的安全系统只做必要程度的修改,这使得 app sandbox 等保护设备远离恶意 app 的防护设施依然能发挥作用,而且从 7 开始越狱工具移除了 afc 服务,越狱机器插电脑后再也不能从电脑端访问核心文件系统,不捆绑 ssh 服务令手机有密码时不在手机上确认电脑也不能远程访问设备,进一步保障了小白用户的安全;官方的插件商店(BigBoss等)不是单纯的 host platform,而是有着完善的审核要求和流程;像 angelxwind(Karen Tsai)和 Ryan Petrich 一类的老牌大神还会针对苹果爆出的重大漏洞提前写出系统补丁。
越狱工具 sn0wbreeze 界面整个越狱社区有着非常良好的互助氛围,而且「不涉及盗版」时安全性得到了保障,所以我才会开始去学习如何越狱。威锋大神兴盛的当年我也经历过,我自己也冒昧撰写过一些关于 5、6 系统越狱玩机的全指南,不过后来也淡出了(我想这个可能是我现在花这么多时间回复有关越狱安全性的话题的原因吧,不正确地黑越狱我还是受不了)。
国外大神淡出,国内团队接手
现在的越狱界不如当年是肯定的事情。
国外大神淡出后国内接手的动机主要是利益,越狱产业背后还牵涉到百度阿里这样的巨头的布局,动机是不纯了,责任心也不如以往。越狱团队互相争抢(不过太极事件的确是 PP 本身在恶意竞争。PP 以前其实就很有问题,他们修改过的用于盗版 app 的 app sync 插件曾经弄坏了很多人的设备,当年在威锋和 reddit 上都曾炸锅过)导致开发时以赶时间而不是测试完备为主要目的,致使每次的越狱发布都是抢头啖汤者惨当小白鼠,这应该是这次修补补丁不慎打破了 app sandbox 的主要导火索。
越狱工具 greenpois0n「越狱助手」、「手机助手」们为了自己访问方便鼓励小白用户安装 afc 服务(有些甚至怂恿小白开 ssh 通道)打开他们的核心文件访问权,但是又不告诉他们这样做的安全风险。大环境如此,不愿意花时间去学习的小白处在国内这种宣传环境内不推荐越狱是正确的事情(谁都不知道他们会听信什么人说给自己的设备乱装些什么东西)。
自 evasi0n 之后外国人放弃研发越狱,转国内后都捆绑盗版助手赚钱,的确从意义上就变成了一个「产品」了。国内两个助手忙着撕抢发布闹了一些乌龙,的确有些看不过。不过越狱社区一直有越狱工具一出安全专家涌入反汇编的传统,太极的事件只花了一天左右的事件就完全搞定了,而且更新补丁直接从 Cydia 的官方源推送,比上次的 Heartbleed 要靠谱的多了,所以还好吧。Coding 往往不能避免一出品就能做到 bug-free,所以我认为对问题迅速反应才是衡量团队能力的更重要的因素。
关于太极越狱工具漏洞事件的看法
关于太极越狱的提权问题,我想应该是无心之过。在 Reddit 里研究了一下,简单来说就是苹果在 8.4 修改了权限系统,以至于旧版的越狱插件(Tweak)要以最高权限(root)运行时会出现问题,比如说 Cydia(按这样来说文件管理器 iFile 一类的应该也会出问题)。太极的人也许是为了赶工,写了一个非常糟糕的权限系统补丁,能让应用(App)也可以获得 root 的权限。Cydia 的作者 Saurik 一开始是想给太极重写一个补丁的,后来干脆就让太极的人把这补丁删掉,Cydia 的运行权限从 root 降到 mobile,就这样把这个问题解决了。太极的代码经过了 i0n1c 等人的初步分析,其实还没什么大问题,用新版来越狱最多就是不装那个 3K 助手就 OK 了。
乌云公告微博后半段描述的的确是一切系统被获得最高权限后会产生的风险(即使是 root 后的安卓、管理员身份的 Windows 也可以这样描述)。我讨论的是太极的「动机」:他们是不是故意要留下「不应该获得最高权限的东西(也就是 App,他们的 3K 助手会供应盗版 App,因此加大了这个风险)也能获得最高权限」这样的漏洞来坑人。事实上他们是很不可能有这样的动机的。太极的 8.4 越狱在早期版本里是没有这样的漏洞的,问题完全是出现在最近为了解决 Cydia 不能以 root 身份运行而赶写的 setreuid 补丁。之所以需要这个补丁,是因为从 8.4 开始苹果改动了自家的权限系统(setreuid),导致越狱后插件也不能正常地获得 root 权限。不过这个补丁明显是赶写出来的,补丁发布后不一会儿乌云的路人甲和国外的一众越狱社区的安全专家们(包括德国著名安全专家 i0n1c)也都发现了。引用 Saurik 在 reddit 的话:「这个补丁写的实在是太糟糕了,他们应该要冷静下来再好好去打这个补丁。我已经跟他们联系了,会帮他们重写补丁。」不过 Saurik 最后没有选择重写,而是将 Cydia 权限降级,让太极删掉这个补丁,因此现在太极最新的越狱工具已经没有这个漏洞了。已经抢先越狱的人可以通过太极的源(网址自寻,极客不给评论加链接)更新越狱包来修正这个问题。因为删掉了补丁的缘故,8.4 起连越狱插件也不能以 root 运行,只能以普通的 mobile 身份运行,这个实际上是史无前例地提高了越狱的安全性的(就是可惜类似于防火墙 Firewall IP 等需要 root 的插件可能就不能用了,这个要看以后开发者能不能找到解决方案)。建议到 Reddit 的 Jailbreak 社区以及 @saurik 和 @i0n1c 的推特上了解一下前因后果。
越狱工具 evasi0n之所以会让人对太极的动机产生怀疑是因为乌云君用了「后门」(backdoor)这样的描述吧。首先我好像没有看见国外有人用「backdoor」来描述这个事件;其次「后门」只是一个形象描述了能容许外部非授权操作的漏洞的名词,并没有暗示了导致「后门」的人一定是有意设下这样的漏洞。
乌云平台的存在一直都是为了从第三方的角度来审核监督各种软件和平台的潜在安全隐患;和国外各种白帽竞赛和安全机构一样,他们优先于厂家公布漏洞貌似也不算是一个非常错误的事情。(虽然根据行业规则,他们应该先通知厂方,预留一个解决时间段后再公布问题所在。一开始就把 0day 漏洞的细节公之于众应该是有违行业道德的。)
Technical Details 自然有它们向行内人士 disclose 的地方,比如 WWJC 大会上越狱团队讲述越狱的技术细节等;如果在这点苛责太极,那其实就是在指责全世界几乎所有的 mobile software 厂商了:「喂你为什么不把源代码技术细节什么的贴到更新日志里出来让我们看看!」,如果你的 target customer 是 nerd 的话那还情有可原。
顺便一说,即使是苹果自己也经常有系统出现重大漏洞的地方,苹果的反应速度比太极和 Saurik、angelxwind 等越狱社区的老将要慢得多多了,比如最近北大团队联合国外团队发现苹果全系统有泄漏密码的严重漏洞,可以让沙盒恶意应用通过 App Store 商店审核,然后非法获取其他应用保存的敏感数据。人家早早的在 2014 年 10 月通报苹果,结果过了 6 个月苹果还一点反应都没有。与其抓住太极这个小辫子,不是更应该去指责苹果不懂做产品、不负责任、「没有向大众 disclose 所有技术细节」吗?
继续越狱还是回归花园围墙?
「越狱」和安卓的 root 一样一直以来就更多是一个 geek hobby 而不是什么严格意义上的大众产品。虽然国内有不少人为了贪图盗版有的没的都涌去越狱结果又不懂又不愿去折腾,但是国外对这种事情一直还是比较清楚的,「药不能乱吃,狱不能乱越」不是一直以来越狱社区的铁律吗?用户选择越狱本身已经是默认了他们同意承担一定风险来换取某种便利了(比如牺牲掉苹果的质保。当然你可以刷个机再去送修),出现这种 security hole 然后安装补丁也就不算是什么前所未有的大事件了(4 和 5 时代一样有)。
我猜无论如何也要贬低国内越狱团队的工作的动机在于对越狱开发从兴趣到商业的转变的提防,果然没错。的确,毕竟在一个苹果漏洞几十万美金开价的时代,越狱开发可能没有以前那样的纯粹了,不禁让人担心起来。越狱这种东西,愿意去了解、愿意承担风险、愿意花点业余时间折腾的会继续跟进,本身不符合这种条件的人会因为这个新闻而受到警示,回归到围墙花园的使用方式,这个从某种意义上说也是件好事。
太极 Apple Watch 越狱工具虽然越狱界兴盛度大不如前(一些著名的插件开发者都淡出了),也许会在不久的将来完结;不过至少在现在不少老人家们尚在,公德心也仍在;国外的大神们积极地去督促国内合作团队解决问题、重视安全性的精神我还是非常敬佩的。因为还有这些人在,我觉得对越狱有兴趣,有一些基本计算机知识,也会一些英文的人还是可以试玩一下越狱的。他们仍然可以在 reddit 之类的思想仍较为纯粹的地方看看越狱流程(现在越狱都是插电脑上去个密码就行,其实比以前简单很多了)和一些插件推荐,等半个来月直到新越狱工具没什么大新闻了再入坑,「越狱坚决不为盗版」,小白们「只用 Cydia 自带的源(Bigboss等)购买和下载插件」,不在自己的设备上装一堆奇奇怪怪的东西,其实还是可以放心自己的设备的安全性的。我仍然用「围墙花园」来描述苹果是因为苹果现在依然还在越狱社区中获得新功能的灵感,他们的局限仍然不能消除越狱的魅力(比如:iCleaner Pro - 关闭用不到的众多苹果服务以节约电量以及清理垃圾文件以腾出空间、Springtomize - 为苹果的介面和功能提供更加实用的「控制面板」、Airblue Sharing - 令iPhone的蓝牙能和其他手机互传文档、Activator - 用手势替代掉苹果那易坏的实体按键的操作,等)。
越狱可以理解为将门钥匙交给用户,相信用户自己能管好自己的家。对于一心用盗版的人,贪小便宜到处装盗版应用和插件引狼入室;又或者是毫无经验但又容易听信不良商家教唆的人,他们本身就有点像孩子不懂怎样管家不适合抓着自家设备的钥匙,这样的用户当然是强烈不推荐他们去碰越狱了。