快播王欣出狱后,在朋友圈一票高喊“欠快播一个会员”的慷慨激昂声中,苹果出事了。
雷锋网消息,2月8日,据外媒 Motherboard 和 Redmond Pie 报道,有匿名用户在 GitHub 上泄露了苹果 iOS 9 某版本的 iBoot 源代码。
“人在家中坐,锅从天上来”说的就是苹果本果了。
事情事情曝光不久,苹果就与 GitHub 取得了联系,并要求该代码托管平台马上删除被公布的源代码。
GitHub:哦。
谁都知道 iBoot 是 iOS 系统的关键源码之一,它确保了操作系统的可信任启动,相当于是 Windows 电脑的 BIOS 系统。长期以来,尽管苹果部分开源了 macOS 和 iOS,但 iBoot 源码一直被其谨慎保密。
雷锋网了解到,在 iOS 安全保护白皮书中,将 iOS 启动过程简述为:
打开 iOS 设备后,其应用程序处理器会立即执行只读内存(称为 Boot ROM)中的代码。这些不可更改的代码(称为硬件的信任根)是在制造芯片时设好的,为隐式受信任代码。Boot ROM 代码包含 Apple 根 CA 公钥,该公钥用于验证底层引导加载程序 (LLB) 是否经过 Apple 签名,以决定是否允许其加载。这是信任链中的第一步,信任链中的每个步骤都确保下一步骤获得 Apple 的签名。当 LLB 完成其任务后,它会验证并运行下一阶段的引导加载程序 iBoot,后者又会验证并运 行 iOS 内核。
此安全启动链有助于确保底层的软件未被篡改,并只允许 iOS 运行在经过验证的 Apple 设备上。
简单说,当用户启动 iPhone 手机时,iBoot 是加载 iOS 系统的第一个进程。它加载并验证内核是否被苹果正确签名,然后执行。
正因为 iBoot 被用来载入 iOS 系统,一旦找到 iBoot 的漏洞就可以对任意 iOS 版本的系统进行刷机以及完美越狱。
而找漏必备是源码,黑客们可以通过源码找到更多 iBoot 漏洞。除此之外,iBoot 的源码还对 iOS 虚拟机的开发有巨大帮助。对普通用户则意味着 iPhone 越狱更容易。
几个月前,iBoot源码首次出现在 Reddit 社交平台上。所以即便 GitHub 已经撤除,互联网上仍存有许多副本,并通过私人文件共享网站(如Mega.nz等)在越狱爱好者之间共享,而包含泄露源代码副本的新版本库也会每隔几个小时在 GitHub 上弹出一次。
面对这种源码满天飞的现象苹果似乎并不担心,其在2月8日当天发表声明称:泄露到 GitHub 上的代码确实是 iBoot 源代码,但强调对 iPhone 安全没有影响。
为何?
苹果方面表示,苹果产品的安全性并不取决于源代码的保密性,产品内部还有许多硬件和软件保护层来保障用户的安全。再说,此次泄露的是3年前 iOS 9 的旧代码,而现在苹果已更新止 iOS 11,这两个系统版本的iBoot源码仅有小部分重合。意味着即使是给你这块拼图,也不一定能拼出现在的源码。
最后,据雷锋网了解,使用 iOS 9 系统的用户少之又少,相关数据显示,
65%的iOS设备运行iOS 11;
28%运行iOS 10;
7%的iOS设备运行iOS 9等老版操作系统。
“我们一直鼓励用户升级到最新系统,以便得到最新的安全保护。”潜台词是:这7%的用户,还倔强地不升级系统吗?(苹果都看不下去了)
吃瓜群众怎么看
消息一出,不少吃瓜群众炸了,除了担心iOS系统安全性,还有一波人表达了对 iOS 系统“开放”的渴求。
在微博上,有人发出“所以以后可以在 iPhone 上运行 Android 或其他 Linux,甚至 Windows 了?”、“难道以后国产手机也可以用 iOS 了?”的声音。
想太多。
外网某位技术人员称:iBoot源代码泄漏并非媒体所说的严重,几年前这一代码就有被传播出来,而直到今天才引起了人们的注意。
某位知乎网友也回答了这一问题:目前来看泄露的iOS 9代码,与最新的iOS11.2.5差了整整两年。实际上参考意义并不大,毕竟不是最新系统的。虽然部分代码会有重叠,但隔了两代之久,差距很大。而且我发现那份代码缺少文件,下载后无法直接编译。
所以嘛,并不会造成太严重的后果。最多就是让 iOS 11 的越狱早点到来。可是又有什么用呢?
参考来源:知乎、CSND、BleepingComputer.