IT之家 6 月 19 日消息,安全公司 Paradigm Shift 昨日(6 月 18 日)發布博文,宣布在蘋果 A12 和 A13 芯片上發現 BootROM 漏洞,將其命名為 usbliter8。
![]()
在受影響機型方面,該漏洞影響搭載 A12 和 A13 芯片的設備,涵蓋 iPhone XS、iPhone XS Max、iPhone 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 控制器硬件 Bug 與特定固件配置缺陷,實現應用處理器啟動鏈的完全攻陷。
該控制器在接收 USB Setup 包時采用環形 DMA 緩沖機制:每接收一個 8 字節 Setup 包,DMA 地址指針遞增 8 字節;但接收第四個包時,控制器會嘗試將指針回退 24 字節,從而實現環形復位。
然而控制器也接受小于 8 字節的包(但始終按 4 字節對齊存儲),導致指針遞增量(實際寫入大小)與固定遞減量(24 字節)不匹配,形成 12 字節步進的緩沖欠載(buffer underflow)原語(primitive)。
在 A12 上 ds,dUSB 控制器的 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 權限執行。
盡管該漏洞無法通過軟件修復,但利用條件苛刻,需要物理接觸設備,且不會直接威脅安全隔區處理器。蘋果已收到通報,建議用戶升級至 A14 及以上芯片設備以確保安全。
IT之家附上參考地址
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.