Apple 开源了用于 ARM CPU 的 iOS 内核

  • Sergio De Simone
  • 盖磊

2017 年 10 月 11 日

话题:开源移动AppleiOS语言 & 开发

Apple 在GitHub XNU-darwin 代码库中默默地公开了一些专用于 arm 和 arm64 的文件。虽然可能并非所有的开发人员对此都有兴趣,但是对于安全研究人员等人可能存在一些有意义的内容。

Darwin是内核的代码名,它为 iOS 和 macOS 提供了基础。Apple 最初是在 2000 年通过自己的opensource.com网站上开源的,但这种方式导致了一些混淆,包括是否 iOS 内核源代码是新发布的、发布是否是完全的等问题。因此,看上去以前的发布可能并不完全支持 arm64或 Apple 最新的 A11 SoC。但是,新发布的文件应该使编译 Darwin for ARM 成为可能。特别是我们看到在 README 文件中提及了 iOS,并且在 Makefile 中包括了 arm/arm64 选项。

虽然这些文件使构建 iOS 内核成为可能,但并不意味着所构建的 iOS 可以安装到真正的设备上,因为设备的bootrom只允许运行经签名认证的内核。即便如此,所构建 iOS 内核对于构建 iOS 模拟器还是有所帮助的。事实上,曾有工作意图创建基于 QEMU 的 iOS 模拟器,该工作看上去近期正在复苏据一名参与此项目的开发人员介绍:“专用于 iOS 的代码非常有用,尤其是对于加速排除软件缺陷,以及实现使开发人员可以回避基本图形帧缓存的虚拟图形硬件。”此外,专用于 iOS 的源代码的给出,将使安全研究人员可以发现新的软件缺陷和漏洞。这些缺陷和漏洞经常被揭露出来,并被利用于创建越狱 iOS的程序,越狱后的 iOS 就能下载并安装非签名认证应用、扩展和主题。

查看英文原文: Apple Open-sourced the iOS Kernel for ARM CPUs

开源移动AppleiOS语言 & 开发