阿里安全潘多拉实验室龙磊:越狱 iOS 11.2,我选了一条最难走的路

简介: 苹果越狱不好搞,但他们居然两个月内针对三个最新版系统“越”了三次,这就很神奇了。

苹果越狱不好搞,但他们居然两个月内针对三个最新版系统“越”了三次,这就很神奇了。

“他们”就是阿里巴巴的潘多拉实验室。

潘多拉实验室于 2017 年成立,此前仅在阿里先知创新大会上露过一次面,其安全研究员用视频演示了安卓8.0 的 Root 提权和 iOS 11.1 的完美越狱。

12 月 13 日,阿里安全潘多拉实验室称,已经完美越狱苹果 iOS 11.2。一天后,在苹果发布了 iOS 11.2.1之后的数小时内,他们又演示了针对该版本的完美越狱。

“完美越狱”是有技术含金量的。“非完美越狱”后的手机一旦重启,你就得重新手动操作一遍越狱流程,有点像“一次性”越狱。而完美越狱可在重启手机后,还能自动执行越狱代码,在重启前完成越狱。

人前厉害、风光,人后的苦可能只有研究者自己知道。

潘多拉实验室 iOS 11.2 的越狱作者龙磊对宅客频道表示, 2015 年初步研究苹果越狱时,十分孤独。有意思的是,上一个对宅客频道表达这种忧思的是腾讯科恩越狱了 iOS 11.1. 1 系统的著名黑客陈良。“越狱期间我买了一个小酒壶,郁闷时候喝两口,偶尔还能激发别的思路。”陈良说。
5a408d4914f18

龙磊经历思路受阻,睡不着觉时,会喝两口意式浓缩,看看越狱和咖啡,到底哪一种更苦。

从“越狱生态”到“越狱苹果”

龙磊不是一开始就选择研究苹果越狱的。确切来说,一开始他想专职研究苹果系统越狱,但没敢。

“不敢”是有原因的。

2011 年,龙磊加入了腾讯手机卫士团队。当时,他在腾讯做的是越狱环境下的应用。。比如,苹果手机越狱后可以在非官方店下载第三方应用,他做的就是与第三方应用和生态相关的事情。2014 年 6 月,龙磊从腾讯离开时,中国还没有人成功实现苹果手机越狱。

在此之前,要去探索一座国人尚未涉猎过的高峰,不知道前方能否有所收获,可能需要积累勇气。不过,这并不妨碍他在工作之余自学越狱技术。

环境推了龙磊一把。

从友盟发布的数据看,越狱 iPhone 在手机总数中所占的比例从 2013 年第一季度时的 35% 下降到了当年年底时的 12% 。从 2013 年年底开始,越狱 iPhone 所占的比例稳定在了 10%-15% 之间。

“越狱的生态越来越萎缩,苹果生态研究变得没有那么有市场,感觉掉转方向的时机可能到了。”龙磊说。

2014 年 6 月,龙磊决定离开,去探寻可能可以追逐最初梦想的机会。

不料,6 月 24 日,中国有个叫做“盘古”的越狱团队与知名的第三方市场 PP 助手联合发布了国内首款 iOS7.1.1 完美越狱工具“盘古”。

龙磊看到这则新闻时,感到又惊喜又紧迫。

此时,他已经打算进入阿里巴巴的移动安全团队,准备探索 iOS 系统的不足——这个看上去离原来的兴趣更近一点了。但他依然没敢“正大光明”地宣告自己要越狱,还在积累技术。直到 2014 年底,龙磊觉得自己的技术“差不多了”,他所在的部门也很支持这件事。他觉得“越狱”这件事可以搞了。

选择研究“工具”还是“系统”

不过,事情没有那么顺利。

2015 年,龙磊陆续向苹果提交了一些漏洞,并带着自己关于构建通用漏洞挖掘工具的思路《Optimized fuzzing IOKIT in iOS》在世界著名黑客大会 Blackhat 2015 上进行了分享。台下,他还与苹果公司的工作人员聊了很多关于苹果系统机制的问题。

看上去顺风顺水。但是,一个念头闪了过来,龙磊突然觉得自己可能走岔了路。

龙认为,自己在通用的漏洞挖掘工具上投入了太多精力,却忽略了对苹果安全机制本身的研究。

2017年 12 月 18 日,龙磊和潘多拉实验室负责人宋杨坐在宅客频道面前时,是这样反思的——“对于苹果安全机制的研究恰恰是最重要的。”宋说,龙磊在以前阿里内部的经验分享上,还着重介绍了苹果越狱的两个技术流派:“气宗”和“剑宗”。

其实,这就是安全圈挖掘漏洞的两种主流的方式。第一种,开放通用的漏洞挖掘工具。第二种,完全不用工具,靠研究人员去做分析、看代码。

龙说,不能说哪种方法更好。如果面对是成熟度比较低的代码,使用漏洞挖掘的工具效率可能会更高,但如果面对的是 iOS 内核级的漏洞,它的代码过了很多年以及无数安全研究员的检验,代码发展已经变得非常稳定,这种情况下,通过深入分析和工具,效果会更好。

显然,龙磊认为,工具并不是自己朝苹果越狱前进最重要的东西,理解 iOS 系统,研究它的安全机制,才是验证苹果系统是否有“缺口”的关键所在。

这也是后来潘多拉实验室一直没有发布越狱工具的原因之一,宋杨认为,发布工具不是他们的目的,他们的初衷还是检测苹果系统是否“足够安全”,从攻击视角提升移动生态安全的水位。

挑战最难的模块,恰恰是最快的路

