苹果A12/A13芯片安全漏洞曝光 波及iPhone 11系列

2026-06-22阅读 0热度 0
其他

安全研究机构 Paradigm Shift 于 2025 年 6 月 18 日发布技术报告,公开了在苹果 A12 与 A13 芯片中发现的一个 BootROM 漏洞,编号命名为 usbliter8。该漏洞可直接绕过完整的安全启动链,具备极高的威胁等级。

哪些设备处于风险之中?该漏洞主要影响搭载 A12 和 A13 芯片的机型,涵盖 iPhone XS 系列、XR、iPhone 11 系列,以及配备 S4 与 S5 芯片的部分 iPad 和 Apple Watch。具体受影响设备清单如下:

  • 11-inch iPad Pro (第一代)

  • 11-inch iPad Pro (第二代)

  • 12.9-inch iPad Pro (第三代)

  • 12.9-inch iPad Pro (第四代)

  • Apple Watch SE (第一代)

  • Apple Watch Series 4

  • Apple Watch Series 5

  • iPad (第 9 代)

  • iPad (第 8 代)

  • iPad Air (第 3 代)

  • iPad mini (第 5 代)

  • iPhone 11

  • iPhone 11 Pro

  • iPhone 11 Pro Max

  • iPhone SE (第 2 代)

  • iPhone XR

  • iPhone XS

  • iPhone XS Max

漏洞根源在于 A12/A13 芯片集成的 DWC2 USB 控制器。该控制器本身存在硬件级逻辑缺陷,结合特定固件配置漏洞,使整个应用处理器启动链被攻破。具体机制如下。

控制器处理 USB Setup 包时采用环形 DMA(直接内存访问)缓冲机制。每收到一个 8 字节 Setup 包,DMA 地址指针递增 8 字节。当接收第四个包时,控制器尝试将指针回退 24 字节实现环形复位。然而控制器同时支持接收小于 8 字节的包(按 4 字节对齐存储),导致实际写入步进量(小于 8)与固定回退量(24 字节)不匹配,最终形成 12 字节步进的缓冲欠载原语。这相当于从环形缓冲区撕开了一个可被利用的缺口。

在 A12 上,USB 控制器 DMA 缓冲区分配在堆上,紧邻 USB 任务栈。攻击者利用该欠载原语覆盖栈上保存的 LR(链接寄存器)值。当调度器切换回 USB 任务时,可直接劫持 PC(程序计数器)指针,实现任意代码执行。

在 A13 上,苹果引入了 PAC(指针认证)和堆元数据校验,攻击难度显著提升。绕过这些防护需分多步推进,类似几何证明的链式操作:

  • 第一步,覆盖 DART(设备地址重映射表)相关数据结构,利用 DART 清理例程中的零写入原语清空全局 DART 指针,避免触发堆校验崩溃。

  • 随后,通过 MMIO 寄存器向某个值写入 0xF,覆盖全局 panic 计数器。这样当后续系统 panic 时会进入无限循环,而非直接重启,为后续攻击争取时间窗口。

  • 下一步,精准控制 DMA 写入时机,在 USB 任务实际运行时覆写其任务结构中的临界区深度字段,再触发一个带 IRQ 的 panic,使其落入该无限挂起循环。

  • 在无限循环期间持续执行 DMA 写入,覆盖 BSS 段中的 USB IRQ 中断处理函数指针,最终获得完全的 PC 控制权。

  • 获得代码执行权限后,攻击者利用 SecureROM 中极罕见的 EL1 模式切换点(通过执行 SVC 0 指令)。在 A12 上,借助预先搭建的 ROP 链,将 DMA 目标地址设为 boot trampoline 区域(该区域只读可执行但 DMA 可写入),写入 shellcode 后跳转到 EL1 权限执行。

尽管该漏洞危险性极高,但由于其属于 BootROM 级别硬件缺陷,无法通过软件更新修复。值得庆幸的是,利用条件极为苛刻:必须物理接触设备,且不直接威胁安全隔区处理器。苹果已收到漏洞通报。对用户最务实的建议是:若正犹豫是否升级设备,直接更换搭载 A14 或更新芯片的机型,这才是彻底消除风险的方案。

附上参考地址

  • Introducing usbliter8

免责声明

本网站新闻资讯均来自公开渠道,力求准确但不保证绝对无误,内容观点仅代表作者本人,与本站无关。若涉及侵权,请联系我们处理。本站保留对声明的修改权,最终解释权归本站所有。

相关阅读

更多
欢迎回来 登录或注册后,可保存提示词和历史记录
登录后可同步收藏、历史记录和常用模板
注册即表示同意服务条款与隐私政策