Apple 安全性研究设备
Apple 安全性研究设备是一台接线特殊的 iPhone,可让安全研究员在 iOS 上执行研究,而无需破坏或停用 iPhone 的平台安全性功能。通过此设备,研究员可侧载需要平台对等权限来运行的内容,从而在与生产设备上的平台更接近的平台上执行研究。
为帮助确保用户设备不受安全性研究设备执行策略的影响,策略更改会在 iBoot 变体和启动内核集中实施。它们无法在用户硬件上启动。研究 iBoot 会检查新的接线状态,如果在出于非研究目的接线的硬件上运行,该 iBoot 会进入错误循环。
Cryptex 子系统可让研究员载入定制化信任缓存和包含对应内容的磁盘映像。为确保不允许此子系统在用户设备上执行,系统已实施多种深入防护措施:
如果检测到普通用户设备,
launchd
不会载入cryptexd
launchd 属性列表。如果检测到普通用户设备,
cryptexd
会中止运行。AppleImage4
不会在普通用户设备上发布用于验证研究 Cryptex 的反重放值。签名服务器会拒绝为不在明确允许列表上的设备定制 Cryptex 磁盘映像。
为尊重安全研究员的隐私,只有可执行内容或内核缓存的测量值(例如哈希值)以及安全性研究设备标识符会在定制化期间发送给 Apple。Apple 不会收到正在载入到设备上的 Cryptex 内容。
为避免恶意方试图将研究设备伪装成用户设备以欺骗目标方在日常生活中使用该设备,安全性研究设备有以下不同之处:
安全性研究设备只能在充电期间启动。充电可使用闪电线缆或兼容 Qi 的充电器。如果设备启动期间未在充电,会进入恢复模式。如果用户开始为设备充电并重新启动,设备会正常启动。只要 XNU 启动,设备无需充电即可继续运行。
iBoot 启动期间,文字“安全性研究设备”会显示在 Apple 标志下方。
XNU 内核以详细模式启动。
设备侧面蚀刻了一条信息:“Property of Apple.Confidential and Proprietary.Call +1 877 595 1125.”
以下是启动后显示的软件中实施的其他措施:
设备设置期间显示文字“安全性研究设备”。
锁定屏幕上和“设置” App 中显示文字“安全性研究设备”。
安全性研究设备为研究员提供用户设备不具备的以下功能。研究员可以:
通过与 Apple 操作系统组件相同权限级别的任意授权来将可执行代码侧载到设备上
启动时开始服务
重新启动后保留内容
使用
research.com.apple.license-to-operate
授权允许进程调试系统上的任何其他进程,包括系统进程。只有 AppleMobileFileIntegrity 内核扩展的
RESEARCH
变体遵守research.
命名空间;用户设备上签名验证期间任何带有此授权的进程都会被终止。定制和恢复自定义内核缓存