2016 年是龙磊最“痛苦”的一年。

及时调整方向后,原来的老搭档也来到了阿里,龙磊与他一起全身心地投入了苹果系统的深入研究与分析,并尝试用新思路来做这件事。

很快,他们完成了第一次越狱。但是,龙磊等人的喜悦并没有维持多久,苹果就进行了一次安全升级,这次的越狱马上失效了,龙磊等人研究出来的“越狱有效时间”只有 3 个月。“当时,我感受到了很强的挫败感,自己投入了很长时间研究的东西,苹果发布一个安全修补升级后,我们的努力一下子从100分降到了0分。”龙磊说。

随后的一年里,他们都在找漏洞—完成越狱—漏洞被苹果修补这三种状态间来回切换,龙磊等人与苹果玩着“猫捉老鼠”的游戏,一时间无法找到稳定的越狱方法,十分焦虑。

直到 2017 年,随着其研究的深入和经验的积累,龙磊等人才可以做到比较快速地应对苹果的安全升级,并且保持越狱的能力。

龙磊没有透露此次越 iOS 11.2 的手法。但宅客频道了解到, iOS 11.1 包含有存在缺陷的、可以被绕过的 SMAP 机制。苹果在 iOS 11.2 中修复了这个漏洞,迫使研究人员寻找其他绕过 SMAP 的方法。此次越狱 iOS 11.2 则利用了一个内存缓冲区溢出漏洞,触发内核错误。

龙磊告诉宅客频道,如果没有意外,他们走出来的“这条大道”在接下来苹果要发布的新版本中,大概率还能走得通。

他总结了一个经验:“以前出过安全问题的一些模块更有可能产生安全问题。但是业界对这些模块的关注度是一阵一阵的。比如,有人这一年关注这个模块,下一年关注另外一个模块,但我可能会选择回退好几年,去看大家曾经关注过的模块,那些看上去成熟度已经非常高的模块一旦找到漏洞,或者安全机制上的问题,就不那么容易被修补。”

不追热点,能回头反思,找成熟度最高的模块下手,挑战看上去最不可能的路,对龙磊而言,恰恰是走得最快的那条路。

本文转载自雷锋网,原标题为《“黑客”龙磊:越狱 iOS 11.2,我选了一条最难走的路》

目录
相关文章
|
5月前
|
存储 运维 安全
iOS加固原理与常见措施:保护移动应用程序安全的利器
iOS加固原理与常见措施:保护移动应用程序安全的利器
74 0
|
5月前
|
安全 前端开发 iOS开发
钉钉里微应用ios 底部安全区域的颜色怎么修改?
钉钉里微应用ios 底部安全区域的颜色怎么修改?
179 5
|
5月前
|
存储 运维 安全
iOS加固原理与常见措施:保护移动应用程序安全的利器
iOS加固原理与常见措施:保护移动应用程序安全的利器
128 0
|
5月前
|
Web App开发 小程序 Android开发
mPaaS小程序问题之接入iOS后阿里百川初始化报错如何解决
mPaaS小程序是阿里巴巴移动平台服务(mPaaS)推出的一种轻量级应用解决方案,旨在帮助开发者快速构建跨平台的小程序应用;本合集将聚焦mPaaS小程序的开发流程、技术架构和最佳实践,以及如何解决开发中遇到的问题,从而助力开发者高效打造和维护小程序应用。
104 1
|
11月前
|
运维 安全 数据安全/隐私保护
iOS加固原理与常见措施:保护移动应用程序安全的利器
随着移动应用的普及和用户对数据安全的关注度提高,iOS加固成为了很多开发者和企业的必备工具。那么,iOS加固是如何保护应用程序的安全性的呢? iOS加固是指对OS应用程序进行一系列的安全措施,以提高其抗逆向工程、反编译和破解的能力。下面将介绍iOS加固的原理和常见的加固措施。
iOS加固原理与常见措施:保护移动应用程序安全的利器
|
网络安全 iOS开发 开发者
frida环境配置、以及如何脱壳iOS包并安装到非越狱设备-制作iOS任意App分身
frida环境配置、以及如何脱壳iOS包并安装到非越狱设备-制作iOS任意App分身
1370 1
|
Linux 数据安全/隐私保护 Swift
iOS 逆向编程(三)实操越狱详细流程(二)
iOS 逆向编程(三)实操越狱详细流程(二)
121 0
|
9天前
|
IDE Android开发 iOS开发
探索Android与iOS开发的差异:平台选择对项目成功的影响
【9月更文挑战第27天】在移动应用开发的世界中,Android和iOS是两个主要的操作系统平台。每个系统都有其独特的开发环境、工具和用户群体。本文将深入探讨这两个平台的关键差异点,并分析这些差异如何影响应用的性能、用户体验和最终的市场表现。通过对比分析,我们将揭示选择正确的开发平台对于确保项目成功的重要作用。
|
18天前
|
开发框架 数据可视化 Java
iOS开发-SwiftUI简介
iOS开发-SwiftUI简介
|
1天前
|
搜索推荐 IDE API
打造个性化天气应用:iOS开发之旅
【9月更文挑战第35天】在这篇文章中,我们将一起踏上iOS开发的旅程,通过创建一个个性化的天气应用来探索Swift编程语言的魅力和iOS平台的强大功能。无论你是编程新手还是希望扩展你的技能集,这个项目都将为你提供实战经验,帮助你理解从构思到实现一个应用的全过程。让我们开始吧,构建你自己的天气应用,探索更多可能!
10 1
下一篇
无影云桌面