逆向工程 iOS 18 非活动重启

iOS 18 推出了一个备受瞩目的新功能——“非活动重启”(Inactivity Reboot)。该功能的设计初衷是为了提升设备安全性,即当 iPhone 连续 72 小时未解锁时,设备将自动重启。

什么是“非活动重启”功能?

“非活动重启”功能的核心思想是,设备如果长时间处于非活动状态,将通过自动重启进一步保护用户数据。这是因为在设备重启后,iPhone 会进入“首次解锁前”(BFU,Before First Unlock)状态,用户数据此时处于完全加密状态,任何外部访问均无法解锁这些数据。只有用户输入密码完成首次解锁,设备才会进入“首次解锁后”(AFU,After First Unlock)状态,部分数据才可供系统和应用程序使用。

这一机制无疑提高了设备的整体安全性,尤其是在设备丢失或落入不当人员手中时,能有效保护用户隐私。

如何实现“非活动重启”?

根据安全研究员 Jiska Classen 的逆向工程研究,“非活动重启”功能主要依赖于 iPhone 的安全隔区处理器(SEP,Secure Enclave Processor)。SEP 是设备中的独立硬件模块,负责追踪设备的安全状态。

  1. 解锁时间追踪
    SEP 会记录设备上次解锁的时间,并在超过 72 小时未解锁的情况下,向系统内核模块 AppleSEPKeyStore 发出通知。
  2. 安全触发机制
    AppleSEPKeyStore 接收到通知后,会进一步告知用户空间的 SpringBoard 进程,由 SpringBoard 安全地终止所有用户空间进程,并触发设备重启。
  3. 防篡改设计
    如果设备在应触发重启时未重启,系统会强制触发内核恐慌(Kernel Panic),确保设备进入 BFU 状态。这一设计使得篡改重启逻辑变得极为困难。

谁会受益?

这一功能的推出,对不同群体产生了显著影响:

  • 用户:对于普通用户来说,即使设备丢失或长时间未使用,非活动重启功能依然能够有效保护其敏感信息,防止未经授权的访问。
  • 执法部门:执法人员需要在 72 小时内完成设备数据提取,否则设备将进入 BFU 状态,增加数据解锁难度。
  • 犯罪分子:对于试图盗窃数据的犯罪分子来说,这一功能无疑是个强有力的阻碍,因为他们在没有合法资源和手段的情况下,无法在 72 小时内完成解锁。

安全性的进一步提升

值得注意的是,“非活动重启”功能的触发与网络连接状态无关。无论设备是否处于飞行模式或断开网络连接,只要满足 72 小时未解锁的条件,设备都会自动重启。这种独立性大幅提升了安全可靠性。

iOS 18 的“非活动重启”功能是苹果在设备安全性上的一次重大进步。它通过重启机制保护用户数据免受未经授权的访问,进一步巩固了 iPhone 作为安全设备的声誉。这一功能不仅对普通用户意义重大,也对执法部门和犯罪分子提出了新的挑战。

详细技术细节

发表评论