编辑: yn灬不离不弃灬 | 2019-07-15 |
图表形式概述了本文要 探讨的各类技术.
5 系统安全性旨在确保每台 iOS 设备的所有核心组件都能为软件和硬件提供安全保护.这包括启动过 程、软件更新和 Secure Enclave.此架构是 iOS 安全体系的核心,并且不会影响设备的正常使用. iOS 设备的硬件和软件实现了紧密集成,可确保系统的每个组件均获得信任,并对系统进行整体验 证.从初始启动到 iOS 软件更新,再到第三方应用,每个步骤都经过分析和审查,确保硬件和软件 以最优化的方式协同工作,并以恰当的方式使用资源. 安全启动链 启动过程每个步骤包含的组件都经 Apple 加密签名以确保其完整性,只有在验证信任链后,每个 步骤才能继续.这些组件包括引导加载程序、内核、内核扩展项和基带固件. 打开 iOS 设备后,其应用程序处理器会立即执行只读内存(称为 Boot ROM)中的代码.这些不 可更改的代码(称为硬件的信任根)是在制造芯片时设好的,为隐式受信任代码.Boot ROM 代码 包含 Apple 根CA 公钥,该公钥用于验证底层引导加载程序 (LLB) 是否经过 Apple 签名,以决定 是否允许其加载.这是信任链中的第一步,信任链中的每个步骤都确保下一步骤获得 Apple 的签名. 当LLB 完成其任务后,它会验证并运行下一阶段的引导加载程序 iBoot,后者又会验证并运行 iOS 内核. 此安全启动链有助于确保底层的软件未被篡改,并只允许 iOS 运行在经过验证的 Apple 设备上. 对于可接入蜂窝移动网络的设备,基带子系统也使用其类似的安全启动过程,包括已签名的软件以 及由基带处理器验证的密钥. 对于搭载 A7 或更高版本 A 系列处理器的设备,Secure Enclave 协处理器还会使用安全启动过 程,用以确保其单独的软件经过 Apple 验证和签名. 如果该启动过程中的某个步骤无法加载或验证下一过程,启动过程会停止,设备屏幕会显示 连接 到iTunes .这就是所谓的恢复模式.如果 Boot ROM 无法加载或验证 LLB,它会进入 DFU (设备固件升级)模式.这两种情况下,设备都必须通过 USB 连接到 iTunes,并恢复为出厂默认 设置.有关手动进入恢复模式的更多信息,请参阅 support.apple.com/kb/HT1808?viewlocale=zh_CN. 系统软件授权 Apple 会定期发布软件更新以解决新出现的安全性问题,并提供全新功能;
此类更新会同时提供 给所有受支持的设备.用户会在设备上和 iTunes 中看到 iOS 更新通知,更新通过无线方式发送, 旨在鼓励用户尽快应用最新的安全性修正. 上述启动过程有助于确保设备上只能安装 Apple 签名的代码.为避免设备降级为缺少最新安全性 更新的早期版本,iOS 采用了名为 系统软件授权 的过程.如果可以将设备降级,攻击者一旦有 了设备的控制权,便会安装早期版本的 iOS,并利用旧版本中未修复的漏洞来进行破坏. 对于搭载 A7 或更高版本 A 系列处理器的设备,Secure Enclave 协处理器还会利用 系统软件 授权 来确保软件的完整性,并防止降级安装.请参阅下面的 Secure Enclave . iOS 软件更新可通过 iTunes 安装,也可采用无线 (OTA) 方式直接在设备上安装.如果通过 iTunes 安装更新,系统会下载并安装完整的 iOS 副本.如果采用 OTA 方式安装软件更新,系统将仅下 载完成更新所需的组件,而不是下载整个操作系统,这样可有效提升网络效率.此外,软件更新 还可以缓存在安装有 OS X Server 且运行缓存服务的本地网络服务器上,这样 iOS 设备无需访问 Apple 服务器,即可获取必要的更新数据. 系统安全性 进入设备固件升级 (DFU) 模式 进入 DFU 模式后恢复设备,可使设备恢复到 已知的正常状态,该状态下只存在未修改的 Apple 签名的代码.可通过以下方式手动进入 DFU 模式:首先,使用 USB 线缆将........