苹果A12/A13爆出“永久性”硬件漏洞,usbliter8攻击代码已公开,旧款iPhone恐难逃越狱风险。
安全研究公司Paradigm Shift近日曝光了苹果A12和A13芯片存在的一个全新BootROM(也称SecureROM)漏洞,并放出了名为“usbliter8”的概念验证攻击代码。BootROM是iPhone开机时最先运行的底层代码,因为直接烧录在芯片里,没法靠后续软件更新来修补,所以一旦出现安全问题,受影响的设备在整个生命周期内都会暴露在风险中。
上一个公开的同类型BootROM漏洞还是2019年的“checkm8”,当时覆盖了从iPhone 4S到iPhone X的多代设备。这次的usbliter8相当于把时间线往前推了一代,波及采用A12和A13芯片的产品,包括iPhone XS到iPhone 11系列在内的机型。usbliter8利用的是苹果芯片里USB控制器的一个硬件缺陷。iPhone在启动过程中通过USB接收数据时,控制器会用一个内存缓冲区来暂存传入的数据包。Paradigm Shift的研究人员发现,只要在启动阶段向设备发送特定序列、尺寸偏小的数据包,就能操控控制器内部的硬件指针,让它“往回走”,从而把数据写到本不该被访问的内存区域。研究团队强调,这更像是USB控制器硬件本身的设计问题,而不是苹果软件层面的漏洞。
从芯片代际来看,A11并不受影响,因为它用的USB驱动会在每次处理完数据包后手动重置指针,堵住了这条路。而A14及之后的芯片,苹果已经在BootROM层面把相关的内存保护机制配好了,也能避免这类攻击。A12和A13正好卡在中间这个“灰色地带”,没拿到上述防护,所以暴露在漏洞之下。在A12设备上,攻击者一旦掌握了利用方法,实现代码执行相对直接。但A13就复杂多了,这代芯片引入了Pointer Authentication Codes(PAC,指针认证码)这种安全特性,用来检测并阻断部分内存篡改行为。Paradigm Shift表示,要在A13上绕过PAC,需要一个很长的多阶段攻击链,经过好几步才能最终拿下处理器控制权。
成功拿到控制权后,usbliter8会在设备里植入一个重启后依然存活的自定义处理程序。这个程序能临时降低设备的安全策略等级,允许引导未经签名的软件,跳过原本严格的验证流程。作为入侵成功的标志,攻击还会往iPhone的USB序列号里写入一个“PWND”字符串,延续了checkm8和更早期越狱漏洞的惯例。Paradigm Shift指出,usbliter8本身并不会直接攻击Secure Enclave(安全隔区),但一旦BootROM层被攻破,理论上就为进一步针对安全隔区的高级攻击打开了更大的空间。该公司已经在公开前把相关发现报告给了苹果产品安全团队,并完成了协同披露。完整的技术分析和概念验证代码也已发布在Paradigm Shift官网ps.tc上,供安全研究社区进一步参考。





